为了进行批量关机工作,前提要配置好ssh的双机信任。

A机192.168.1.241

B机192.168.1.212

在A机上获取一个pub密钥,即为公共密钥。

执行这个命令后:ssh-keygen  -t  rsa

在 ~/.ssh/目录下

使用scp命令,将公钥拷贝到B机

SUSE-linux:~/.ssh # scp id_rsa.pub root@192.168.1.212:/tmp/

拷贝完成

进入B机

cd ~/.ssh/

这个目录

将A机的公钥拷贝到authorized_keys这个文件下

linux-218:~/.ssh # cat /tmp/id_rsa.pub >> authorized_keys

最后设置权限为600即可

返回到A机测试

大功告成

配置第二台机时出现一个奇葩问题

C机192.168.1.218

在用户root的家目录下没有.ssh文件夹

按照网上说法,在C机执行ssh localhost后自动生成

接下来就按照原样进行配置即可。

以上为root用户信任关系配置,若要配置普通用户信任关系,可su到对应的用户下进行以上配置即可。

SCP用于linux下相互传送传文件命令方式的一种。

本地->远端(复制文件):
scp LocalFile UserName@RemoteIP:RemoteFile
本地->远端(复制目录):
scp -r LocalFolder UserName@RemoteIP:RemoteFolder
远端->本地(复制文件):
scp UserName@RemoteIP:RemoteFile LocalFile
远端->本地(复制目录):
scp -r UserName@RemoteIP:RemoteFolder LocalFolder
远端->远端(复制文件,从1复制到2) :
scp UserName1@RemoteIP1:RemoteFile1 UserName2@RemoteIP2:RemoteFile2
远端->远端(复制目录,从1复制到2):
scp -r UserName1@RemoteIP1:RemoteFolder1 UserName2@RemoteIP2:RemoteFolder2

一、推送式:首先登陆到本机,将本机的文件推送到远程主机。
命令格式:
1、 scp local_file remote_username@remote_ip:remote_folder
2、 scp local_file remote_username@remote_ip:remote_folder/remote_file
3、 scp local_file remote_ip:remote_folder
4、 scp local_file remote_ip:remote_folder/remote_file
第1,2个指定了用户名,命令执行后需要再输入密码。第1个仅指定了远程的目录,文件名字不变;
第2个指定了文件名;
第3,4个没有指定用户名,命令执行后需要输入用户名和密码。第3个仅指定了远程的目录,文件名字不变;
第4个指定了文件名;
例子: 登陆到本机(172.168.0.12),将本机文件1.mp3推送到远程主机172.168.0.13上
1、scp /home/space/music/1.mp3 root@172.168.0.13:/home/root/others/music
2、scp /home/space/music/1.mp3 root@172.168.0.13:/home/root/others/music/001.mp3
3、scp /home/space/music/1.mp3 172.168.0.13:/home/root/others/music
4、scp /home/space/music/1.mp3 172.168.0.13:/home/root/others/music/001.mp3
第1个例子是将本机/home/space/music目录下的1.mp3,推送到172.168.0.13的/home/root/others/music目录下,文件名不改变。
第2个例子是将本机/home/space/music目录下的1.mp3,推送到172.168.0.13的/home/root/others/music目录下,文件名为001.mp3。
第3个例子是将本机/home/space/music目录下的1.mp3,推送到172.168.0.13的/home/root/others/music目录下,文件名不改变。
第4个例子是将本机/home/space/music目录下的1.mp3,推送到172.168.0.13的 /home/root/others/music目录下,文件名为001.mp3。
二、拉取式:从远程复制到本机,只要把推送式中命令的后2个参数调换顺序即可。
命令格式:
1、 scp remote_username@remote_ip:remote_folder/remote_file local_folder/local_file
2、 scp remote_username@remote_ip:remote_folder/remote_file .
例子: 登陆到本机(172.168.0.12),将远程主机172.168.0.13上的1.mp3复制到本机
1、scp root@172.168.0.13:/home/root/others/music/1.mp3 /home/space/music/001.mp3
2、scp root@172.168.0.13:/home/root/others/music/1.mp3 .
第1个例子是将172.168.0.13上/home/root/others/music目录下的1.mp3,复制到本机的/home/space/music目录下,文件名为001.mp3。
第2个例子是将172.168.0.13上/home/root/others/music目录下的1.mp3,复制到本机的当前工作目录下,文件名不变。
注:如果不能直连,经过了几跳才连接到目标主机,可通过一级一级的获取得到目标文件。
例如:本机(172.168.0.12)首先连接172.168.0.13,然后再连接172.168.0.14,再连接172.168.0.15,想获取15上文件到本机12上。
拉取式:可以通过172.168.0.14拉取172.168.0.15上文件,然后在172.168.0.13拉取14的,最后在172.168.0.12上拉取13上的。
推送式:可以通过172.168.0.15推送到172.168.0.14上,然后在14上推送到172.168.0.13上,最后在13上推送到172.168.0.12上。

