Troubles I had, and how I made a new sparclinux root disk image for my hard disk, by hand. Phil Brown, Nov 10th, 1996 phil@bolthole.com 1. The only working root disk I could find, was on floppy, and DID NOT HAVE WORKING /dev/sda* devices! [some were block devices, but some were CHARACTER DEVICES! (ie useless)] (You get this by going to your local redhat ftp archive, going to sparc, going to the "images" directory, and grabbing TWO floppy images: boot32.img, and ramdisk.img "boot floppy" off the boot32 one, then swap the other one in when prompted to do so) 2. It was read-only, no matter what I tried to do [irritating... when I try it NOW... it seems to work. probably because I finally fixed the device files as well. 3. I thought I could use the "easy.nfs.root" file available here and there, to quickly populate a ufs partition, and hit the ground running. But there were some problems getting linux to boot on a ufs root partition. 4. There seems to be some problems with the linux ufs reading code. 4a I made a new ufs-format floppy. it only worked 90% of the time, depending on where the files/inodes were. It seems like Linux couldn't read the full floppy. It missed the end. It complained about reading past the size of the filesystem/disk Possibly a bad floppy. 4b linux has problems reading greater-than-2-gig ufs filesystems. Not too surprising, since the developers are biased towards sunos, not solaris, and only solaris supports this. But still a nasty surprise, and roadblock. 5. linux ufs isn't too happy about WRITING ufs. # # # # # # # # # # # # # # # # # # # # # # # # Interlude So, after hours of messing around just to diagnose these things, I finally managed to copy the devices from the "easy.root" tar file from redhat, to a UFS formatted floppy. (remember, the devices on the root floppy were BROKEN, so i couldn't copy those) Also, keep in mind, all this was without basic utils like "ls", "mv", "cat", etc. No libc.so. The /dev/fd0 on the root floppy I had, DID work. So I dd'd that image, to a DISK partition. booted off that partition. mounted my ufs floppy on /lost+found (with "-n -t ufs" options) And then proceeded to try things through device /lost+found/dev/sdaX # # # # # # # # # # # # # # # # # # # # # # # # 6. MAKEDEV didn't work. it complained about /proc not mounted. Then it quit, without doing anything. Since I didn't know enough abut the linux methodology of mounting /proc, I couldn't do anything about that. Plus, it wanted utilities like "expr" that weren't available. 6a the tar with the floppy-root doesn't archive devices, so I went through many rounds of making devices by hand. It then took me quite a while to find out exactly which were required 7. There seem to be bugs with the mount code/drivers. Sometimes, I had a filesystem mounted in /mnt. This is in single-user mode, obviously. Although I was occasionally using binaries from /mnt/bin. I had nothing else mounted. I set my path to be only /bin again. I did hash -r. But it still refused to umount the filesystem,claiming it was busy. Another example: Sometimes, I forgot to give the right arguments to mount a device. (for example, forgetting -n, since / is read-only) So it complained. Then I tried again with the right arguments. And it said something along the lines of "device already mounted, or /mnt busy". Which was baloney. I couldn't mount it again. nor could i "umount -n /mnt" There may have been other things. I'l add them if I remember them. But that pretty much covers things.