如果已经提出这个问题,请道歉,但我尝试了快速搜索,但无法找到问题。
基本上我正试图从我的电脑上将文件SSH到我的朋友服务器上,供他阅读和修改自己。他给了我自己的登录和足够的权利等,但他无法看到我上传到服务器的内容,也看不到他添加的内容。
我目前正在使用: scp hello.txt username@domain.com:/ home / username / 正确上传,我可以看到它。
有人可以帮助我解释为什么他无法查看他上传的内容,反之亦然? 我们如何设置它以便我们可以看到彼此的文件并修改它们(某种公共文件夹?)?
答案 0 :(得分:1)
问题很可能是目录/文件的访问权限。非root用户可能无法看到其他用户的主目录的内容。如果您将文件上传到主目录,则您的朋友可能无法看到上传的文件,反之亦然。
解决方案很简单:您需要一个目录,在这个目录上你们都拥有适当的权限,正如你已经假设的那样。试试这个:
# on the server
mkdir /var/your_share/
chmod o+rwx /var/your_share/
# on your host
scp hello.txt username@domain.com:/var/your_share/
# on the server
ls -l /var/your_share/hello.txt
ls -l
显示上传文件的权限。
-rw-r--r-- 1 username username 10 Oct 13 15:49 hello.txt
如果它说的是这样的话,你的朋友将无权更改文件但只能阅读它。使用以下命令授予他对该文件的写权限:
# on the server
chmod o+w /var/your_share/hello.txt
ls -l /var/your_share/hello.txt
输出应该是这样的:
-rw-r--rw- 1 username username 10 Oct 13 15:49 hello.txt
注意:这些命令中授予的权限不仅适用于您朋友的帐户,还适用于服务器上的所有帐户。这意味着每个人都可以读取和写入文件。如果要更改它,则必须设置组并仅授予该组权限。