当前位置: 首页>>技术教程>>正文


在SSH中,我如何mv到我的本地系统?

, ,

问题描述

我把ssh放到我的网络主机的目录中,然后tar – 把webapp下载下来。当我尝试将mv添加到~/mydirectory/backups/home/mydirectory/backups时,它将”home”定义为I’m ssh’所在的虚拟主机上的根。

我仍然在网络主机的系统内部时,如何在ssh中将mv映射到本地驱动器?

最佳解决思路

首先要做的是:ssh是一种远程登录到另一台计算机的方式。你在ssh之后得到的shell(命令行)与在远程机器上打开xterm相同(几乎)相同。如果没有这种方式来移动文件。

但是,远程计算机接受ssh连接的事实为您提供了一些交换文件的选项:

使用scp要从本地计算机复制到远程,请在本地计算机中键入:

scp /tmp/file user@example.com:/home/name/dir

(其中/tmp /文件可以用任何本地文件和/home /name /dir替换为任何远程目录)

要从远程计算机复制到本地计算机,请在本地计算机中键入:

scp user@example.com:/home/name/dir/file /tmp

使用sshfs这有点更先进,但更好,更好(当两台计算机的互联网连接良好时,如果没有,请坚持使用scp)

您可以从远程计算机的目录”link”到本地计算机的(空)目录。在远程计算机中将”link” /some /remote /dir指向您的计算机中的/home /youruser /remotecomp。如果远程计算机中存在文件/some /remote /dir /file,可以在/home /youruser /remotecomp /file中看到它。您可以像往常一样复制和mv,甚至可以更改远程文件和目录。

但是请注意,当连接结束时,/home /youruser /remotecomp再次变为空dir,并且只保留在本地计算机中复制到其他目录的文件

为了达成这个:

1)安装sshfs:

sudo apt-get install sshfs

2)创建一个空的目录

mkdir /home/youruser/remotecomp

3)”link”这两个目录(右边是mount)

sshfs user@server.com:/some/remote/dir /home/youruser/remotecomp

4)享受

5)”unlink” dirs

fusermount -u /home/youruser/remotecomp

如果本地计算机运行Windows您可以找到用于Windows的scp版本。参见例如winscp

次佳解决思路

您可以使用scprsync。在您的本地系统中:

scp remoteuser@remotehost:/remote/dir/file /local/dir/

但是,既然你提到了备份,我认为这将是渐进的,你需要时不时地做。因此,rsync是增量备份的更好选择。在你的本地shell上:

rsync -avz -e ssh remoteuser@remotehost:/remote/dir /local/dir/

有关选项,请参阅rsync(1)scp(1)手册页。

第三种解决思路

你可以使用scp安全拷贝。

从你当地的 shell :

scp -C username@webhost:/path/of-the/tar.archive /home/mydirectory/backups/

此示例将通过ssh从您的虚拟主机的/path/of-the/tar.archive复制到/home /mydirectory /backups /

其他选项:

-C:启用压缩

第四种思路

我有同样的问题。这是简单的解决方案: –

  1. 打开 nautilus (文件资源管理器)

  2. 点击左侧面板底部的+ Other Locations

  3. 在底部有一条条Connect to server。在输入框中写入ssh地址,例如ssh://111.222.333.444/

  4. 在打开的对话框中输入您的用户名和密码。

  5. 成功验证后,您将位于远程位置的home。随意移动文件在这里和那里。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/622.html,未经允许,请勿转载。