无法使用“tail -f”查看文件的进度

无法使用“tail -f”查看文件的进度

令人惊讶的是为什么现在tail -f不起作用而早些时候却起作用了。

我有以下命令来运行备份。

ubuntu@ubuntu:~$ sudo tar -cvf /media/ubuntu/My*Linux/ub*data/zebra.tar /media/ubuntu/home > z1 2> z2 && echo "pass" || echo "fail"

要查看输出和错误,有这 2 个文件z1z2.

现在我想在终端上查看文件 z1 中命令的输出:

ubuntu@ubuntu:~$ tail -f z1

但此命令没有显示随时间附加的数据。

我正在使用 USB 笔驱动器实时安装 Ubuntu 14.04.1。这可能是原因吗?

答案1

我可以重现这个。这是一个错误。

在 Ubuntu Live CD 上,包含默认用户主目录的文件系统为覆盖文件系统,声称支持inotify但没有。

因此,tail -foverlayfs 上的文件尝试使用inotify,然后在文件更改时不会收到任何通知。

Ubuntu 的错误报告是Bug #882147:overlayfs 未正确实现 inotify 接口。 Jim Meyering 通过 Andrea Ranieri 提供的错误报告中引用的解决方法是使用

tail -f ---disable-inotify file

(那里确实有三个连字符。)

相关内容