|
1.00-pre1 problem: can't umount oldroot after pivot_root&chroot: msg#00187linux.busybox
Hi, I use busybox in my embedded system, and use cramfs as root filesystem in flash. To update the root filesystem without reboot the board, I wrote some scripts to do the following things: 1. Copy rootfilesystem image file to /tmp(tmpfs) 2. Restart init, this step will kill all processes, umount all filesystem except /(cramfs) and /tmp(tmpfs), then init exec my script. 3. Here is my first script: #!/bin/sh # Copy all system file to new root cp -a /bin /sbin /etc /lib /dev /tmp cd /tmp mkdir old_root proc tmp mount -t proc none proc # Change root device pivot_root . old_root #chroot to tmpfs exec sbin/chroot . sbin/flash.sh <dev/console >dev/console 2>&1 These steps work well in both 0.60.5 and 1.00-pre1. In my second script (flash.sh), I first do an umount on old_root: umount old_root this works in busybox-0.60.5, but fails in busybox-1.00-pre1 with the error "Device or resource is busy". By adding a mount command before above line, I found the difference: in 0.60.5, the device on /old_root is the real device: /dev/mtd_blk2 on /old_root type cramfs (rw) but in 1.00-pre1, the device changes to /dev/root: /dev/root on /old_root type cramfs (rw) I wonder whether this change cause the error? Is this a bug? |
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| Previous by Date: | Re: old insmod support.: 00187, Erik Andersen |
|---|---|
| Next by Date: | Re: 1.00-pre1 problem: can't umount oldroot after pivot_root&chroot: 00187, Erik Andersen |
| Previous by Thread: | something wrong with vii: 00187, 邱烽 |
| Next by Thread: | Re: 1.00-pre1 problem: can't umount oldroot after pivot_root&chroot: 00187, Erik Andersen |
| Indexes: | [Date] [Thread] [Top] [All Lists] |
| News | FAQ | advertise |