杨俊志 张 斌 昝汝涛 刘福祥 张凤亮 薛 兵 赫 鹏
设置打印机的共享状况:
由于Linux操作系统稳定、安全快速、高效的独特优势,使得越来越多的医院局域网开始选用Linux作为服务器操作系统[1-2],但不可否认的是,Windows仍然占据着操作系统的多数。因此,在医院局域网内往往有多种操作系统同时存在,怎样实现局域网内多操作系统(如Linux、Windows各个版本等)之间文件的资源共享,已经是目前很多医院网管和Linux用户普遍关心和期待解决的问题。经过研究、实践以及对实例的阐述,将Linux系统配置成文件服务器,并实现文件资源共享的方法。
在Linux操作系统中,主要是通过Samba和NFS两个软件工具来实现文件资源共享,以Samba为例来分析Linux文件服务器的工作原理。
要使Linux成为文件服务器,首先要安装Samba。Samba可以想象成一个局域网上的文件服务器,它可以为在同一子网中的不同操作系统客户提供文件和打印服务。即Samba服务器可以让Linux实现类似Novell Netware文件服务器提供的功能。Samba的工作原理是让NETBIOS和SMB(Server Message Block,即服务信息模块)这两个协议运行于TCP/IP通信协议之上,并且使用Windows的NETBEUI协议,让Linux可以在网络邻居上被Windows看到并使用。其中最重要的就是SMB协议,这是一个用于不同计算机之间共享打印机、串行口和通讯抽象(如命名管道、邮件插槽等)的协议。SMB协议是一个非常重要的协议,在所有的Microsoft Windows系列操作系统中广泛应用。Samba是SMB服务器在类Unix系统上的实现。它是开放源代码的GPL自由软件。目前Samba可以在几乎所有的Unix变种上运行[3-7]。
在Red Flag Linux Desktop 6.0 SP3操作系统安装时,如果选择了系统默认的快速安装方式,Samba则会自动与Linux同时安装。如果在自选安装模式下选择了Samba,那么同样也会在安装Linux的同时安装Samba;如果没有选择的话,也可以在光盘找到Samba的RPM安装包[8-9],使用RPM安装即可。下面详细叙述Samba的配置、启动和注意事项。
配置Samba也就是对它的配置文件Smb.conf进行相应的设置。Smb.conf关系着Samba服务器的权限设置,以及共享的目录、打印机和机器所属的工作组等各种细节的选项。文件Smb.conf的语法非常明确。文件被分成段,每一段的名字用一个方括号括起来。在每一个段内用“名称=值”的格式来设置参数。最前面加“;”号表示该句为注释[10-12]。整个配置文件中最基本的是3个特殊段。
2.1.1 Global段
配置服务器在整个过程中用到的参数,并为其他段提供缺省值。
其中“workgroup”用来指定机器在网络邻居所处的工作组。默认为“Mygroup”、“hosts allow”用来指定在局域网中哪些机器可以使用Samba服务的描述。一般情况下无须设置,因此最前面用一个“;”开始,表示注释掉;“printcap name”告诉Samba,打印机名称及位置;“load printers=yes”即告诉Samba,允许浏览所有的打印机;“logfile=/ var/log/samba/log.%m”指定日志文件存放地址。
2.1.2 Home段
这个段用来表示允许客户机连接的用户主目录。在smb.conf文件中没有这个目录的特定内容。当发出服务请求时就在smb.conf文件的其他部分寻找这种特定的服务。如果没有发现这种服务,并且提供了homes段时就搜索密码文件去发现用户的主目录。通过分解homes段,Samba使用户主目录作为共享而使用。该段最基本的几个设置如下:
其中“comment”指定客户机在服务器上可以使用的共享;“browseable”则设置Samba在网络浏览表是否显示目录,建议改为browseable=yes;“writable=yes”表示是否具有写权限。
2.1.3 Printers段
设置打印机的共享状况:
建议将browseable=no改为:browseable=yes。
通常情况下在默认的smb.conf文件中已经做了基本的设置,不必修改就已经可以应用在多种情况之中了。
启动Samba服务器的方法有两种:即Standalone方式和Inetd方式。Standalone启动方式占有资源多,反应速度比较快;Inetd启动方式相对较好,但要注意的是,不能同时采用两种方式运行,因为这样可能使得Samba服务不能正常工作。
2.2.1 使用Inetd方式启动
安装Samba时会在/etc/services文件中增加类似的以下几行:
在/etc/inetd.conf文件中也会新增以下几行:
如果想用另一种方式启动,需要在它们前面加上一个注释符号“#”,然后执行inetd命令,使修改生效。
2.2.2 使用Standalone方式启动
要使用这种方式启动,请在/etc/rc.d/rc.local文件中加入以下几行:
经过以上配置后,在局域网中使用Windows系统的客户,当打开网上邻居时就可以发现一个新的工作组“Mygroup”,这时就能非常方便的使用Samba服务,如同Windows主机之间的操作一样,使用“映射网络驱动器”功能,直接将Linux的共享存储资源映射到本地,如同使用本地硬盘一样方便。另外,本地的Linux服务器主机本身也是Mygroup工作组的成员之一,Linux系统之间的资源共享更加方便快捷。我院采用Red Flag Linux Desktop 6.0 SP3建立了局域网的邮件服务器和数据库不同楼宇间的异地备份服务器,通过几年来的应用实践证明,不仅其性能上明显优于Windows操作系统,最重要的是在Windows环境平台病毒泛滥的今天,每当病毒发作的敏感时期,医院局域网络总会危机四伏,由病毒而引发的故障频频发生,不但影响了医院的正常工作,也给医院网管带来很大压力。而共存于同一网络的两个Linux服务器系统,则始终能够安全稳定的运行,无须担心病毒侵扰、系统崩溃等网络灾难事故的发生,因此,Linux系统的服务器已经成为我院局域网实际意义上的“数据安全保护中心”,医院信息系统数据安全有了保障的同时,给医院所带来的间接经济效益和社会效益之大,无法估量。
Red Flag Linux Desktop 6.0 SP3是继SP2后作为红旗Linux桌面6.0的又一升级版本,在系统优化、硬件兼容、国际化语言支持以及界面设计等方面都有了很大的改进,使红旗桌面产品更加人性化,更加便于使用和维护[13-14]。尤其是系统的安全和稳定的性能,特别适合军队医院信息系统信息安全性的要求,使得Linux更加适用于军队医院局域网的服务器操作系统,近年来,在西方一些国家大的行业(比如美日的金融系统)系统已经开始采用Linux作为数据中心服务器[15]。相信不久的将来,Linux在我军信息化建设中也会占有一席之地,发挥重要作用。
[1]杨俊志,张斌.Red Hat Linux V6.1环境下RAID技术的运用与实现[J].医疗卫生装备,2011,32(5):58-61.
[2]杨俊志,张斌.Linux系统下的数据备份策略设计与实现[J].医疗卫生装备,2011,32(10):252-254.
[3]吴清秀,欧军.基于Linux系统的软件技术应用研究[J].电脑知识与技术,2011,7(18):4362-4363.
[4]周强,李善平.基于Linux的用户态文件系统的设计[J].计算机应用与软件,2007,24(10):87-89.
[5]戴浩,刘嘉勇,方勇.Linux文件加/解密过滤驱动的设计与实现[J].计算机工程,2009,35(9):144-146.
[6]黄晓波,殷克功.分层文件系统在嵌入式Linux中的实现[J].计算机与数字工程,2010,38(11):97-99.
[7]吴峰光.L i n u x内核的文件预读[J].软件世界,2007(21):86-89.
[8]张宁,刘金刚.Linux文件系统安全可靠机制的研究与实现[J].微计算机信息,2010,26(12):82-84.
[9]马学梅.基于linux的中小型企业网络服务器配置[J].电脑知识与技术,2008,4(36):66-67.
[10]王健,郑伟,何玲南.基于Linux的通用多线程下载工具设计实现[J].微计算机信息,2010,26(14):75-76.
[11]龚娟.浅谈虚拟机下Samba服务器的架设[J].电脑知识与技术,2009,5(30):8552-8554.
[12]所光,易晓东,廖湘科.基于Linux的文件系统日志服务的研究[J].计算机工程与科学,2006,28(12):38-40.
[13]沙伯海,蔡海滨.基于Linux下网络服务安全可靠性研究[J].计算机工程与设计,2005,26(3):738-739.
[14]陈爱萍.多操作系统互联并资源共享的实现[J].江汉大学学报(自然科学版),2005,33(1):62-64.
[15]彭土有.Linux集群系统性能的实时监测及其可视化研究[J].计算机技术与发展,2010,20(11):33-41.