题
我使用PSCP使用此命令将文件传输到虚拟Ubuntu服务器:
pscp test.php user@server:/var/www/test.php
我获得了错误权限。如果我尝试转移到文件夹/家庭/用户/我没有问题。
我想这与我正在使用的用户无权访问文件夹/var/www/有关。当我使用SSH时,我必须使用sudo来访问/var/www/path - 我做到了。
是否可以指定PSCP应该“ sudo”传输到服务器,以便我可以访问/var/www/path并实际上能够将文件传输到此文件夹?
解决方案
如果您拥有服务器:
将自己添加到www-data组中:
sudo usermod -a -G www-data <username>
并设置正确的权限:
sudo chown -R www-data:www-data /var/www/
sudo chmod -R 0775 /var/www/
这应该解决问题。
其他提示
当您写作时提防以下内容
sudo usermod -G www-data <username>
选项-G将使指定的用户()成为指定特定组的成员。因此,上述语句将使用户成为www-data组的一部分,但会将用户从用户属于的任何其他组中删除。为避免这种情况,您必须添加选项-A或指定您希望用户参与的所有当前组。我意外地将用户“管理员”从Sudo组中取出,因为我不知道这一点。因此,如果您希望指定的用户保持其当前组成员身份,请编写以下命令。
sudo usermod -G -a www-data <username>
有关USERMOD命令的更多信息,请访问:
我遇到了同样的错误“ PSCP:无法打开您的filepath:拒绝许可”,
检查您要覆盖的文件的所有权,如果您不能覆盖它,您将获得此错误,
如果您无法控制远程文件,只需尝试重命名要移动的文件即可。
不隶属于 StackOverflow