GNU bug report logs -
#9266
tail -F does not follow through symlinks
Previous Next
Reported by: Bart Vanhaute <bart.vanhaute <at> gmail.com>
Date: Tue, 9 Aug 2011 15:42:02 UTC
Severity: normal
Tags: notabug
Done: Assaf Gordon <assafgordon <at> gmail.com>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
Bart Vanhaute wrote:
> When I use tail -F to follow a file that is a symlink to another file,
> and that second file gets replaced, tail no longer follows the new
> file. I am not sure if this scenario is actually supported, but the
> current behaviour is unexpected to me.
>
> Detailed scenario to reproduce:
>
> in one terminal:
> $ ln -s f a
> $ touch f
> $ tail -F a
>
> in another terminal:
> $ mv f f.0
> $ echo 'hello' > f
>
> The output in terminal one will show
> tail: `a' has become inaccessible: No such file or directory
> but it will not show the 'hello' message.
>
> I am using coreutils version 8.5 on debian sid (linux kernel version
> 3.0.0), but I noticed the same behaviour in coreutils version 8.9 on
> opensuse (linux kernel version 2.6.37).
Thank you for the report.
That is indeed a difference in behavior from
the way tail works without inotify support.
If you want the old behavior (though there is no guarantee this
option will be around forever -- it's deliberately not documented),
use tail's ---disable-inotify option. Note the three leading '-'s.
Another work-around is to use readlink to give tail
an absolute name for the file:
tail -F "$(readlink -e a)"
Regarding tail's behavior change, we'll have to investigate
if/how to address it.
This bug report was last modified 6 years and 288 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.