若想在不同的操作系统之间拷贝文件,则需要一种共同的协议来通信。而不是像windows使用smb协议,mac使用afp协议。
ftp是一种选择,但是由于ftp一种的无加密的协议,所以有些人开始放弃它,而转向了相对安全的协议,ssh就是一种不错的选择。
ssh是为了安全的数据传输而设计的一种加密的网络协议。
本篇文章不介绍ssh协议,只说明怎么使用它,如果你想了解ssh协议本身,请参看:
http://en.wikipedia.org/wiki/Secure_Shell
要使用这种协议就需要一个服务端一个客户端。
服务端
- Windows
windows默认是没有这个服务端的,因此如果想使用,需要自己安装。推荐一款免费的,并且很稳定的服务器 - freeSSHd
http://www.freesshd.com
因为提供的是windows的安装包,你可以安装为服务或者普通的程序。使用较简单。
- Linux
linux默认是安装了这个协议的,如果没有安装的话,使用下面的命令安装:
如果是debian/ubuntu
sudo apt-get install sshd
如果是redhat/fedora/centos
sudo yum install sshd
之后启动这个服务:
sudo service sshd start
- Mac Os X
Mac Os X Lion是自带这个服务的,如果想启动这个服务,按照下面的步骤即可:
1. command + space打开spotlight(搜索)
2. 输入system preference(打开系统偏好设置)
3. 打开sharing(打开共享)
4. 启用Remote Login(远程登录),勾选上远程登录则为启动。
5. 打开终端,测试下面的命令,username是你当前的用户名,如果有空格就使用单引号。
ssh username@localhost
接下来要你输入的密码,密码就是你该用户的登陆密码。
如果成功,表示你的sshd服务已经启动。
客户端
客户端我们使用pscp和scp。
- Windows
windows默认是没有安装pscp和scp的,安装PuTTy,下载地址:
http://www.putty.org
就一个可执行程序,直接双击执行。
使用putty登陆到远程机器后,就可以使用pscp来拷贝文件了,从本机拷贝到远程机,或者反过来。
如果pscp不可用就使用下面的地址下载:
http://the.earth.li/~sgtatham/putty/latest/x86/pscp.exe
使用的命令如下:
从远程机器传文件到本机:
pscp username@hostname:remotefile localdirectory
从本地传文件到远程机器
pscp localfile username@hostname:remotefile
这部分你可以参看:
http://blog.csdn.net/huangxiansheng1980/article/details/8007895
- Linux
默认是安装了scp客户端的,命令格式
scp username@hostname:remotefile localdirectory
- Mac Os X
默认是安装了scp客户端的,命令格式
scp username@hostname:remotefile localdirectory
例如:scp [email protected]:/home/usr/mm.log Desktop/
(将192.147.10.245Linux操作系统下home目录下的usr目录下的mm.log文件拷贝到Mac的桌面上)
=====================================
xh-de-mac:~ xuha$ scp [email protected]:/home/usr/mm.log Desktop/
[email protected]'s password:
mm.log 100% 11 0.0KB/s 00:00
OK!
本文参考:http://blog.csdn.net/huangxiansheng1980/article/details/8285100