我想用很多用户使用sshfs。
sshfs [email protected]:/ root/
用这个命令,我得到目录root /下的整个文件系统。
当这个用户刚刚存在于远程机器上时,是否有可能改变文件的用户?
我试过了:
chown myuser myfile
当我在遥控器上做ls -lah时,我得到:
-rw-r--r-- 1 otheruser root 0 Jan 11 11:03 myfile
问题来自于chown会将文件交给本地UID属于myuser的用户。
例如,在本地计算机上,您拥有使用UID 1001的myuser ,但UID 1001属于远程计算机上的其他用户。
如果您想将其提供给远程系统上的myuser ,则必须:
myuser的远端UID(使用例如ssh root@distant id -u myuser )并使用带有该UID的chown 。 使用第二个选项,你可以做例如(使用bash):
uid=$(ssh root@distant id -u myuser) [[ -n $uid ]] && chown $uid. myfile || echo "No uid found. Not chowning"
寻找posixovl文件系统。
假设〜/ REMOTESITE是远程系统的sshfs挂载:
/usr/local/sbin/mount.posixovl -F -S〜/ REMOTESITE / user-backups / REMOTESITE - -o allow_other
(我不确定'allow_other'是否被严格需要,但是没有伤害。)
远程文件仍然由谁login到远程帐户,而是由本地系统拥有,他们似乎由本地用户所有。
(你也可能希望将encfs覆盖在此,所以你不需要信任远程站点)
格雷厄姆
不,你不能这样做。 远程系统上的所有文件都作为安装时使用的“用户”进行访问。 在你的情况下,它是根。