Dizwell Informatics

News from Nowhere

Atlas – Installing Oracle on Manjaro 15+

1.0 Introduction

Manjaro is based on Arch Linux and has been my principle desktop’s distro in the recent past -meaning that I like it a lot!

If you don’t know much about Arch, join the club: it’s a very tricky distro to get to grips with, so a lot of people don’t bother! Arch starts off as utterly minimal as you can get onto which you bolt whatever applications and graphical front-ends you like. Getting it right can be awkward, but also very rewarding: you get a minimalistic distro (meaning “fast”) with just the mix of software you need or want and no unnecessary extras. But as I say, it’s hard to do right -so various developers have cooked up pre-mixed distros using Arch as their underlying O/S, but with choices of GUIs and packages made for you. Manjaro is one such ‘pre-mixed’ Arch-based distro. In theory, you get all the minimalism and efficiency of Arch without the pain of having to build it up yourself from near-scratch.

Note the subtle distinction between Manjaro and, say, Antergos. Both are based on Arch, but whilst Antergos uses the Arch repositories for its software installs, Manjaro has its own. It can certainly use the Arch repositories, too, but that’s kind of frowned upon. The point is, though, that where Antergos is Arch-with-a-pretty-face, Manjaro is pretty much a fork of Arch, plus a pretty face. It’s a subtle difference, but it’s been known to provoke Internet war between the two factions at times!

The trouble with anything related to Arch is that Arch itself is a rolling release distro: it is continually updated in little increments rather than, say, producing a ‘big version increment’ once or twice a year. This makes it difficult to know whether the version of Arch (or Manjaro, which inherits the same issue) you are using is exactly the same one as I’m using. In theory, therefore, it’s possible for me to declare “this works on Manjaro” …and for you to experience a complete failure to replicate my results.

So, Arch-based distros are a bit awkward to pin down, and the best I can say is that this article describes running Atlas and Oracle on a Manjaro distro which was delivered as an ISO called “manjaro-gnome-16.10-stable-x86_64.iso”. Hopefully, if your ISO is dated later than October 2016, things should still work… but let me know if not!

As is the case with all Atlas/Oracle installs, of course, your Manjaro server needs to be built with at least 5GB RAM and at least a 40GB hard disk.

Please watch the generic Atlas videos here, here and here to get an idea of how Atlas works in general. The generic documentation (including those videos) are available from this page. Below are Manjaro-specific notes.

2.0 What’s been tested?

  • manjaro-gnome-15.10
  • manjaro-kde-16.10.3
  • manjaro-xfce-17.0-alpha2-unstable

3.0 Operating System media

Get your Manjaro downloads from here.

Manjaro is released in three main streams: Stable, Community and Testing. Stable means “KDE or Xfce”. Community means “pick a desktop environment of your choice”. And Testing means “good luck”.

I’d suggest you stick to Stable or Community versions myself, though Atlas has worked well enough on an XFCE alpha2 testing release.

4.0 Operating System installation issues

I had major dramas getting Manjaro to boot reliably in any of the normal virtualized environments I use (VirtualBox and VMware); it worked quite reliably in KVM (Boxes), though; so why one virtualization tool would have no problem where the other two do, I’ve no idea. But in general, be warned: you may have to persevere to get a platform that works for you. In particular, I found I could reliably install Oracle on Manjaro Gnome -but that the virtual machine would just hang at the next VM reboot/reset.

You boot into a live environment, into which a large pop-up menu intrudes:

Click on the ‘use Calamares’ item there to launch the utility that will step you through the process of installing the O/S to your hard disk. For the most part, you can just keep clicking through the Calamares wizard: the defaults are usually fine.

When it comes to disk partitioning, however, no default option is provided:

So, you need to select one of the options here, and the ‘erase disk’ option is the simplest to use. Select that and your hard disk will be turned into a giant root partition (and a smaller swap one), as you can see -and that will suit Atlas fine.

If you decide to go the ‘manual partitioning’ path instead, remember that Atlas wants a ‘big root’ to work with (at least 25GB of free space on the ‘/’ mount point, basically).

You also need to take a non-default option right at the end of the installation process:

That ‘Restart now’ check box doesn’t tick itself. If you just clicked [Quit] without checking it on, you’d close the installer and be left back in the original live environment. So you want to click ‘Restart now’ before clicking [Quit]… and then you’ll be rebooting back into a proper on-disk operating system.

No wmctrl or xdotool utilities are installed by default, so once your OS has come back from its post-install reboot, you need to add that to Manjaro before you try running Atlas:

sudo pacman -S wmctrl

…will do the job.

5.0 Running Atlas

Assuming you’ve installed wmctrl (or xdotool) and have a big enough screen resolution, therefore, acquiring and running Atlas is straightfoward:

wget http://bit.do/dizatlas -O atlas.sh
chmod +x atlas.sh
./atlas.sh

When you first run Atlas in this way, you may find it a bit hard to read:

The default terminal settings are a bit grey and low-contrast for my tastes. So I make sure to alter the terminal colour settings and switch to something more high-contrast instead:

Once you get Atlas into a readable state, there are no further surprises: just follow the prompts and fill in things where required.

 

6.0 Installing Oracle 12c

Oracle installation on Manjaro starts by warning you that your system is not adequate for the task:

The warning is a red herring, however, and it is perfectly OK to click [Yes] at this point to continue the installation regardless. You mostly just keep clicking [Next] after that!

There are no errors during the installer’s linking phase to worry about. Because of that, it means that Atlas will have created a post-install script you can choose to run once the installation and database creation processes have finished:

Here you see me travelling to my Documents directory (since I am my own oracle user). In there, I find a file called atlas-postinstall.sh. Note that it is already executable: Atlas created it that way. Therefore, all I have to do is type:

./atlas-postinstall.sh

…to run it. Note that there’s no output when I do that. The command simply returns you, almost immediately, to the next line of the terminal prompt. Nevertheless, the script has done what it needed to do (basically, to adjust the way that the command-line SQL*Plus tool displays its results). You’ll be able to see the consequences of that shortly.

You don’t have to run this post-install script if you prefer not to: it’s just a convenience that Atlas provides which you are free to not make use of, if that’s how you like your SQL*Plus output!

Once the installation has completed, and if you’ve chosen to run the post-install script, you’d be able to invoke SQL*Plus and get some proof that the database is working fine, as follows:

Incidentally: the command you see me typing in that last screenshot (“sql“) is the alias of the full command (“sqlplus / as sysdba“). It is aliased with a reference to the rlwrap utility, so that if you get into SQL*Plus using it, you can press the up and down cursor keys to retrieve and scroll through any previous SQL commands you’ve typed. If you ever need the vanilla, un-rlwrapped version of SQL*Plus, however, then just type the full-blown sqlplus  command and you’ll be running the exact same program as before but without a command line history.

And to complete the family photo-album, here’s Oracle 12c running on the 17.0 Alpha 2 unstable version of Manjaro, using the Xfce desktop environment:

And here I’m using the stable 16.10 KDE version: