一:主机SSH 配置
本地主机和目的主机 需要安装ssh服务: sudo apt-get install ssh openssh-server
1.查看ssh服务的状态
输入以下命令:
sudo service sshd status
如果出现
Loaded: error (Reason: No such file or directory)
提示的话,说名没有安装ssh服务,按照第二步:安装ssh服务。
如果出现
Active: inactive (dead)
说明已经安装了ssh服务,但是没有开启。按照第三步:开启ssh服务。
2.开启ssh服务
在终端敲入以下命令:
sudo service sshd start
执行完命令后,用第一步:查看ssh服务状态的命令,如果出现以下提示
Active: active (running) since Sun -04-07 13:43:11 CST; 15s ago
说明你的ssh服务已经启动了。如果失败来的话,那试着卸载一下(看第六步:卸载ssh服务)再安装(第二部:安装ssh服务)。
3.卸载ssh服务
如果你用的是redhat,fedora,centos等系列linux发行版,那么敲入以下命令:
sudo yum remove sshd
如果你使用的是debian,ubuntu,linux mint等系列的linux发行版,那么敲入以下命令:
sudo apt-get –purge remove sshd
然后就会提示卸载完成。
备注1:如何修复“sshd error: could not load host key”
备注2:解决Host key verification failed.(亲测有效)
二、scp or rsync命令
rsync 命令
rsync -av -e ssh --exclude='*.pth' pi@IP_address:file_path local_footpath
解释一下上面的命令:
-a
: 递归到目录,即复制所有文件和子目录。此外,打开存档模式和所有其他选项 (-rlptgoD)
-v
: 详细输出
-e
ssh : 使用ssh作为远程shell,以便对所有内容进行加密
--exclude
=’*.pth’ : 排除匹配模式的文件,例如。*.pth等等.
scp命令
scp file1 user@host:/path/to/dest/ scp -r /path/to/source/ user@host:/path/to/dest/
传输数据从远程主机拷贝文件夹至本地主机的命令:
scp -r 目的主机名@目的主机IP地址:/home/username/document(目的主机中的文件目录) /home/username/(本地主机文件夹)
这里,highlight是远程主机的用户名,10.110.61.238是远程主机的IP地址,/home/highlight/document是希望拷贝的远程主机上的文件夹名称,/home/highlight是拷贝来的文件在本地主机的存放位置。
拷贝本地主机的文件夹到远程主机的命令:
$ scp -r ./document (本地主机中的文件目录) 目的主机名@目的主机IP地址:/home/highlight