[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: