A friend of a friend recently tried to install BackTrack 3 from a LiveCD. It's based on Slackware Linux, apparently. He ran into some issues I helped him solve, and I thought I would reproduce the problem and solution here in hopes that it might help someone else.
He had run the LiveCD, run through the Install as he thought he should, but was hoping for a dual-boot. This was apparently causing him issues (that perhaps a sole BT3 installation would avoid?
After running the installer, and having the distribution installed to his new Linux partition (in this case, /dev/sda4; /dev/sda1 was Windows, and 2 and 3 were for swap and something else), he encountered the following when trying to install a bootloader using lilo.
bt etc # lilo Fatal: creat /boot/map~: Read-only file system
The issue here seems to have been that his mounted root file system is on the LiveCD. This makes it non-readable, and also means it's not the file system he wants to be installing the boot loader in.
solution 1:
lilo -r /mnt/sda4
This makes lilo use /mnt/sda4 as its root directory (yay, chroot). This is important, because /mnt/sda4 is mounted to /dev/sda4 where his actual on-disk BT3 installation is.
Unfortunately, there's another problem.
bt etc # lilo -r /mnt/sda4 Warning: LBA32 addressing assumed Fatal: raid_setup: stat("aufs")
We were find with the LBA32 addressing being assumed, but how did RAID concern his laptop? And why another union FS? Apparently his "boot=" line in his lilo.conf referred to aufs, so he changed it to refer to /dev/sda instead. That didn't help:
bt etc # lilo -r /mnt/sda4 Warning: LBA32 addressing assumed Fatal: raid_setup: stat("/dev/sda")
Eventually, it occurred to me that dev/ inside /mnt/sda4/ wouldn't be populated with anything, now that it's dynamically populated (I think). However, /dev/ in the LiveCD environment was. After some googling, this was done:
# mount --bind /dev /mnt/sda4/dev # mount -t proc proc /mnt/sda4/proc
I'm not sure about the necessity of mounting the proc, but we definitely needed to dev to be populated on sda4. After doing this, `lilo -r /mnt/sda4` was successful. Yay.
summary
If you're having issues installing a bootloader for your dual-boot BackTrack3 installation, and are getting either of the following two errors, try the following command sequence (replacing sda4 with your target partition).
error 1Fatal: creat /boot/map~: Read-only file systemerror 2
Fatal: raid_setup: stat("aufs")
Fatal: raid_setup: stat("/dev/sda")solution
# mount --bind /dev /mnt/sda4/dev # mount -t proc proc /mnt/sda4/proc # lilo -r /mnt/sda4
And you might have to set the line "boot=/dev/sda" in lilo.conf.
If this helps anyone, please let me know. If you seem to have the same problem and this doesn't help, then really please let me know. I don't want useless instructions remaining useless forever.
Yes , thanks a lot !
ReplyDeleteI had same - raid_setup errors and was able to fix by mounting /dev , besides root partition.