Arch LinuxArch Linux is a Linux distribution based on a rolling release model. This primarily means that there is only ever one version of Arch, being the "latest version", and whenever new releases of software packages are made by the developer they are then added to the Arch repositories after a small delay. This means that you can always get the latest version of any available software package on Arch, and that there is never a big upgrade or reinstall hassle with Arch every 6 or 12 months. Instead you regularly do a system upgrade which pulls down the latest versions of all installed packages from the repository, so that your system is always "up to date".
Another thing about Arch is that it is highly customisable to whatever combination of Linux software applications you want. It does this by only installing a "bare bones" set of Linux packages that gives you a text only console with a "login" prompt (classic old school UNIX). From this you then install all the extra packages you want, to arrive at your customised Linux, just as you want it. No bloat from other applications you never wanted in the first place. This means installing and configuring Arch is more than just booting from a Live CD and clicking on "Install". But Arch has an excellent Wiki including an "Installation Guide" that explains everything.
Arch has its own package manager (pacman) that handles all of the downloading, resolving dependencies and installation of the packages. So if a package is available you can just install it and everything it needs through one simple command.
I'm assuming for this article that you already have Arch Linux installed, and know enough about how to install it. And that you have installed Arch plus X Windows plus a full Desktop Environment (e.g. Gnome or Xfce) plus a Display Manager to handle the initial user login (e.g. GDM). If you don't use a full blown Desktop Environment then you will need the equivalent combination of Window Manager, Application Menu, etc., which is also possible in Arch.
Extra packagesOracle 11g requires "
gcc" which is in the "
base-devel" package along with other development tools, such as "
make". Install this, plus some other needed packages:
The last one - "libstdc++5" - is needed because the make files provided with Oracle make explicit reference to this. Since Oracle 11g was originally compiled on the current at that time version of Red Hat Linux the standard C library has moved on to version 6, but Oracle still wants something called version 5 when installing.pacman -S base-devel elfutils libaio unixodbc sysstat pdksh icu gdb pacman -S libstdc++5
Symbolic linksOracle expects some commands to exist in the
/bindirectory when they are now in the
/usr/bindirectory as standard. You can work around this by creating symbolic links from one location to the other for these files:
Other symbolic links are mentioned by other people for other Linux distributions, but for Arch these are the only ones I needed to make - other links already existed for some other files. Alsoln -s /usr/bin/basename /bin/basename ln -s /usr/bin/tr /bin/tr ln -s /usr/lib/libgcc_s.so.1 /lib/libgcc_s.so.1
bashis the default shell on Arch, which is the same as on Red Hat.
Normal Oracle Pre-Installation
- Configure the Linux kernel and other settings as stated in the Oracle installation instructions. This includes:
- Settings in
- Settings in
- Adding a line to
/etc/pam.d/loginif not already present
- Settings in
- Create the groups needed (oinstall and dba), and the "oracle" user account.
- Create the directories where the software will be installed e.g. /apps/oracle and /apps/oraInventory
- I create a ".profile" file for the "oracle" user and set
ORACLE_HOMEbased on the installation directories. Also set
ORACLE_SID, and add
Install Oracle 11gGet the Oracle 11g software distribution - downloadable from oracle.com - and unzip the files to another directory. Run the installer and make your choices from the screens it presents - I normally go for "Install Software Only" and "Single Instance".
You will get the following issues when running the Installer:
prerequisite checks will fail. This is because Oracle uses "rpm" to
find out what packages are installed, and Arch does not use "rpm", so
Oracle thinks everything is missing.
- Providing you have installed the packages listed earlier, simply click on the "Ignore All" check box on the top right of the screen, then click "Next".
- Click "Yes" on the pop-up dialog box that warns you about ignoring prerequisites. Then click "Install" as normal on the final screen
- You will get a failure message during installation about "target agent nmhs", from the make file "sysman/lib/ins_emagent.mk".
- This only affects the Enterprise Manager Agent, which is generally not used, and so can be ignored.
- It is due to a change in how "gcc" scans libraries to find referenced symbols in a program.
- If you really want this Agent, a workaround is possible by editing the makefile - just Google it to find a solution.
- Assuming you don't want this Agent, just click "Continue" to ignore it can carry on.
From here you can go on and create a database using the Database Configuration Assistant (dbca) or the "
CREATE DATABASE" SQL statement, whichever you are more familiar with.