Step-by-step Slackware 10.0 to Slackware 11.0

Hi,

This upgrade is based loosely on the UPGRADE.TXT file provided by Pat, but it includes the steps you need specifically for a Linode. I tested it on a 4GB partition and it worked for me. It may not work for you – backup all your data before you start!

Start with a clean install of Slackware 10 and select a 2.6.20 or later kernel. The double disk space should help with that :-)

Next, download the slackware 11.0 Disk 1 ISO to '/'.

Mount the ISO file on your local file-system:

mount /slackware-11.0-install-d1.iso /mnt -t iso9660 -o ro,loop=/dev/loop0

Switch to single user mode. It will log you out, but just log in again as 'root'.

telinit 1

Now, upgrade your glib shared libraries:

upgradepkg /mnt/slackware/a/glibc-solibs-*.tgz

Upgrade your package tools:

upgradepkg /mnt/slackware/a/pkgtools-*.tgz

Upgrade (or install) sed:

upgradepkg --install-new /mnt/slackware/a/sed-*.tgz

Upgrade only what is already installed (you can add more packages later with slapt-get or whatever means you prefer):

upgradepkg  /mnt/slackware/*/*.tgz

Before you reboot, you need to make a couple of changes so that your new config files and start-up scripts will work. Execute the following script to make 'live' all the new config files and start-up scripts. The script will make backups of the old configs:

   #!/bin/sh
   cd /etc
   find . -name "*.new" | while read configfile ; do
     if [ ! "$configfile" = "./rc.d/rc.inet1.conf.new" \
       -a ! "$configfile" = "./group.new" \
       -a ! "$configfile" = "./passwd.new" \
       -a ! "$configfile" = "./shadow.new" ]; then
       cp -a $(echo $configfile | rev | cut -f 2- -d . | rev) \
         $(echo $configfile | rev | cut -f 2- -d . | rev).bak 2> /dev/null
       mv $configfile $(echo $configfile | rev | cut -f 2- -d . | rev)
     fi
   done

Now before you reboot, you have to enable your LISH console. Copy the original inittab and securetty files back, so that you can login using the LISH console if anythnig goes wrong:

cp /etc/securetty.bak /etc/securetty
cp /etc/inittab.bak /etc/inittab

– At this point you can reboot your Linode from the web management console and it should boot up as a Slackware 11.0 box.

To tie up a few loose ends, you can disable the udev daemon (since the Linode kernels have all the devices in anyway):

chmod -x /etc/rc.d/rc.udev

I also hard-configured my IP address and gateway information so that I don't have to run the dhcp client daemon. Saves a small amount of RAM.

–deckert

Edit: fixed typo in the upgrade packages step

2 Replies

Hey this worked for me too!!

[email protected]:~# cat /etc/slackware-version

Slackware 11.0.0

[email protected]:~# uname -a

Linux host 2.6.21.1-linode32 #1 Sun May 6 17:50:51 EDT 2007 i686 i686 i386 GNU/Linux

[email protected]:~#

Reply

Please enter an answer
Tips:

You can mention users to notify them: @username

You can use Markdown to format your question. For more examples see the Markdown Cheatsheet.

> I’m a blockquote.

I’m a blockquote.

[I'm a link] (https://www.google.com)

I'm a link

**I am bold** I am bold

*I am italicized* I am italicized

Community Code of Conduct