July 12, 2005

Upgrading a PC to Fedora Core 4 with no boot media

dave

09:22 PM

So, there you are. You've just downloaded the latest version of Fedora, but you've run out of blank CDs or DVDs to burn it to to install it. How do you upgrade it from the CD/DVD images on disk?

  1. Mount the .iso file somewhere
  2. [~]# mount -o loop -t iso9660 FC4-i386-DVD.iso /tmp/fedora/

  3. Dig out the boot-cd image from the mounted image
  4. [~]# cd /tmp/fedora/images/

  5. Mount the boot-cd image
  6. [images]# mount -t iso9660 -o loop boot.iso /tmp/bootdisk/

  7. Copy the files in ./isolinux to /boot/FC4
  8. [images]# cp -rv /tmp/bootdisk/isolinux/* /boot/FC4/

    `/tmp/bootdisk/isolinux/boot.cat' -> `/boot/FC4/boot.cat'

    `/tmp/bootdisk/isolinux/boot.msg' -> `/boot/FC4/boot.msg'

    `/tmp/bootdisk/isolinux/general.msg' -> `/boot/FC4/general.msg'

    `/tmp/bootdisk/isolinux/initrd.img' -> `/boot/FC4/initrd.img'

    `/tmp/bootdisk/isolinux/isolinux.bin' -> `/boot/FC4/isolinux.bin'

    `/tmp/bootdisk/isolinux/isolinux.cfg' -> `/boot/FC4/isolinux.cfg'

    `/tmp/bootdisk/isolinux/memtest' -> `/boot/FC4/memtest'

    `/tmp/bootdisk/isolinux/options.msg' -> `/boot/FC4/options.msg'

    `/tmp/bootdisk/isolinux/param.msg' -> `/boot/FC4/param.msg'

    `/tmp/bootdisk/isolinux/rescue.msg' -> `/boot/FC4/rescue.msg'

    `/tmp/bootdisk/isolinux/snake.msg' -> `/boot/FC4/snake.msg'

    `/tmp/bootdisk/isolinux/splash.lss' -> `/boot/FC4/splash.lss'

    `/tmp/bootdisk/isolinux/TRANS.TBL' -> `/boot/FC4/TRANS.TBL'

    `/tmp/bootdisk/isolinux/vmlinuz' -> `/boot/FC4/vmlinuz'

  9. Make an entry in /etc/grub.conf
  10. [images]# tail -7 /etc/grub.conf

    title Fedora Core 4 Install

    root (hd0,0)

    kernel /FC4/vmlinuz root=/FC4 ramdisk_size=8192

    initrd /FC4/initrd.img

    title FC4 Memtest

    root (hd0,0)

    kernel memtest

    (The memtest entry isn't necessary, but it's useful to check your RAM

  11. Reboot
  12. [~]# reboot

    The system is going down for reboot now!

  13. Select Fedora Core 4 Install
  14. Select a HDD install and supply the path to your images
  15. [~]# df /storage

    Filesystem 1K-blocks Used Available Use% Mounted on

    /dev/hdd1 153837436 93153688 52869204 64% /storage

    This tells me that I need to tell the installer to use /dev/hdd1 as the install device. The path will be /storage/redhat/fedora/core/4/i386/iso/

  16. Answer a few questions
  17. Modern Linux installs are very easy. No more questions about your monitors horizontal sync frequencies or stuff like that.

  18. Drink beer and wait
  19. Ah! Beer! That cool refreshing drink! (Or you could practise your Klingon grammar...)

  20. Enjoy upgraded workstation!
  21. [~]# cat /etc/redhat-release

    Fedora Core release 4 (Stentz)

This method can also be used for network installs, where step 8 involves sharing out the mounted disk image via NFS, and pointing the install over the network to that nfs mount. e.g., select NFS install, give the name of the server, and the exported directory. This may actually be faster than a CD install for older machines, depending on the network cards they have.

June 17, 2005

Updated to Fedora Core 4

dave

06:58 PM

I've just updated my primary workstation/server from Fedora Core 3 to Fedora Core 4 (FC4). It wasn't very painful as these things go, but there were a few points which I want to make about it.

Before that, however, FC4 was released on June 13, 2005. As of just now, four days later, there were 50+ updates for it. That seems like an awful lot for such a short period of time.The main part of the upgrade is easy enough: insert your DVD (or CD) when rebooting and select upgrade. Answer some easy questions, and wait. It took about an hour for my install from the hard drive. (I'll show how to upgrade from the hard drive in a later post.)

Problems with the upgrade:

  • POSTGRESQL - you have to export the database from the previous version, upgrade, nuke the database directories, initialize the database, restore all the users and then (finally) and restore the database from your exported backups. This is quite a large pain in the arse, really. I don't see why PostGreSQL can't include a simple upgrade agent in the package. It's not like they're trying to squeeze it into a tiny space.
  • XORG - Once again my dual screen config is nerfed and I have to go and download the xorg source (53 MB!) and recompile in the driver library from Matrox. In fairness to RedHat, this is a problem caused by old hardware and a manufacturer who won't release the G400 driver. It may even be worth upgrading my hardware over - an Nvidia 5200 or 6200 would easily provide enough dual-screen oomph for anything I'm likely to do with Linux.

Other things:

  • Open Office 1.9.104 is nice looking, but very slow. It still has that irritating habit of stopping for a minute when you start typing in numbers (In Calc, anyway). At least they haven't changed the default paste behaviour like they used to every release.
  • The new style: PLASTIK is awful. Even Bluecurve was better than this. Don't follow Redmond for aesthetics, guys. As for the rest of the built-in styles, Holy 1999 Batman! I've got a choice of Windows NT 4.0, Sun CDE v1.purple and six styles (out of twelve) for those with severe visual difficulties. Like blindness.
  • The sound Just Works out of the box. I don't know what JWZ was whinging about.

October 17, 2004

Problems with 2.6.8.1 kernels

dave

12:46 PM

TrackBack

For some reason, I can't get 2.6.8.1 kernels to work. Not just kernels I've compiled myself, but also the stock redhat kernels in the Fedora Core 2 updates. The problem lies in the networking. Everything else seems ok, but I can't get the network card to work. I keep getting the message below:

Oct 17 10:45:01 gizmo kernel: eth0: RealTek RTL8139 at 0xe000, 00:e0:4c:10:20:ce, IRQ 11
Oct 17 10:45:01 gizmo kernel: ip_tables: (C) 2000-2002 Netfilter core team
Oct 17 10:45:01 gizmo kernel: eth0: link up, 100Mbps, full-duplex, lpa 0x45E1
Oct 17 10:44:57 gizmo sysctl: net.ipv4.conf.default.rp_filter = 1
Oct 17 10:44:57 gizmo sysctl: kernel.sysrq = 0
Oct 17 10:44:57 gizmo sysctl: kernel.core_uses_pid = 1
Oct 17 10:44:57 gizmo sysctl: kernel.shmmax = 134217728
Oct 17 10:44:57 gizmo sysctl: net.ipv4.tcp_ecn = 0
Oct 17 10:44:57 gizmo network: Setting network parameters:  succeeded
Oct 17 10:44:57 gizmo network: Bringing up loopback interface:  succeeded
Oct 17 10:45:09 gizmo kernel: NETDEV WATCHDOG: eth0: transmit timed out
Oct 17 10:45:09 gizmo kernel: eth0: link up, 100Mbps, full-duplex, lpa 0x45E1
...
Oct 17 10:45:33 gizmo kernel: NETDEV WATCHDOG: eth0: transmit timed out
Oct 17 10:45:33 gizmo kernel: eth0: link up, 100Mbps, full-duplex, lpa 0x45E1
Oct 17 10:45:45 gizmo kernel: NETDEV WATCHDOG: eth0: transmit timed out
Oct 17 10:45:45 gizmo kernel: eth0: link up, 100Mbps, full-duplex, lpa 0x45E1

It's not ECN, which is explicitly switched off in by sysctl.conf Anyone got any ideas?

UPDATE: I've sorted it out. Set noapic on the command line in /etc/grub.conf, and set 'Plug and Play OS' to 'No' in the BIOS.