Linux命令之sftp
sftp命令可以通过ssh来上传和下载文件,是常用的文件传输工具,它的使用方式与ftp类似,但它使用ssh作为底层传输协议,所以安全性比ftp要好得多。

常用方式

格式:sftp <host>

通过sftp连接<host>,端口为默认的22,用户为Linux当前登录用户。

格式:sftp -oPort=<port> <host>

通过sftp连接<host>,指定端口<port>,用户为Linux当前登录用户。

格式:sftp <user>@<host>

通过sftp连接<host>,端口为默认的22,指定用户<user>。

格式:sftp -oPort=<port> <user>@<host>

通过sftp连接<host>,端口为<port>,用户为<user>。

sftp连接成功之后常用操作命令如下:

help/? 打印帮助信息。

pwd   查看远程服务器当前目录;

lpwd  查看本地系统的当前目录。

cd <dir>   将远程服务器的当前目录更改为<dir>;

lcd <dir>  将本地系统的当前目录更改为<dir>。

ls 显示远程服务器上当前目录的文件名;

ls -l  显示远程服务器上当前目录的文件详细列表;

ls <pattern> 显示远程服务器上符合指定模式<pattern>的文件名;

ls -l <pattern>  显示远程服务器上符合指定模式<pattern>的文件详细列表。

lls 显示本地系统上当前目录的文件名;

lls的其他参数与ls命令的类似。

get <file> 下载指定文件<file>;

get <pattern> 下载符合指定模式<pattern>的文件。

put <file> 上传指定文件<file>;

get <pattern> 上传符合指定模式<pattern>的文件。

progress 切换是否显示文件传输进度。

mkdir <dir> 在远程服务器上创建目录;

lmkdir <dir> 在本地系统上创建目录。

exit/quit/bye 退出sftp。

! 启动一个本地shell。

! <commandline> 执行本地命令行。

其他命令还有:chgrp, chmod, chown, ln, lumask, rename, rm, rmdir, symlink, version。

最新文章

  1. Oozie_初识
  2. 如何在CentOS 6.5上安装EPEL 源
  3. WP8:在Unity中使用OpenXLive
  4. android中影藏状态栏和标题栏的几种方法
  5. NuGet的安装;
  6. 【数据库】MySql常用函数梳理
  7. matlab 函数说明--waitforbuttonpress
  8. online web design tool
  9. web.py simpletodo 例子
  10. 【转】Java学习之Iterator(迭代器)的一般用法 (转)
  11. dzz使用总结(添加云盘,好用的Web文件管理器,网络播放器)
  12. [Framework Design Guideline]
  13. struts2 action 接受数组参数为Null的问题
  14. php中数组相关
  15. MTU介绍以及在windows和linux下怎么设置MTU值
  16. 阶段02JavaWeb基础day01html&amp;css
  17. 【HDU 6171】Admiral(搜索+剪枝)
  18. 20175310 《Java程序设计》第5周学习总结
  19. Net Core 使用外部登陆提供程序登陆的流程,以及身份认证的流程
  20. Java实现Sybase数据库连接

热门文章

  1. WinForm 加载大数据时不闪烁的ListView
  2. c++11-17 模板核心知识(十五)—— 解析模板之依赖型类型名称与typename Dependent Names of Types
  3. 使用eslint将项目中的代码修改统一的缩进
  4. Codeforces Edu Round 60 A-E
  5. Ubuntu18开机执行shell命令
  6. mac中nvm的安装和使用
  7. Python Windows开发环境搭建
  8. 【Django 局域网配置】
  9. centos7下安装iostat命令
  10. 第二篇:docker 简单入门(二)