分类 linux 下的文章

流程

  1. 客户端开启 ssh-agent
  2. 增加key到 agent 中
  3. 客户端配置 ~/.ssh/config 允许 agent 转发出去
  4. 服务端配置 /etc/ssh/sshd_config 接受客户端转发过来的 agent

配置服务端转发 (需要重启sshd)

/etc/ssh/sshd_config

AllowAgentForwarding yes

配置客户端转发

~/.ssh/config (/etc/ssh/ssh_config)

Host gitee.com
    ForwardAgent yes

ssh agent 配置

启动 ssh-agent

eval `ssh-agent`

添加 key 到 ssh-agent (默认添加当前账户下的几个默认key)

ssh-add 

列出已经添加到 ssh-agent 中的key

ssh-add -l

cp -r dir1 dir2
目录拷贝,dir2不存在,拷贝dir1到dir2,dir2存在,拷贝dir1到dir2之下。

cp -r dir1/ dir2
内容拷贝,dir2不存在,拷贝dir1到dir2,dir2存在,拷贝dir1内容到dir2之下。

cp -r dir1/* dir2
同上,内容拷贝,但目录必须存在。
rsync -r dir1 dir2
目录拷贝,拷贝dir1到dir2之下,不管目录是否存在。

rsync -r dir1/ dir2
内容拷贝

rsync -r dir1/* dir2
内容拷贝

rsync格式

rsync [OPTION] … SRC   DEST
rsync [OPTION] … SRC   [user@]host:DEST
rsync [OPTION] … [user@]host:SRC   DEST
rsync [OPTION] … SRC   [user@]host::DEST
rsync [OPTION] … [user@]host::SRC   DEST

rsync常用选项

-a 包含-rtplgoD
-r 同步目录时要加上,类似cp时的-r选项
-v 同步时显示一些信息,让我们知道同步的过程
-l 保留软连接
-L 加上该选项后,同步软链接时会把源文件给同步
-p 保持文件的权限属性
-o 保持文件的属主
-g 保持文件的属组
-D 保持设备文件信息
-t 保持文件的时间属性
--delete 删除DEST中SRC没有的文件
--exclude 过滤指定文件,如--exclude “logs”会把文件名包含logs的文件或者目录过滤掉,不同步
-P 显示同步过程,比如速率,比-v更加详细
-u 加上该选项后,如果DEST中的文件比SRC新,则不同步
-z 传输时压缩