Can't install 8.1 - Unable to create device node /dev/ad0s1b

Hi everyone.

I'm trying to install FreeBSD 8.1 i386 on an old computer (P4 @2.5GHz, no HT). It has one harddrive, ad0, and one optical drive, acd0. They are masters of different IDE channels or whatever the terminology is. I try to install over ftp using the bootonly cd, but I also tried dvd1. Both fails at the same step. The error I see is
Code:
Unable to create device node /dev/ad0s1b
which is my swap partition.

While googling, I found some mail conversation suggesting running # dd if=/dev/zero of=/dev/ad0 cb=64k count=1 or something similar, which worked in that case, but not in mine (I ran if from SystemRescueCD but with /dev/hda). It zeroed out the partition table, but FreeBSD still fails with the same error.

What's interesting is the I was able to install PC-BSD 8.1 without problems on the same drive. I was also able to install Ubuntu 10.10rc on it, and it used to host an XP install, so the drive seems fine.

It seems like install fails at the stage where it updates the slice (DOS partition) table, because it seems unaffected after a reboot. It doesn't even seem to update it if I press 'w' in the slice editor. If I check the debug output using Alt-F2, it says something like "the GEOM or GPART something is corrupt (recovery highly recommended)".

Any ideas?
 
Check if the harddisk has any bad sectors. If it has it will need to be replaced.
 
Looks to me like that hdd of yours was labeled. Check if this is true by booting into the "live" mode from the DVD and check for "pX" slices. Ex:[CMD="ls -la /dev/ad*"][/CMD] (be sure to replace "ad" with the actual naming convention that your OS uses).
If you see something like:
Code:
/dev/ad0p1
than you have labels and you need to clear them out before proceeding (since "sysinstall" is a bit prehistoric and doesn't know how to cope with labels).

I personally hope we will have something like "pc-sysinstall" in FreeBSD (even if without the whole GUI thinghy).
 
There was indeed ad0p1 after the PC-BSD install. I just tried to remove those and use the entire disk. That didn't work. Then I tried to zero out the first GB or so of the drive with dd, and the slice editor or whatever it's called didn't see them anymore, still failed with the same message.

SirDice: How do I check for bad sectors? I've only used the windows chkdsk tool for that, and I doubt I can use that without formatting the drive with NTFS or FAT32 first.
 
Hmm, after using Ubuntus drive tool to clear the disk, then format it with an MBR and one FreeBSD partition/slice, the FreeBSD installer was able to setup the filesystems at least. Seems to be working.

In other words, I'm guessing it was a problem with labels or whatever. Perhaps this should be fixed for 8.2 or 9.0?
 
The labels are fine. The problem comes from sysinstall not knowing how to cope with them. A simple solution would be:
Code:
glabel destroy /dev/ad0p1
glabel destroy /dev/ad0
This would return everything to "normal" (I'm using quotes since labels are by far something out-of-the-ordinary).
 
da1 said:
Looks to me like that hdd of yours was labeled. Check if this is true by booting into the "live" mode from the DVD and check for "pX" slices. Ex:[CMD="ls -la /dev/ad*"][/CMD] (be sure to replace "ad" with the actual naming convention that your OS uses).
If you see something like:
Code:
/dev/ad0p1
than you have labels and you need to clear them out before proceeding (since "sysinstall" is a bit prehistoric and doesn't know how to cope with labels).

It's not labels, it's a GUID Partition Table. sysinstall is old enough to not know how to handle these, and GPT is new enough that it hasn't been encountered much yet.
 
Back
Top