linux下使用sftp传输文件
zabbix appliance使用的是suse,里边好多配置都没有。不能使用ftp,也没有rz、sz。而且我想安装个lrzsz,发现连cc、gcc都没装。。。
但可以使用ssh和sftp。我在另一台电脑上装了“Serv-U”ftp服务器。
用ssh登录服务器的命令为:
ssh
“sshuser”是服务器上添加的用户名,“-p”是端口号,如果使用默认端口则不用写(下面的sftp命令也是)。
回车后,如果是第一次登录,会提示你一条认证信息,你键入yes即可,接着输入sshuser的密码登录即可;
用sftp登录服务器的命令为:
>sftp -oPort=2222 sshuser@x.x.x.x.
回车后,输入服务器sshuser的密码登录,然后会显示一个sftp>的环境,这个时候,键入help你会看到所有命令的帮助,跟ftp命令行工具非常类似,比如get,put等等。
但我用ssh登不上去。提示“PTY allocation request failed on channel 0”。网上找了写解决方案貌似都不管用。大抵是要卸掉“/etc/pts”,然后再加载。但我的pts无法umount。
不过sftp命令能正常使用,而且能正常传输文件。
成功连接sftp后,用put命令批量传输文件的办法:
比如你的/root/abc/目录下的所有文件你都想传到server端的某个文件夹下,你需要先在Serv-U上的根目录下先创建这个文件夹(这个是必需的),比如叫test。然后用
put /root/abc/* /test
就把abc目录下的所有文件都上传到Serv-U上的test文件夹里了。