[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

My personal step-by-step Hurd 0.3 upgrade list.


I wanted to post the steps I was able to use and the problems I
ran into in doing an upgrade of my Hurd system to libc0.3/Hurd 0.3.
The upgrade guide Marcus Brinkmann wrote, available at:


covers the procedure very well, but I ran into a couple of hitches.
Here's what I did, using the "Easy" method (the '#' marks are the
root command prompt):

- Install Hurd from J1 CDs.  I also installed initial.sh, developer.sh,
  and gui.sh, and got the network connection running
- Download these .deb packages via ftp:
    - hurd_20020804-1_hurd-i386.deb
    - libc0.3_2.2.5-13_hurd-i386.deb
    - dpkg_1.10.4_hurd-i386.deb
    - dselect_1.10.4_hurd-i386.deb
    - libgcc1_3.2-0pre3_hurd-i386.deb
    - libstdc++5_3.2-0pre3_hurd-i386.deb
    - gcc-3.2-base_3.2-0pre3_hurd-i386.deb
  from ftp://alpha.gnu.org/gnu/hurd/debian/ or the pools on
- Boot into Hurd 0.2 system which is not to be upgraded, a.k.a. the
  rescue system, using your GRUB boot floppy, etc.
- Mount the 0.2 system to be upgraded on (for example) /mnt/disk0 via
  # settrans -a /mnt/disk0 /hurd/ext2fs /dev/hd?s?
- Copy the packages to a temp dir on the system to be upgraded via
  # cp package-name_version_hurd-i386.deb /mnt/disk0/root/tmp
- # cd /mnt/disk0
- Follow the directions for running ./dpkg-hurd --remove and
  ./dpkg-hurd --unpack from Marcus's upgrade guide.
- # cd (to get back to /root)
- # settrans -fg /mnt/disk0
- Reboot into the newly upgraded system using your GRUB boot floppy,
  etc.  (See Booting: below for more info on booting the upgraded
- # dpkg --configure hurd libc0.3 dpkg
- dpkg fails to configure due to dependency on dselect, not installed.
  hurd fails to configure due to /var/backups/infodir.bak missing
- # dpkg -i dselect_1.10.4_hurd-i386.deb, but this fails due to
  unmet dependencies on libgcc1 and libstdc++5
- # dpkg -i libgcc1_3.2-0pre3_hurd-i386.deb
- # dpkg -i libstdc++5_3.2-0pre3_hurd-i386.deb, but this fails due
  to unmet dependency on gcc-3.2-base
- # dpkg -i gcc-3.2-base_3.2-0pre3_hurd-i386.deb
- # dpkg -i libstdc++5_3.2-0pre3_hurd-i386.deb
- # dpkg -i dselect_1.10.4_hurd-i386.deb
- # dpkg --configure dpkg (after this command is executed, the file
  /var/backups/infodir.bak still doesn't exist)
- # dpkg --configure hurd (but this works fine now *shrug*)

And then your upgrade is done.  You can reboot into your newly upgraded
system following the info in -->


The (temporary) boot problem Marcus mentions in his doc affected me.
The workaround I used was to edit the menu.lst file on my GRUB boot
floppy and add a new entry.  For this entry, I simply used the commands
given by Neal Walfield in his excellent Installation Guide at:


in section 5.  You need the "root" command, the "kernel" command, and
the two "module" commands.  Change the command beginning
"module /hurd/ext2fs.static" to read
"module /hurd/ext2fs.static --readonly" followed by all the rest of
the arguments and the root filesystem will fsck and mount properly on
boot-up (at least it did for me :^)

At this point, the "ping" binary is missing because /bin/ping
was a part of the old hurd package that was removed during the
upgrade.  I downloaded the inetutils_20010817_hurd-i386.deb package,
ran "dpkg-deb -x" to extract the files, then copied the ping
binary to /usr/bin/ping.  This repaired the ping problem for me.

Please e-mail me at csigler@vt.edu if you have any questions.
Thanks to Marcus and all the other developers for such an
excellent and fun system :^)

					Clemmitt Sigler

Reply to: