Dave Cater

 Linux Mandrake

 
Home Page
Career outline
Java
Linux
Linux references
Linux Mandrake
Linux Red Hat
Linux kernel upgrade
Linux Internet connection
Linux firewall
Linux projects
Security
Perl
System management
Testing
Musical notes
After a couple of years happily using Red Hat Linux 5.2, I was planning to install JBuilder 3 supplied with the April 2000 edition of PC Plus magazine. Early investigations showed my C library was too old to work with the Java Development Kit (JDK 1.2) required by JBuilder 3.

I had been considering an upgrade anyway as a starting point for investigating Linux system security.

Fortunately the same issue of PC Plus included a distribution of Mandrake 7.0. This is a version of Linux quite similar to Red Hat but with a graphical install program noted for its ease of use. This installation would upgrade my Linux kernel from 2.2.2 to 2.2.14 at a stroke and proved to be just what was required.

In subsequent years I subscribed to Linux Format magazine, and via their CD distributions upgraded to Mandrake 9.0, 9.1 and 9.2. Much of what follows remains true for these distributions, with the exception that automation of the installation has improved to the point where some of the manual steps mentioned below are now invisible to the user.

These notes only mention key points - for general Linux installation issues, such as disc partitioning and dual boot strategies, you may want to refer to the earlier notes on Linux Red Hat.

Installation

Eventually I sat down one wet weekend to upgrade my Pentium II system. Incidentally, by "upgrade" I really mean re-installation. More recent versions of Mandrake allow both upgrade (applying new versions of files in place of old versions, and merging changes into existing files) and re-installation (removal and installation of all files, excepting possibly user file systems).

The installation guide starts with "Index.htm" in the "docs" directory of the CD. I opened this and printed the whole thing out. Generally there were no fundamental differences from the Red Hat installation I had done last year (although many details were different).

The first excitement was that the graphical "rawrite" program designed to make an install floppy did not work. This was mentioned in an article on the PC Plus Linux forum (753.4) on September 14th, 2000. I found an undocumented DOS version of "rawrite" which I ran successfully using my old Red Hat installation notes.

The developers forum mentioned other problems which I fell for. First I tried to install from the install floppy without the Mandrake 7.0 CD in the CD drive. Do not do this. It will confuse the life out of you. The install program claims it can't work out which CD drivers to use. Once I had started again with the CD in place, all went much more smoothly.

One thing I found confusing was that I was not asked whether I wanted to install the Linux boot loader (LILO) in the Master Boot Record (start of drive) or the first sector of the Linux boot partition. I was keen not to overwrite the MBR as I have PowerQuest BootMagic installed there for dual Windows/Linux booting. This is also highlighted in the PC Plus article accompanying the CD. The installation guide was not very clear in section 7 on how LILO would be installed. All appeared well as BootMagic still seemed to work installation. However I found that BootMagic would no longer boot Linux. I had to rerun the Boot Magic configuration in Windows to re-establish the Linux boot capability. I concluded this was just a side effect of reformatting the Linux partition during the installation.

X Window System Configuration

During configuration of the display for the X Window System, the option offered (1024x768 HF SVGA) resulted in the screen being shifted to the right. I asked for an improved alternative and it correctly came up with 1024x768 Non-Interlaced SVGA which I had been using with my previous X server. So no problems there. Subsequently I logged in as root and ran startx, when I found I had a problem with the operation of quite a lot of utilities failing to start correctly. Error messages were appearing all over the show saying that libz.so.1 could not be found. I soon found that this was a symlink in /usr/lib to a file that did not exist called libz.so.1.1.3. I also discovered a file libzgcj.so.0.0.0 which I guessed was created by someone called gcj around the time of the release. I copied this to libz.so.1.1.3 and miraculously everything I then tried worked. I found it quite scary to think the release can have gone out with files missing but I have no other good explanation.

Environment configuration

I decided I wanted to change the default colour scheme which was using an almost unreadable bright green to display executable files with the "ls" command. I discovered that my $HOME/.bashrc file sources global definitions from /etc/bashrc, which in turn sources /etc/profile, which then sources the files in /etc/profile.d to set up "ls" to be an alias. During this process, "dircolors" is used to set the LS_COLORS environment variable from the contents of /etc/DIR_COLORS. I copied this file to $HOME/.dir_colors and changed green to red, then added the following line to the end of $HOME/.bashrc:

				eval `dircolors $HOME/.dir_colors`
This does the job. Finally I changed cyan to magenta settings in .dir_colors, and made the same changes for the root user.

Printer configuration

I was impressed that installation automatically detected my printer (HP 895CXi) and no further setup was required. More recent versions of Mandrake automatically install and configure the CUPS printing system to use this printer.

Mounting Windows file systems

I found that a mount point had been automatically created in /mnt/DOS_hda1 for the Windows file system and all files were present and correct. So no more playing with mount commands as before.

Recent versions of Mandrake create /mnt/windows instead, but the net effect is the same.

Internet connection

Unlike Red Hat 5.2, which required me to install a PPP connection program, Mandrake 7.0 has PPP connection utilities already installed.

