【发布时间】:2012-09-04 04:43:57
【问题描述】:
是否有一个通用的 bash shell 变量或通用 Linux 命令可以可靠地指示给定目录或文件是否位于远程文件系统上——无论是 NFS、SSHFS、SMB 还是任何其他远程安装的文件系统?
上下文...
这是一个仅 root 访问、单用户、多主机 Linux 开发“实验室”,使用 SSH 和 SSHFS 对系统进行半无缝松散耦合。每个主机上的相关目录结构是...
/0
/0/HOST1
/0/HOST2
/0/HOST3
/bin
/boot
:
/0 中的目录是 SSHFS 挂载到指定主机上的“/”。 'Host1' 等是为每个主机命名的挂载点目录。
我当然可以建立一个类似...的环境变量
REMOTE_FS=/0
...并测试以 '/0' 开头的目录名。但是,这不是很便携或可靠。
明显的问题...
已经努力使其无缝,为什么我想知道何时访问非本地的东西?
回答...
遍历已挂载的文件系统会将所有处理负载放在启动主机上。我想知道何时可以选择使用 SSH 而不是 SSHFS 将后台处理(ls、grep、awk 等)卸载到远程(通常更强大)主机,只留下 GUI 和控制逻辑本地机器。
【问题讨论】:
-
df 对于确定哪个文件系统保存特定文件或目录很有用。