我ssh
-ed 进入我的虚拟主机的目录,并tar
-ed 下载 webapp。当我尝试mv
到~/mydirectory/backups
或者/home/mydirectory/backups
,它的“家”定义为我的虚拟主机提供商说我ssh'ed成根。
我如何在 ssh 中 mv 到本地驱动器,同时仍然在网络主机的系统内?
jos*_*lvo 195
首先要做的是:ssh 是一种远程登录到另一台计算机的方法。您在 ssh 后获得的 shell(命令行)(几乎)与您在远程机器上打开一个 xterm 相同。如果没有提供这种移动文件的方式。
但是,远程计算机接受 ssh 连接这一事实为您提供了一些交换文件的选项:
使用 scp 要从本地计算机复制到远程计算机,请在本地计算机中键入:
scp /tmp/file user@example.com:/home/name/dir
(其中 /tmp/file 可以替换为任何本地文件,/home/name/dir 可以替换为任何远程目录)
要从远程计算机复制到本地计算机,请在本地计算机中键入:
scp user@example.com:/home/name/dir/file /tmp
使用 sshfs 这有点高级但是好多了(当两台计算机的互联网连接都很好时。如果不是,坚持使用 scp)
您可以将远程计算机的目录“链接”到本地计算机的(空)目录。假设您将远程计算机的 /some/remote/dir “链接”到计算机中的 /home/youruser/remotecomp。如果远程计算机中有文件/some/remote/dir/file,您可以在/home/youruser/remotecomp/file 中看到它。您可以照常复制和 mv,甚至可以更改远程文件和目录。
但是请注意,当连接结束时, /home/youruser/remotecomp 再次变为空目录,并且您只将复制到其他目录的文件保留在本地计算机中
为达到这个:
1)安装sshfs:
sudo apt-get install sshfs
2)创建一个空目录
mkdir /home/youruser/remotecomp
3)“链接”两个目录(正确的术语是mount)
sshfs user@server.com:/some/remote/dir /home/youruser/remotecomp
4)享受
5)“取消链接”目录
fusermount -u /home/youruser/remotecomp
如果本地计算机运行 windows,
您可以找到scp
for windows 的版本。参见,例如,winscp
Moh*_*ati 17
您可以使用scp
或rsync
。在您的本地系统中:
scp remoteuser@remotehost:/remote/dir/file /local/dir/
但是,既然你提到了备份,我假设它是增量的,你需要不时地做它。所以,rsync
增量备份是更好的选择。在您的本地外壳上:
rsync -avz -e ssh remoteuser@remotehost:/remote/dir /local/dir/
看到rsync(1)
和scp(1)
手册页的选项。
pl1*_*1nk 10
您可以使用scp安全副本。
从你的本地外壳:
scp -C username@webhost:/path/of-the/tar.archive /home/mydirectory/backups/
Run Code Online (Sandbox Code Playgroud)
此示例将通过 ssh 从您的网络主机的 /path/of-the/tar.archive 复制到 /home/mydirectory/backups/
额外选项:
-C : 启用压缩
小智 6
我有同样的问题。这是简单的解决方案:-
+ Other Locations
左侧面板底部的 。Connect to server
。在输入框中写上ssh地址如ssh://111.222.333.444/
.home
远程位置。随意移动文件在这里和那里。