1 |
On Fri, Jan 13, 2017 at 3:50 PM, Michael Morak <michael.morak@×××××.com> wrote: |
2 |
> On 13 January 2017 at 23:04, Jorge Almeida <jjalmeida@×××××.com> wrote: |
3 |
|
4 |
> |
5 |
> Almost, but not quite. The problem is that the POSIX standard requires that |
6 |
> any file *must* continue to exist until all file handles pointing to it are |
7 |
> closed. Thus, using your example, when file foo.so gets replaced, the new |
8 |
> foo.so is written to the disk somewhere, but, since foobard holds an open |
9 |
> file handle, the old file is not deleted from the disk yet. At that point, |
10 |
> the content of *both* files (and relevant inodes, etc.) exists on the |
11 |
> *disk*, and, in addition, there is a pending delete operation for the old |
12 |
> file (that is, a "write" operation to /). This prevents / from being mounted |
13 |
> ro, since the pending write must be executed first (hence the message "/ is |
14 |
> busy"). |
15 |
> |
16 |
OK, I think I understand it. |
17 |
|
18 |
|
19 |
> operation and output a list for you. The needrestart script can also try to |
20 |
> automatically restart them for you. |
21 |
|
22 |
I wouldn't want that. |
23 |
|
24 |
Thanks |
25 |
|
26 |
Jorge |