extract_kernel failing when trying to install from local disk
dbootstrap cannot seem to install os and modules from local disk, that
is, it is having a helluva bad time loop mounting rescue.bin:
It tries to run 'mount -r -t msdos /dev/loop0 /floppy' and gets a
kernel error: 'attempt to access beyond end of device'.
I had considered a change such as:
diff -u -u -r1.51 choose_medium.c
--- choose_medium.c 2000/01/23 22:28:31 1.51
+++ choose_medium.c 2000/01/25 06:55:27
@@ -107,7 +107,7 @@
}
for (fs_type = fs_type_tab; *fs_type; fs_type++) {
- snprintf(prtbuf, sizeof(prtbuf), "mount -r -t %s %s /floppy",
+ snprintf(prtbuf, sizeof(prtbuf), "mount -o loop,ro -t %s %s /floppy",
*fs_type, device);
status = execlog(prtbuf, LOG_INFO);
if (status == 0) /* success */
This would be nice because we don't have to keep track of what loop
device to use. Also, I have run it from the cmd line and it works.
However, obviously, it has two issues:
* extract_kernel would have to be changed to set device to the file
name of rescue.bin rather than /dev/loopX
* it seems that even after umounting these or failed mounts, the
loop device isn't deallocated, which soon leads us into running
out of our loop devices. This seems like a umount or mount
busybox bug?
--
.....Adam Di Carlo....adam@onShore.com.....<URL:http://www.onShore.com/>
Reply to: