在平时的开发过程中经常都会涉及到linux和linux之间、linux和windows之间的文件传输或者共享的情况(最好关闭防火墙),现根据平时使用的情况总结如下:
一、linux和windows文件共享
1. 当linux为虚拟机时
比如安装在VMware下,可以直接利用其虚拟工具VMware Tools设置一个windows和linux之间的共享目录(具体方法根据不同的linux参照网上资料),因为该共享目录和linux系统不在同一分区,用来编译系统相关源码时最好别放在该分区。
2. 配置samba服务器
在linux中配置samba服务器,这样可以在windows的运行窗口输入\\samba服务器ip即可以访问到linux共享出来的目录;可以根据情况设置读写权限。提供一篇在fedora15下配置samba服务器的文章
3. 使用思科的TFTP服务器
在windows中下载一个思科TFTP服务器(百度即可),然后设置好TFTP服务器根目录之后,即可供其他任何地方的TFTP客户端访问下载;现在不少开发板都安装有TFTP的客户端命令,使用方法如下:
#tftp –g –r 文件名 TFTP服务器ip
-g表示要get文件,-r表示从remote处获取文件;
还有一种tftp服务器使用方法:
#tftp 思科服务器ip
>get 文件名
>q #表示退出
TFTP方式的不足之处就是无法传输目录。
二、linux和linux之间的(samba、tftp等方式除外)
1. mount挂载方式
将目标linux的指定目录挂载到本机linux的指定目录下,前提是能够互相ping通,防火
墙关闭,开启了nfs服务器,指定了nfs目录(具体设置见http://blog.csdn.net/bull_liu/article/details/6514744):
#mount -t nfs -o nolock 192.168.0.94:/linux-test /mnt
2. 使用scp命令
现在的linux下普遍都有该命令使用方法如下(要输入远端系统用户的密码,如果有):
获取文件:
#scp root@192.168.1.101:/test/hello.c /mnt/复制单个文件
#scp –r [email protected]:/test/mnt复制目录
发送文件
#scp /test/hello.c root@192.168.1.101/mnt/复制单个文件
#scp –r /test/ root @192.168.1.101/mnt/