一.概述
本文讲述了在Linux主机与windows主机之间如何互传文件的方法。因为有的时候,linux主机中的一些文件可能会在windows环境下用到。例如在linux主机中抓了一些图片,想把它们传到windows主机上以作为word文档的插图。又或者从Windows主机上网,下载了一些linux的软件包,想传到linux主机中安装。在这些情况下,都需要一种方法来进行两者之间的互通。
本文采用ftp方式来传送文件,软件采用Serv-U。在widows主机下安装Serv-U,使其成为ftp服务器,在linux主机下通过ftp命令来上传和下载文件。经过试验,可以很好的满足需求。
二.实验环境
网络拓扑如下:
图1
软件环境:
A机:
操作系统:windows2000, IP: 10.18.34.115.
B机:
操作系统:Linux Red Hat 9.0, IP:10.18.34.251.
三.在windows下安装Serv-U
1. Serv-U的安装
执行setup.exe, 全部选默认选项即可。
2. Serv-U的常规设置
在安装完成后,会弹出配置向导对话框,这里按要求填入相应信息,即可配置成功一个ftp服务器。这里A机的ip地址是10.18.34.115.按照安装向导做如下操作:
1) IP address(IP地址):输入“10.18.34.115”。(如果使用动态的或无合法的IP地址则此项为空)。
2) Domain name(域名):输入域名,例如“RoseRed”(此处随意)。
3) Install as system server(安装成一个系统服务器吗):选“Yes”。
4) Allow anonymous access(接受匿名登录吗):此处可根据自己需要选择,比如选“Yes”。
5) anonymous home directory(匿名主目录):此处可输入(或选择)一个供匿名用户登录的主目录。
6) Lock anonymous users in to their home directory(将用户锁定在刚才选定的主目录中吗):即是否将上步的主目录设为用户的根目录;一般选“Yes”。
7) Create named account(建立其他帐号吗):此处询问是否建立普通登录用户帐号;一般选“Yes”。
8) Account login name(用户登录名):普通用户帐号名,比如输入“yint”。
9) Password(密码):设定用户密码。由于此处是用明文(而不是*)显示所输入的密码,因此只输一次。
10) Home directory(主目录):输入(或选择)此用户的主目录,如“E:”(本文将对E:上的文件进行操作).
11) Lock anonymous users in to their home directory(将用户锁定在主目录中吗):选“Yes”。
12) Account admin privilege(帐号管理特权):一般使用它的默认值“No privilege”(普通帐号)。
13) 最后选“Finish”(结束)即完成设置,如下图:
图2
从上图中可以看到,现在已经建立好了一个FTP服务器,服务器地址为“RoseRed”,其下有两个用户,一个是匿名用户“Anonymous”,其密码为空;一个是普通用户“yint”,其密码为在向导中输入的内容。
3. Serv-U的权限设置
比如在左边的面板中选中“yint”用户,则在右边的面板中出现如下图的设置窗口。选“Dir Access”(目录存取权限)标签项,即可设置此用户在它的主目录(此处为“E:”)下是否对文件拥有“Read”(读)、Write(写)、“Append”(写和添加)、“Delete”(删除)、“Execute”(执行)权限;是否对目录拥有“List”(显示文件和目录的列表)、“Create”(建立新目录)和“Remove”(修改目录,包括删除,移动,更名)权限等等。
可根据需要进行设置,一般将Read, Write 选中。
图3
四、在linux下使用ftp命令
1. 连接ftp服务器
格式:ftp [hostname| ip-address]
a)在linux命令行下输入:ftp 10.18.34.115
b)服务器询问你用户名和口令,分别输入yint和相应密码,待认证通过即可。
2. 下载文件
下载文件通常用get和mget这两条命令。
a) get
格式:get [remote-file] [local-file]
将文件从远端主机中传送至本地主机中.
如要获取服务器上E:
ose1.bmp,则
ftp> get /rose/1.bmp 1.bmp (回车)
b) mget
格式:mget [remote-files]
从远端主机接收一批文件至本地主机.
如要获取服务器上E:
ose下的所有文件,则
ftp> cd /rose
ftp> mget *.* (回车)
注意:文件都下载到了linux主机的当前目录下。比如,在
/root/yint下运行的ftp命令,则文件都下载到了/root/yint下。
3.上传文件
a) put
格式:put local-file [remote-file]
将本地一个文件传送至远端主机中.
如要把本地的1.bmp传送到远端主机E:
ose,并改名为333.bmp
ftp> put 1.bmp /rose/333.bmp (回车)
b) mput
格式:mput local-files
将本地主机中一批文件传送至远端主机.
如要把本地当前目录下所有bmp文件上传到服务器E:
ose 下
ftp> cd /rose (回车)
ftp> mput *.bmp
(回车)
注意:上传文件都来自于主机的当前目录下。比如,在
/root/yint下运行的ftp命令,则只有在/root/yint下的文件linux才会上传到服务器E:
ose 下。
4. 断开连接
bye:中断与服务器的连接。
ftp> bye (回车)