PC版
搜索导航
论文网 > 教育论文 > 高等教育论文

高校实验室中基于Linux的两种文件资源共享方式及实现

  0 引言
   在高校实验室机房中,通常的文件资源共享方式是基于Windows平台的,典型的组合是:服务器端采用Windows server2003操作系统,客户端采用WindowsXP,通过网上邻居或浏览器(http方式)访问。其存在的缺点是:(1)当客户端集中访问时,服务器端负荷激增,导致短时间客户端无法访问;(2)Windows的安全问题不容忽视;(3)由于在高校中,每个院系都有机房实验室,且数量众多,因此对于购买Windows操作系统的费用是一个不小的开支。针对这些缺点,本文提出采用基于Linux操作系统,用samba文件共享和Wu-ftpd资源访问两种方式来解决高校机房中的文件资源共享问题。
  1 Linux概述
   Linux操作系统核心最早是由芬兰的Linus Torvalds 1991年8月在芬兰赫尔辛基大学上学时发布的,后来经过众多世界顶尖的软件工程师的不断修改和完善,Linux得以在全球普及开来,在服务器领域及个人桌面版得到越来越多的应用,在嵌入式开发方面更是具有其它操作系统无可比拟的优势,并以每年100%的用户递增数量显示了Linux强大的力量。
   Linux是一套免费的32位多人多工的操作系统,运行方式同UNIX系统很像,但Linux系统的稳定性、多功能力与网络功能已是许多商业操作系统无法比拟的,Linux还有一项最大的特色在于源代码完全公开,在符合GNU GPL(General Public License)的原则下,任何人皆可自由取得、散布、甚至修改源代码。
   与其它操作系统相比,Linux还具有以下特色:
   ①采用阶层式目录结构,文件归类清楚、容易管理
   ②支持多种文件系统,如Ext2FS,ISOFS以及Windows的文件系统FAT16,FAT32,NTFS等
   ③具有可移植性,系统核心只有小于10%的源代码采用汇编语言编写,其余均是采用C语言编写,因此具备高度移植性
   ④可与其它的操作系统如Windows98/2000/xp等并存于同一台计算机上
  2 基于Linux的Samba文件共享及实现
   要使用samba文件共享,首先必须安装samba服务器软件[1][2]。
  2.1 samba服务器软件安装
   在Linux中,检查samba服务器是否安装,可以通过下列命令进行:
   # rpm -q samba
   # rpm -q samba-common
   # rpm -q samba-client
   根据结果,在安装光盘里找到没有安装的软件包,开始安装。
   # rpm -ivh samba*.rpm
  2.2 Samba服务器主要组件介绍
   为了更好地使用samba文件共享,对samba服务器主要组件作简单介绍:
   1)nmbd: Netbios 名称服务器,提供Netbios名称服务和浏览支持,帮助SMB客户定位服务器;
   2)smbclient:SMB客户程序,用来存取SMB服务器上的共享资源;
   3)testprns:测试服务器上打印机访问的程序;
   4)testparm:测试Samba配置文件的正确性的工具;
   5)smb.conf:samba的配置文件;
   6)smbstatus:这个工具可以列出当前smbd服务器上的连接;
   7)make_smbcodepage:这个工具用来生成文件系统的代码页;
   8)smbpasswd:这个工具用来设定用户密码;
   9)swat: samba的Web管理工具;
  2.3 配置samba服务器
   samba安装完后,只要把/etc/smb.conf这个文件里的Workgroup=XXXXX这个参数该为机房所在的工作组名,启动samba就可以运行了,但这根本不能符合我们的需要。必须对smb.conf文件进行修改来配置samba。Samba的配置方式很多,可以采用手工编辑这个文件,也可以通过linuxconf来配置,而且samba本身带了一个基于web的管理工具swat,使用901端口,安装完samba后,它会在机器的/etc/services的尾部加上一条:swat 901/tcp #Add swat service used via inetd 在inetd.conf里填上:
   swat stream tcp nowait.400 root /usr/sbin/swat swat
   在浏览器的地址栏里键入 http://youhostname:901/ 就可以进入swat对samba进行管理。本文介绍如何对smb.conf文件进行配置,以使samba成为一个符合需求的文件服务器。
   下面是一小段的smb.conf配置代码
   [global]
   workgroup = WORKGROUP
   server string = Samba Server
   hosts allow = 192.168.1. 192.168.2. 127.
   load printers = no
   printcap name = /etc/printcap
   guest account = guest
   log file = /usr/local/samba/var/log.%m
   max log size = 50
   security = user
   socket options = TCP_NODELAY
   [homes]
   comment = Home Directories
   browseable = yes
   writable = yes
   [printers]
   comment = All Printers
   path = /usr/spool/samba
   browseable = no
   guest ok = no
   writable = no
   printable = yes
   printer driver = Epson LQ-1600K
   [tmp]
   comment = Temporary file
   path = /tmp
   read only = no
   public = yes
   [public]
   comment = Public Zone
   path = /home/samba
   public = yes
   writable = yes
  2.4 使用samba文件共享
   Samba服务器配置完毕之后,接下来就可以使用samba,使用之前需执行以下步骤:
   1)创建samba用户
   #touch /etc/samba/smbpasswd
   #smbpasswd -a username(linux上已经存在的用户名)
   2)测试配置文件
   #nmblookup -B samba服务器名
   假如没有回传的话,而且是用inetd启动Samba的话,则请检查inetd.conf中关于nmbd的设置是否正确。如果使用standalone启动的话,可能是在smbd或nmbd的地方加错参数了。
   3)启动samba服务
   #service smb restart
   4)linux和winXP之间的访问
   A、查看samba服务器的共享内容。
   # smbclient -L sambaname -N
   B、在另一台linux机器上访问samba服务。
   # smbclient //192.68.0.1/homes -U user1%user1
   C、在linux机器上访问win2k/winxp
   # smbclient //192.168.0.2/C -U win2k的当前登陆用户名
   提示输入密码,
   smb:>help(帮助),ls(查看)smbclient几乎就是ftp的变相,你可以使用dir看文件、get读取文件、put上传文件..,跟ftp没什么两样。
  2.5 基于Linux的Wu-Ftp文件共享及实现
   在文件共享连接时,除了使用http的方式连接外,也可以另外提供ftp服务供用户直接连线下载。事实上,ftp是个存在已久的服务,它的设计是用来传输两台电脑之间的数据,以避免太多的远端执行。如果要传送的文件比较大时,若以http的方式连线传输会占用一些网站的资源(例如可连线的人数),这时就要用到ftp了。ftp是一个以TCP/IP为基础的应用程序,所以一般的ftp服务程序都会以内嵌于inetd的执行方式。
   ftp分为两个部分,一个是服务器端的程序,一个是用户端的。在Unix上的ftp服务程序非常多,不同的操作系统所内建的版本也都不一样,其中最常用的最受欢迎的的是wu-ftpd[3][4][5],它是一个以效率以及稳定性为考量的程序。
   1)安装WU-FTPD
   #rpm -ivh wu-ftpd*.rpm
   #tar zxvf wu-ftpd*.tar.gz
   #cd wu-ftp*
   #./configure
   #make
   #make install
   如果没有指定安装目录,那么其执行文件默认会分别安装在/usr/bin和/usr/sbin 中。
   2)启动WU-FTPD
   cd 到/etc/xinetd.d/目录
   打开wu-ftpd文件,将其中
   的disable = yes 改为disable = no。
   然后重新启动xinetd服务:
   #/etc/rc.d/init.d/xinetd restart
   可以通过以下语句确认FTP是否启动
   #telnet localhost 21
   Trying 127.0.0.1
   connected to rh
   escape character is '^]',
   220 rh.china.com FTP server (version wu-2.6.1) mon jul 24 01:59:25 EDT 2000)ready.
   ^] //按ctrl+]号中断。
   telnet>q //按Q键退出。
   3)匿名FTP的设置与组织
   /etc/ftpaccess //WU-FTPD 最重要的设定文件
   /etc/ftpconversions //设置FTP匿名用户传输文件时,可对文件做tar,压缩,解压缩等处理。
   /etc/ftpgroups //限定哪些用户组不能登陆到FTP服务器。
   /etc/ftphosts //限定哪些网络地址的机器不能连接到FTP服务器
   /etc/ftpusers //限定谁不能登陆FTP服务器。
   WU-FTPD的可执行程序:
   /usr/bin/ftpd FTP服务器程序
   /usr/bin/ftpcount //查询目前各类的上线用户人数。
   /usr/bin/ftprestart //重新激活FTP
   /usr/bin/ftpshut //产生shutmsg文件,并暂停FTP服务。
   /usr/bin/ftpwho //查询联机情况
   /usr/bin/ckconfig 检查FTP服务器的设置是否正确
   系统安装了wu-ftp后,会建立一个特殊的用户ftp,并在/home目录下建立了一个ftpd目录,当用户以匿名登录上来时,将会自动定位于这个目录下。在这个目录下一般会建立几个子目录。
   /home/ftpd/bin 存放一些供FTP用户使用的可执行文件
   /home/ftpd/etc 存放一些供FTP用户使用的配置文件
   /home/ftpd/pub 存放供下载的信息
   /home/ftpd/incoming 存放供上载信息的空间
   wu-ftp运行起来之后,可以通过/etc/inetd.conf文件来查看和修改。
  3 结束语
   高校机房中的文件共享与访问一直以来都是机房管理中的 难题之一,本文首先对Linux操作系统的优势进行了介绍,用基于Linux操作系统,分别用samba文件共享和wu-ftpd文件共享两种不同方式进行介绍并具体实现。实践证明它们能极大地促进高校机房中文件资源的共享与访问,大大地促进机房的管理和资料的共享。
  

相关论文

资源共享实验室基于高校实验方式
基于民营企业文化建设的问题与对策思
浅谈高校美术教学与现代艺术的关系
知识管理与高校图书馆服务创新的构想
高校图书馆管理人员素质提升影响因素
基于案例的行政单位内部控制建设研究
试论高校图书馆动态化管理建设
浅谈高校思政教师法学素养培育的三维
基于现金流量税重构国际税收规则的理
高校钢琴教育的多元化发展构想
高校商务英语教学中的思政融入构想