Upgrading to LINUX
Mandriva 2010.1
Compiled by: Waldis Jirgens. Latest update: 10th November, 2010.
My Mandriva 2008.0 system could not run some more up-to date software,
so I decided to upgrade to 2010.1. I could not use the live CD of
2010.1, since its display manager was incompatible with my S3 video
card (lock-up in X), so I decided to download the Mandriva 2010-Free
DVD and install it as an upgrade to my Mandriva 2008.0 system. Since
the latter had a rather unfortunate partitioning, I backed it up,
re-partitioned the HDD and did a fresh install.
2010.1 /etc/fstab
# Entry for /dev/sda1 :
UUID=46f8d925-b3b0-4adc-8ffb-9f059c330cee / ext3 acl,relatime 1 1
# Entry for /dev/sda2 :
UUID=35398b70-3ad4-483a-84b1-af40ed4edafd /usr ext3 acl,relatime 1 2
# Entry for /dev/sda3 :
UUID=808ff7bf-069f-4c16-91bf-fea79d4a0bcd swap swap defaults 0 0
# Entry for /dev/sda4:
UUID=189d33fa-eca9-4cc1-924b-3a7dc3b6fa33 /home ext3 acl,relatime 1 2
# Entry for /dev/sdb1
UUID=0F4D-1BD3 /media/win_c vfat umask=0022,users,sync,noauto,exec 0 0
# Entry for /dev/sdb5
UUID=D8B0-CFB4 /media/win_d vfat umask=0022,users,sync,noauto,exec 0 0
# Entry for /dev/sdb6
UUID=417eeec4-a8d0-4cd3-a359-4f1a5838ebc4 /media/dsl ext3 sync,relatime 1 2
# Entry for /dev/sdb7
UUID=6d9e94f1-476e-4cd6-96f1-3386ccd93e29 /media/dslusr ext3 sync,relatime 1 2
# Entry for /dev/sdb9
UUID=b79aef40-20ce-42a5-984c-57720966d8de /media/dslhome ext3 sync,relatime 1 2
/dev/sr0 /media/cdrom auto umask=0,users,iocharset=utf8,noauto,ro,exec 0 0
/dev/sr1 /media/dvd auto umask=0,users,iocharset=utf8,noauto,ro,exec 0 0
/dev/fd0 /media/floppy auto umask=0,users,iocharset=utf8,noauto,exec,flush 0 0
Or to see the sizes:
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 3.9G 323M 3.4G 9% /
/dev/sda7 27G 18G 8.4G 69% /home
/dev/sdb1 4.0G 3.5G 584M 86% /media/win_c
/dev/sdb5 16G 3.7G 12G 24% /media/win_d
/dev/sda6 5.7G 4.2G 1.2G 78% /usr
/dev/sdb6 3.8G 173M 3.5G 5% /media/dsl
/dev/sdb7 3.8G 1.6G 2.1G 43% /media/dslusr
/dev/sdb9 3.7G 566M 3.1G 16% /media/dslhome
During installation-upgrades were mounted:
/dev/sr1 4.4G 4.4G 0 100% /media/FREE-2010S-i586
/dev/sdc1 187G 58G 121G 33% /mnt/stick
Additional Software
As usual additional software can be installed via mcc or
directly from the net.
I installed: abiword, audacity, awesfx, bluefish, cups, dillo, fr,
gnumeric, links-graphic, mozplugger, nvu, rosegarden, rxvt, xawtv, xfe,
xosview, xsane, xsane-gimp, xmms, xpdf, xcalc, xkill, xlsclients, xpaint.
Foreign software installed:
RealPlayer, Seamonkey, pmidi, mtpaint, xv
Differences between 2008.0 and 2010.1 and challenges
- Naming of HDD has changed from hda to sda. This will require
changes to many of my back-up scripts.
- Format of /etc/fstab has changed.
- For inexplicable reasons the system did not include /dev/sdb6, 7
and 9 in fstab, so I put them in manually as:
UUID=7cffdd86-8456-44b8-b95e-b5518957c4cc /media/dsl ext3 rw 0 0
# Entry for /dev/sdb7 :
UUID=0bc4d3ee-2a7b-11da-8b07-ad26b9dd3abe /media/dslusr ext2 rw 0 0
# Entry for /dev/sdb9 :
UUID=0f0ccbb0-2a7b-11da-8aeb-3d3a1653f229 /media/dslhome ext2 rw 0 0
of course after creating the pertinent directories in /media
- LILO was not created with DSL boot facility in spite of seemingly
doing it at installation time.
Remedy:Add to /etc/lilo.conf the
following entry:
image=/media/dsl/boot/linux24
root=/dev/sdb6
label="DSL"
initrd=/media/dsl/boot/System.map
Then issue the command lilo. BUT when you want to boot into
DSL, you have to boot "DSL: root=/dev/hdb6" otherwise it
won't find the root partition and end with a "kernel panic". On the
other hand you cannot specify root=/dev/hdb6 in /etc/lilo.conf without
lilo chucking a fatal error...
- DSL works OK now, however I created the Mandriva /usr and /home partitions with ext4
file-systems, which DSL cannot handle.
- Printer Canon PIXMA i1300 did no longer work. Using the 2008.0
cups did NOT help.
Even trying to define an old Canon BJC255SP results in the error
message: CUPS server error There was an error during the CUPS
operation: 'client-error-not-possible'. There are also cryptic "device
URIs" for the old BJC 255SP: cnij_parallel:/dev/lp0 and for the PIXMA
iP1300: usb://Canon/iP1300?serial=26CB84. It was necessary to define the
printers manually.
This trouble was caused by not having required rpms installed.
Finally got the installation instructions for the Canon PIXMA ip1300
right! They are in:
http://software.canon-europe.com/files/soft24301/manual/guideip2200-2.60-1.tar.gz
Have the following symlinks set:
[waldis@localhost ~]$ ls -la /usr/lib/libpng.so.3
lrwxrwxrwx 1 root root 16 2010-09-09 09:45 /usr/lib/libpng.so.3 -> libpng.so.3.43.0*
[waldis@localhost ~]$ ls -la /usr/lib/libxml.so.1
lrwxrwxrwx 1 root root 16 2010-09-09 11:20 /usr/lib/libxml.so.1 -> libxml.so.1.8.17*
[waldis@localhost ~]$ ls -la /usr/lib/libpng.so.2
lrwxrwxrwx 1 root root 16 2010-08-12 17:18 /usr/lib/libpng.so.2 -> libpng.so.3.43.0*
[waldis@localhost ~]$ ls -la /usr/lib/libtiff.so.3
lrwxrwxrwx 1 root root 16 2010-09-09 09:45 /usr/lib/libtiff.so.3 -> libtiff.so.3.9.2*
Then:
[root@localhost linsoft]# rpm -i cnijfilter-common-2.60-1.i386.rpm
error: Failed dependencies:
libxml is needed by cnijfilter-common-2.60-1.i386
...installed libxml1 via mcc
[root@localhost linsoft]# rpm -i cnijfilter-common-2.60-1.i386.rpm
[root@localhost linsoft]# rpm -i cnijfilter-ip2200-2.60-1.i386.rpm
[root@localhost linsoft]# /etc/init.d/cups restart
Stopping CUPS printing system: [ OK ]
Starting CUPS printing system: [ OK ]
[root@localhost linsoft]# lpadmin -p IP2200 -m canonip2200.ppd -v usb://Canon/iP1300?serial=26CB84 -E
[root@localhost linsoft]# lpadmin -d IP2200
...after reboot the printer worked OK!
Note: This works only after post-install system upgrades have been done and when several non-default cups and dbus modules are installed. I don't know which they are, but have a look at: all the rpms on my system.
- xsane required root privileges when running at runlevel 3, with 5
it's OK again.
- This was one of the many vexing problems with default runlevel 3.
I use defaultrunlevel 5 now. The desired displaymanager has to be set
in file ~/.desktop as follows: DESKTOP=[icewm-session|wjiwm|fluxwm|GNOME|...] with the entries referring to window manager start-up commands in /usr/bin.
However the start-up scripts in ~/.xsession or ~/.xinitrc are not honored at X start.
For icewm as window manager I put the commands to start at session initialisation in an executable file ~/.icewm/startup.
But beware: if you call icewm with "exec icewm" it restores the default menu file in directory ~/.icewm at each start. If you call icewm with "exec icewm-session" it does that only whenever you had a different windowmanager in the last session. To stop this annoying behaviour I put my own menu file elsewhere and added a command to restore it in the ~/.icewm/startup script. Still for unknown reasons the system sometimes tampers with the menu file, which is quite disconcerting.
I use openbox, fluxbox and mwm (the openmotif version) as alternate window managers.
Script to switch windowmanagers
~/bin/switchwm:
#!/usr/bin/tclsh
set optio 0
while { $optio != 9 } {
puts "Switch to:"
puts "1 Openbox"
puts "2 Fluxbox"
puts "3 Icewm"
puts "4 Gnome"
puts "5 Mwm"
puts "9 Exit this script"
puts "Enter the option you want"
gets stdin optio
if { $optio == 1 } { exec echo "DESKTOP=wjiwm" > ~/.desktop }
if { $optio == 2 } { exec echo "DESKTOP=fluxwm" > ~/.desktop }
if { $optio == 3 } { exec echo "DESKTOP=icewm-session" > ~/.desktop }
if { $optio == 4 } { exec echo "DESKTOP=GNOME" > ~/.desktop }
if { $optio == 5 } { exec echo "DESKTOP=mwmwm" > ~/.desktop }
}
exit 0
/usr/bin/wjiwm:
#!/bin/bash
cd
rm -f .serv*
aumix-text -L &
xosview +net +cpu -load -disk -ints
-page -mem -swap -geometry 165x50+1099+876 &
tint2 &
idesk &
./appointk &
exec openbox
/usr/bin/fluxwm:
#!/bin/bash
cd
rm -f .serv*
aumix-text -L &
xosview +cpu +net -load -disk -ints
-page -mem -swap -geometry 110x25+1170+915 &
idesk &
./appointk &
exec fluxbox
/usr/bin/mwmwm:
#!/bin/bash
cd
rm -f .serv*
aumix-text -L &
xosview +cpu +net -load -disk -ints -page -mem -swap -geometry 103x25+921+720 &
idesk &
./appointk &
exec mwm
KDE as display manager is too sluggish for my PC, so it's not an option.
- The new mozplugger version again had an unsuitable
/etc/mozpluggerrc. Had to fix that up.
Replaced the Mandriva idesk (unexpected sluggishness) with idesk-0.7.5-8.fc11.i586.rpm.
Made dummy scripts in /usr/sbin for those that mcc claimed as "not
executable" - well they were not there!
Installed missing flash player and Java environment from the backup.
Installed vsftpd for local file transfer.
vsftpd is configured as follows:
etc/vsftpd/vsftpd.conf (comments removed):
anonymous_enable=NO
local_enable=YES
write_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
ftpd_banner="Welcome to Waldis FTP service."
chroot_list_file=/etc/vsftpd/chroot_list
pam_service_name=vsftpd
listen=YES
/etc/vsftpd/chroot_list contains login-ids of allowed users.
/etc/vsftpd/user_list contains login-ids of disallowed users.
/etc/vsftpd/ftpusers contains login-ids of disallowed users.
/etc/hosts.allow and /etc/hosts.deny are empty.
/etc/networks:
default 0.0.0.0
loopback 127.0.0.0
link-local 169.254.0.0
To enable local ftp "shorewall" has to be stopped. Doing it on the fly via mcc does not work, so:
cd /etc/rc.d/rc5.d
mv S54shorewall K90shorewall
Upgraded the following line in ~/.bash_profile:
PATH=$PATH:/usr/local/bin:/usr/X11R6.bin:$HOME/bin
Added the following to file /etc/rc.d/rc.local:
pmidi -l >/dev/null
sfxload /8MBGMSFX.SF2
touch /var/lock/subsys/local
exit 0
Threw out nvu - too unstable.
Updated /etc/modprobe.conf and /etc/modules to include TV card modules.
Swapped video cards between my AR PC and this one. The new video card is a NVIDIA GeForce FX series
and capable of 1280x960 resolution at colour depth 16. On the AR PC the
2009.0 system installed a new /etc/xorg.conf using the lethal "s3"
driver and eliminating my own "Modeline" specifications. It also
replaced in /etc/inittab the default runlevel 3 with 5! This required a
"failsafe" boot, after which I could put things right, but I could only get a maximum resolution of 800x600.
When I tried putting back my 2 modeline specs, they did not work with the vesa driver. When I then put the "s3" back in, xorg recognised that the card had a vesa BIOS and used it with 1024x768 resolution interlaced!
Solving the xawtv problem:
xawtv did not work: The problem seems to be associated with xorg.
With xorg-driver "nouveau" and resolution 1280x960 no picture or
sound regardless how one starts xawvt.
With driver "nv", resolution 1024x768 plus capture=off in .xawtv
there is sound on all channels and static pictures on the channel
window.
With driver "nv", resolution
1024x768 plus capture=overlay in .xawtv and starting it with xawtv
-noxv TEN
there is picture and sound on all channels.
With driver "nv", resolution 1280x960 plus capture=overlay in .xawtv
and starting it with xawtv TEN
there is picture on ONE channel (regardless which you choose) and NO
sound..
With driver "nv", resolution 1280x960 plus capture=overlay in .xawtv and starting it with xawtv -noxv TEN there is picture and sound on all channels
.[waldis@localhost ~]$ xawtv -noxv TEN
This is xawtv-3.95, running on Linux/i686 (2.6.33.5-desktop-2mnb)
xinerama 0: 1280x960+0+0
Warning: Missing charsets in String to FontSet conversion
Warning: Missing charsets in String to FontSet conversion
Warning: Missing charsets in String to FontSet conversion
So I switched to the "nv" driver in xorg.conf! But that's not all: Trying video-capture as with the 2008.0 version resulted in xawtv chucking a "segmentation fault". So I experimented with different parameters for the capture. The following worked:
- Movie Driver: Microsoft AVI (RIFF) format
- Audio Format: 8 bit mono
- Sample Rate: 44,100
- Video Format: 15 Bit TrueColor (LE)
- Frames/sec: 8.0
But wait... After I again had to swap back to the S3 video card, no TV picture reception was possible. All I got was:
[waldis@localhost ~]$ xawtv TEN
This is xawtv-3.95, running on Linux/i686 (2.6.33.7-desktop586-2mnb)
xinerama 0: 1024x768+0+0
WARNING: No DGA support available for this display.
WARNING: keeping fbuf pitch at: 2048, as no base addr was detected
WARNING: couldn't find framebuffer base address, try manual
configuration ("v4l-conf -a ")
v4l2: WARNING: framebuffer base address mismatch
v4l2: me=(nil) v4l=(nil)
X Error of failed request: BadMatch (invalid parameter attributes)
Major opcode of failed request: 72 (X_PutImage)
Serial number of failed request: 608
Current serial number in output stream: 609
The window appears for a split second then it's gone. Pestering the search engines with this error brought 2 good tips:
The first one suggested to try COLOR-DEPTH 24. With that one all is well, but I can only have a screen resolution of 800x600.
The second one suggested to use xawtv -nogl to start xawtv. This solved the problem!
Compatibility Issues
The user/group identifications on the Mandriva 2010.1 and the DSL system were not compatible, so I fixed them up in DSL as follows:
- log in as root.
- userdel waldis
- groupadd -g 500 waldis
- useradd -g 500 -u 500 waldis
- passwd waldis
Now the backup and restore scripts to /media/dslhome/waldis work without hiccups.
Later I replaced the DSL system with Debian 5.0.1 (See this supplement) which is much more powerful and required much less handstands to install. It also allows a fsck on the Mandriva file-systems.
Moving The Finished System
I transported the finished system to a new 250 GB disk (I did not use the ext4 format for the file-systems since Debian could not handle it). This process is described nicely in this Hard-Disk-Upgrade Mini-HowTo
In a nutshell:
- Allocate partitions on the new disk with fdisk. I did:
/dev/sdb1 3 GB /
/dev/sdb2 10 GB /usr
/dev/sdb3 2 GB swap
/dev/sdb4 Rest of the disk /home
- Make file-systems akin to: mksf.ext3 -c /dev/sdb1 followed by the others, except mkswap -c /dev/sdb3.
- Mount the partitions of the new disk.
- Copy old /home directory contents to the new /home partition - cp -Padfru /home/. /mnt/newhome.
- Copy old /usr directory contents to the new /usr partition
- Copy root directory / contents except /proc and /sys to the new root partition.
- Allocate directories proc sys usr and home in the new root partition
- Construct new fstab in the new system
- Add an entry to the old system /etc/lilo.conf to enable to boot into the new one.
- Boot into the new system with "single", mount /usr and /home, create /etc/lilo.conf and run lilo.
- Boot from the new disk and iron out anything untoward.
So far so good, however the new system took very long to boot and behaved otherwise strangely. So I decided to "upgrade" it using the "Mandriva Free" DVD. This took less than 30 mintes and since then the system is OK.
Return to my Linux page
Return to my home-page