Hi,

I have a similar setup. The problem is that some of your services may still
have open handles on files that no longer exist after updating (i.e. the
service, when originally started, opened an .so library file that it needs
to run, but the file then gets deleted or replaced during the emerge -u).
Simply restart all services (and other running programs) that have locks on
files that were updated.

The reason those files do not show up in your lsof command is that they may
not be open for writing but only for reading. A read lock on a file may
still give you the "/ is busy" message, since the open-for-read file cannot
be (fully) deleted while a running application still has a lock on it. You
have to get the process to release the read lock on the file (which, for
libraries, is usually done by a restart).

Hope this helps.

Cheers,
Michael

On 11 January 2017 at 22:54, Jorge Almeida <[email protected]> wrote:

> I have my / partition mounted read-only. It works fine, /var is in a
> different partition, as well as /usr/portage. Of course, I have to
> remount / rw when emerging packages.
>
> The problem is that, more often than not, I cannot remount ro after
> emerging ("/ is busy").
> I tried "lsof / | awk '$4 ~ /[0-9].*w/'" and the only files that are
> open for writing are FIFOs, which are associated with services I put
> there myself and should be there ( and were there before emerging,
> anyway...) IOW, no file is unexpectedely open for writing in /.
>
> I suspect something related with updated libraries (old versions kept?).
> I tried logging out. The problem persists after logging in in a getty,
> with no X process active.
>
> I'm updating the system  with
> emerge -NDu world
>
> and then
> emerge @preserved-rebuild
>
> Maybe I'm missing something obvious re updating?
>
> Ideas, similar experiences?
>
> Thanks
>
> Jorge Almeida
>
>

Reply via email to