目录
scp
scp用于在两个linux系统之间交换文件。基本上,所有linux系统都支持 scp命令,这在我的前一篇博客《linux系统之间利用scp 命令传输文件》中已经阐述过了。但是,scp指令是基于OpenSSH的。OpenSSH基于C/S(Client/Server,即客户-服务器)架构。执行scp指令的一方,应该是OpenSSH的客户,另一方是OpenSSH的服务器。所以,如下的指令可以正确运行:
非OpenSSH服务端$scp -r 文件名 对方用户名@OpenSSH服务端IP:对方保存文件的路径
而反过来不行:
OpenSSH服务端$scp -r 待发送文件 对方用户名@非OpenSSH服务端IP:文件保存路径
目前大多数linux版本,操作系统启动之后都已经启动了OpenSSH的服务端程序。但是,一些老的版本不一定具备OpenSSH服务器功能。采用以下指令检测服务端是否启动:
service sshd status
只有接收文件的一方启动了sshd后,scp指令才能发挥作用。
WinSCP Putty
以上2种工具功能类似。都是将windows一边的工具连接到linux一侧的OpenSSH服务端。因此,与前面针对scp的描述类似,linux一侧的OpenSSH必须打开。
FileZilla-Server
假如linux一侧没有安装OpenSSH-server,那么我们可以在windows一侧利用FileZilla-Server建立一个ftp服务器,同样可以实现与linux之间的文件传递。注意,filezilla-server 不支持sftp,只支持ftp和ftps.我们可以利用linux自带的ftp命令来实现与filezilla-server的文件交换。
建立FileZilla-Server
1 下载并安装FileZilla-Server
2 双击桌面的FileZilla-Server图标,启动程序
3 第一次启动后,界面会要求你输入服务器信息。按照下图输入:
4 点击菜单栏的Edit>user选项:
5 在弹出的窗口中点击“ADD”按钮(蓝色圆圈),然后再在新窗口里输入用户名(红色圆圈)
6 然后点击左侧的“Shared Folders”文件夹(紫色圆圈),再点击"ADD"按钮(红色圆圈),在浏览文件夹窗口(蓝色圆圈)里面选择你将要开放给客户端的文件夹。然后设定权限(绿色圆圈)。最后点击OK按钮(黑色圆圈)
7 关闭windows一侧的防火墙,否则linux无法连过来。
与linux交换文件
1在linux的命令行输入
~$ftp 对方IP
然后输入filezilla启动时设置的用户名 和 密码
2连接成功后,在linux一端可以用ls指令观察filezilla的共享文件夹内的内容。
3利用get 命令可以从filezilla一侧获取文件
4利用put 命令可以将本方的文件传到filezilla的共享文件夹内
结果: