Use SFTP in Linux (转)


From http://www.cnblogs.com/chen1987lei/archive/2010/11/26/1888391.html

sftp 是一个交互式文件传输程式。它类似于 ftp, 但它进行加密传输,比FTP有更高的安全性。下边就简单介绍一下如何远程连接主机,进行文件的上传和下载,以及一些相关操作。

举例,如远程主机的 IP 是 202.206.64.33或者是域名www.hebust.edu.cn,用户名是  fyt ,在命令行模式下:sftp fyt@202.206.64.33或者  fyt@www.hebust.edu.cn。回车提示输入密码。进入提示符

sftp>

如果登陆远程机器不是为了上传下载文件,而是要修改远程主机上的某些文件。可以

ssh  fyt@202.206.64.33 (其实sftp就是ssh 的一个程式。)

如果想通过密钥文件登录,可以这样:

sftp -i /home/Downloads/1.key username@hostname 如果提示

Permissions 0640 for '/home/Downloads/1.key' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.

则需要赋予600权限 chmod 600 /home/Downloads/1.key

sftp> get /var/www/index.php  /home/
这条语句将从远程主机的  /var/www//目录下将 index.php 下载到本地  /home/目录下。

sftp> put /home/downloads/Linuxgl.pdf /var/www/
这条语句将把本地 /home/downloads/目录下的 linuxgl.pdf文件上传至远程主机/var/www/ 目录下。注意这里用的是绝对路径

你如果不知道远程主机的目录是什么样, pwd命令可以帮您查询远程主机的当前路径。查询本机当前工作目录 lpwd.

改变路径可以用cd ,改变本机路径可以用 lcd;

ls rm rmdir mkdir 这些命令都可以使用。同理调用本机都是加 l , 即 lls lrm.

要离开sftp,用exit 或quit、 bye 均可。详细情况可以查阅 man  sftp.

如果觉得在命令行模式下不太方便,可以 sudo apt-get install gftp。在图形界面下操作就简便多了。