Mac下iterm2配色和免密登录linux实现rzsz文件上传下载

2019年3月29日 作者 jacky

PS:如果你是使用iterm2 + expect脚本的方式登录服务器 rz sz 会导致终端卡死的情况,所以这里推荐使用公私秘钥对的形式登录服务器

配色方案

主题下载地址

无密码登录服务器

本地系统使用生产公私秘钥对命令

$ ssh-keygen -t rsa 

产生的文件在~/.ssh目录下

拷贝本地公钥到远程服务器,其中root是你远程服务器的账号,12.34.56.78是你服务器的地址,并且输入密码

ssh-copy-id -i ~/.ssh/id_rsa.pub root@12.34.45.78

需要注意的是

  • 免密码登录的处理是用户对用户的,切换其他用户后,仍然需要输入密码
  • 公钥传到远程机器并生效的操作,可用其他方式实现,如scp后修改authorized_keys
  • 远程机器的.ssh目录需要700权限,authorized_keys文件需要600权限

此时我们ssh root@12.34.56.78已经不需要密码了,接下来我们配置iterm2

打开iterm2 的 profile -> Edit Profiles

新建一个自己的profile

然后填入相应的信息,这里使用命令行登录服务器

好了,现在可以通过iterm的选择相应的profile来等我们的服务器了,接下来实现文件上传和下载的功能

需要下载zmoden脚本,但是需要安装 lrzsz脚本地址

brew install lrzsz

下载相应脚本到/usr/local/bin目录下,并修改权限

cd /usr/local/bin
sudo wget https://raw.github.com/mmastrac/iterm2-zmodem/master/iterm2-send-zmodem.sh
sudo wget https://raw.github.com/mmastrac/iterm2-zmodem/master/iterm2-recv-zmodem.sh
sudo chmod 777 /usr/local/bin/iterm2-*

配置我们的上面服务器的profile,profile->选择我们的profile -> Advanced -> Edit

配置如下:

Regular Expression Action Parameters
rz waiting to receive.**B0100 Run Silent Coprocess /usr/local/bin/iterm2-send-zmodem.sh
**B00000000000000 Run Silent Coprocess /usr/local/bin/iterm2-recv-zmodem.sh

接下来在控制台中我们就可以使用rz sz命令啦