SSH终端Mac OS X中的本地文件到远程终端
我试图通过VPN使用SSH将本地文件“magento.tar.gz”从本地机器复制到远程服务器。 这连接到我在此处用作xx.xxxx的虚拟机的内部IP。
我对SSH帐户拥有完整的“sudo”权限,因此不应该有任何问题复制。 我已经尝试了以下内容:
我已经尝试了以下(magento.tar.gz文件已经在本地根目录中)
sudo scp magento.tar.gz user@xx.x.x.xx/var/www/
这要求我输入我的本地密码。 之后返回cp: user@xx.xxxx/var/www: Not a directory
sudo scp /Users/myname/magento.tar.gz user@xx.x.x.xx/var/www/
返回相同。
我需要在任何地方包含SSH吗?
我需要首先通过SSH连接到网站吗?
附注:我设法通过SSH连接到服务器,浏览到目录并创建一个文件夹,并使用sudo mkdir
等删除它,所以我一定有权限。
首先,您需要添加:
IP地址后,表示该路径如下:
scp magento.tar.gz user@xx.x.x.xx:/var/www
我不认为你需要sudo
scp
。 在这种情况下,它不会影响远程机器,只会影响本地命令。
然后,如果你的user
@ xx.xxxx没有对/var/www
写访问权,那么你需要在2次内完成:
复制到主文件夹中的远程服务器( :
代表远程主文件夹,使用:subfolder/
如果需要,或者:/home/user/
完整路径):
scp magento.tar.gz user@xx.x.x.xx:
然后SSH并移动文件:
ssh user@xx.x.x.xx
sudo mv magento.tar.gz /var/www
为了澄清JScoobyCed给出的答案,scp命令不能将文件复制到需要管理权限的目录。 但是,您可以使用scp命令复制到属于远程用户的目录。
因此,要复制到需要root权限的目录,必须先使用scp命令将该文件复制到属于远程用户的目录。 接下来,您必须使用ssh登录到远程帐户。 登录后,可以使用sudo mv命令将文件移动到您选择的目录。 简而言之,要使用的命令如下所示:
使用scp,将文件复制到远程用户帐户的目录中,例如Documents目录:
scp /path/to/your/local/file remoteUser@some_address:/home/remoteUser/Documents
接下来,使用ssh登录到远程用户的帐户,然后使用sudo将文件移动到受限制的目录中:
ssh remoteUser@some_address
sudo mv /home/remoteUser/Documents/file /var/www
注意你的文件名没有:
在其中。 我发现我必须mv blah-07-08-17-02:69.txt no_colons.txt
然后scp no-colons.txt server:
然后不要忘记mv
回到服务器上。 以防万一这是一个问题。