我成功地在远程 ssh 主机上安装了一个本地文件夹。
我现在想做一个,tail -500f my_text_file
但效果不佳。尽管它确实打开了尾部并向我显示了文件内容,但该-f
部分绝对不起作用。这一定与sshfs
. 当我进行常规 ssh 连接时,它运行得非常好。
有关如何解决此问题的任何指示?我正在使用 sshfs 版本,sudo apt install sshfs
在 Ubuntu 中执行时获得。
tail -f
尝试使用文件更改通知机制 ( inotify )。SSHFS 与任何其他FUSE文件系统一样,不支持这种机制。通常tail
应该自己发现这一点。如果这不起作用,您可以使用未记录的选项---disable-inotify
(以三个破折号开头,因为它是一个未记录的选项)来强制使用适用于任何文件系统的轮询模式。
tail ---disable-inotify -n 500 -f my_text_file
Run Code Online (Sandbox Code Playgroud)
sshfs
使用sftp
协议来列出和传输文件,并且在sftp
协议中(至少在 OpenSSH 中实现),不可能通知本地tail
有关远程文件的更新。
正如 @vovick 所提议的,您可以使用各种方法来解决这个问题,例如使用轮询。tail
或者更好的方法,直接在远程服务器上运行(除非它是sftp
-only)。
归档时间: |
|
查看次数: |
702 次 |
最近记录: |