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

Re: pivot_root. unmount old root



>> The umount command fails with "device is busy". privot root and chroot
>> work fine.
>
> So everything works except the umount.  Interesting.  From the example
> in the man page they obviously expect it to be possible to umount the
> old root file system.
>
>>> Kill should be able to kill any process *except* init itself.
>>> And "telinit -u" should be able to refresh init.
>>
>> I did a telinit u after the chroot and killed the remaining processes.
>> After that lsof doesn't show any open files under old-root but umount
>> still fails with "device is busy".
>
> Maybe lsof doesn't necessarily list everything.  What does "fuser -m
> /old_root"
> show?  What about doing "fuser -k -m /old_root"?

Ok, I finally got the old root unmounted. There were some tmpfs mounted
unter old-root/dev/shm and old-root/lib/init/... - after unmounting these
I could also unmount the old-root. It's strange that neither lsof nor
fuser did show any open files for these mountpoints... I really wonder how
the pivot_root guys expect their examples to work ;)

What I still need to figure out is how I can replace init with a custom
process... but I think for that I will have to patch init itself.


K. Haselhorst


Reply to: