检测远程安装

时间:2012-09-04 04:43:57

标签: bash ssh mount sshfs

是否有单个通用bash shell变量或通用Linux命令可以可靠地指示给定目录或文件是否位于远程文件系统上 - 无论是NFS,SSHFS,SMB还是任何其他远程安装的文件系统?

... CONTEXT
这是一个仅限root用户,单用户,多主机Linux开发“实验室”,使用SSH和SSHFS进行半无缝松耦合系统。每个主机上的Relevent目录结构是......

    /0
    /0/HOST1
    /0/HOST2
    /0/HOST3
    /bin
    /boot
      :

/ 0中的目录是在命名主机上的“/”上安装的SSHFS。 'Host1'等是为每个主机命名的mountpoint目录。

我当然可以建立一个类似于......的环境变量。

    REMOTE_FS=/0

...并测试以'/ 0'开头的dirname。然而,这不是非常便携或可靠。

明显的问题......
努力使其无缝化,为什么我想知道什么时候访问非本地的东西?

...回答
通过挂载的文件系统将所有处理负载放在启动主机上。我想知道何时我可以选择使用SSH而不是SSHFS将后台处理(ls,grep,awk等)卸载到远程(通常更强大)的主机上,只留下GUI和控制逻辑本地机器。

1 个答案:

答案 0 :(得分:2)

df -l <file>

如果文件或目录不是本地的,则返回非零退出代码。