I was able to type in the telephone number of my ISP and the IP addresses of their DNS servers during installation. You do not need to set a domain name at all (defaults to localdomain which is fine). Subsequently I had no problems making Internet connections, just starting "kppp" under the Internet folder, and selecting "Connect". Starting "Netscape" in the same folder, or from the shell, worked fine. I checked out of curiosity that the expected configuration files are still used by Mandrake (/etc/resolv.conf).

A few weeks later I even worked out how to enable my modem sound (I just like the whirring noises during dialing and connection establishment). Do this using "kppp", under options Setup->Modem.

Configuration of the loopback device

I felt the need to start the Apache Web server, and test that I could connect to it locally using "http://localhost.localdomain". This did not work at first, even though an alias for localhost.localdomain was set up as follows in /etc/hosts:

127.0.0.1       localhost.localdomain localhost
A suggestion from an Internet search was to ensure that
ifconfig lo
successfully displays a loopback device. It did. Still no joy. Finally the PPP documentation in /usr/doc/ppp-2.3.10/README.linux sorted the problem out. I had never run the command
ifconfig lo 127.0.0.1
which is needed to configure the network address of the loopback device. Now I could connect to the Apache Web server locally and browse the documentaion.

Internet clients

I came across notes on the KDE based news reader and email client in the January 2001 edition of PC Plus magazine.

The KDE mail client can be started from the Internet folder on the start menu (its just called Mail client). As explained in the article, it automatically runs through configuration the first time it is started. I used the following settings in the Identity and Network tabs, and had no difficulties in sending and receiving mail:
Identity
Name David Cater
Email dave@dcater.fsnet.co.uk
Reply to dave@dcater.fsnet.co.uk
Network
Server smtp.freeserve.net
Port 25 (the default)
Name dave
Login dcater.fsnet.co.uk
Password ********
Host pop.freeserve.net
Port 110 (the default)

Internet file transfer

The following ftp commands can be used to download HTML files to my Web site at Global Internet (you need a username and password of course!):

ftp
open www.users.globalnet.co.uk
cd public_html
cd dave
mput *.html
quit

By the time of Mandrake 9.2 I graduated to a graphical ftp client called KBear.

More recently I found that you need to disable the "Extended passive" mode in Advanced options in KBear.

Web development

In recent times I have used Mozilla composer for editing web pages.

Refer to my Perl pages for more details of other tools used for web development.

Package upgrades

Around the second half of 2002, I found some software (OpenOffice, see below) that was unable to run due to a dependency on a newer version of the glibc RPM package. A quick search at Google showed there was a version available for my now aging Mandrake version 7.0, which I downloaded. I found the RPM documentation in the Mandrake User Guide installed in /usr/doc/mandrake/en/index.html, browsable via Netscape. I also refered to the rpm(8) manual page, The following commands showed the RPM version:

rpm -q glibc
rpm -qf /lib/libc-2.1.2.so

As if I hadn't already guessed, version 2.1.2 of glibc was installed and I needed version 2.1.3 or higher.

First I produced a listing of all the files in the glibc package, as well as those in the new package file, using these commands, and saved the output just in case something went wrong later:

rpm -ql glibc
rpm -qpl glibc-2.1.3-18.2mdk.i586.rpm

I diffed the output files, compensating for the change of version numbers from 2.1.2 to 2.1.3:

sed -e 's/2.1.2/2.1.3/' glibc-2.1.2-list | diff glibc-2.1.3-list - | more
Most of the differences were the result of new locales and timezones.

Next I wondered whether the new package had any depencencies on any other new packages. By default, these should be reported and installation should be prevented. I tested the installation and no problems were reported when using the command:

rpm -U --test glibc-2.1.3-18.2mdk.i586.rpm
then I went ahead and upgraded the glibc package using the command:
rpm -U  glibc-2.1.3-18.2mdk.i586.rpm

After installation I noticed that running Perl gave connected with setting the locale - presumably from calling setlocale(3). I was using the following innocuous-looking environment settings:

LANG=en
LANGUAGE=en
LC_ALL=en_GB
A review of the documentation for the package, in /usr/doc/glibc-2.1.3, showed the likely problem was failure to install the locale database. The following command installed the locale and fixed all those problems:
localedef -i en_GB  -f ISO-8859-1 en_GB

OpenOffice

I installed OpenOffice from the July 2002 issue of Linux Format. I was spurred into action by an article in the November 2002 issue.

I wanted all users to be able to access the packages, so I attempted the "network" install (mentioned in the article). Actually that's not quite true - I tried a single user installation first then changed my mind after working out what I really wanted. This involved trying the OpenOffice de-installation process which worked fine.

I found I had to download installation instructions from the OpenOffice site as the article was not detailed enough for my liking.

Having installed the packages once, the setup stage for each user is quick as it installs only "local" settings in the user's home directory, together with an "soffice" executable that's just a symlink to the network version.

Unlike other office packages, OpenOffice starts a single process which can invoke word processor, spreadsheet, and so on, as you require them. By default, a word processor appears. If you do want to start with a spreadsheet, say, a command line argument can be used. OpenOffice also supplies the following wrapper scripts to supply the appropriate argument for each application:
Wrapper Application
swriter Word processor
scalc Spreadsheet
simpress Slide presentation
sdraw Graphics
smath Formula editor
sweb Web page editor