您好,欢迎来到星星旅游。
搜索
您的当前位置:首页安装Samba

安装Samba

来源:星星旅游
安装Samba

S a m b a 这套免费的软件里面包含了Samba Server 和Samba Client ,所以装好S a m b a 后,不只是可以提供资源给别人,同样也可以用Samba Client 去分享其他Samba Server 或是Wi n d o w s 9 5 / N T 网络邻居上的机器共享出来的资源。 基本上,S a m b a 是为U N I X 系统所发展的,但目前也有N e t Wa r e 、Windows NT 、O S / 2 和V M S 版的S a m b a 了,如果想尝试使用别的操作系统的S a m b a 也是非常容易的一件事!而在使用Red Hat Linux 安装S a m b a 之前,建议k e r n e l 最好是用2 . 2 . 1 0 版的,因为它针对S a m b a 的b u g 做了些修正,在使用Samba client 打印文件名时会稳定一些。在Red Hat Linux 下安装S a m b a 是最简单不过的了,只要几个步骤就可以解决了。目前最新版的S a m b a 版本为2 . 0 . 3 p 8 ,表示2 . 0 . 3 版p a t c h 第8 次。在Red Hat Linux 发行版所附光盘中,即捆绑有S a m b a - 2 . 0 . 3 - 8 . i 3 8 6 . r p m 软件,你可以直接从光盘上安装。当然了,你也可以从其他渠道(比如I n t e r n e t 上S a m b a 的主页:h t t p :/ / w w w. a p a c h e . o rg 上下载A p a c h e 的最新版本)获得S a m b a 软件,如果是S a m b a 的源程序代码压缩文件,你首先得将它进行解压缩,然后进行编译才可以使用。

以S a m b a - 1 . 9 . 1 7 p 2 . t a r. g z 文件为例,讲一下编译的基本步骤:(如果使用Red Hat Linux 4.1光盘中捆绑的S a m b a - 2 . 0 . 3 - 8 . i 3 8 6 . r p m 软件,因为它是R P M 类型文件,无须编译,可直接跳过这一步骤)。

我们现在就开始安装S a m b a 。请依照下列步骤完成:

1) 解压缩文件。

取得s a m b a - 1 .9 .1 7 p 2 . t a r. g z 文件,然后随便找个目录将它解压缩,包文件解压缩后,直接会产生目录s a m b a - 1 .9 .1 7 p 2 /: # tar zxvf samba-1 .9 .1 7 p 2 . t a r . g z

阅读安装说明文件,获取帮助,先看看R E A D M E ,再到d o c s /下看看其他文件和执行: # nroff -man smbd.8|less # nroff -man nmbd.8|less 相信会得到非常多的帮助。

2) 进入s o u r c e /,编辑M a k e f i l e 文件。

先看一下R E A D M E 、I N S TA L L 之类的文件,对于安装软件会有很大的帮助。因为S a m b a可适用于多种U N I X 操作系统,所以M a k e f i l e 里面定义了非常多的U N I X 系统,我们只要找出定义L i n u x 的部份,然后将#删除就可以了。而这一版S a m b a 的M a k e f i l e 里面对L i n u x 有五种定义情况,请选择一种。基于安全性考虑,建议用第三种方式包含有shadow passward 与q u o t a 来编译S a m b a :Use this for Linux with shadow passwords

先从M a k e f i l e 中找到上面这一段字。假如系统有安装shadow password ,就将M a k e f i l e 里面这一段的 # FLAGSM = -DLINUX -DSHADOW_PWD -DFAST_SHARE_MODES # LIBSM = -lshadow

这两行的#号删除,然后储存M a k e f i l e 进行第3 步骤。 Use this for Linux without shadow passwords

假如你的系统没有安装shadow password ,就将M a k e f i l e 里面这一段的 # FLAGSM = -DLINUX -DAXPROC -DFAST_SHARE_MODES # FLAGSM = -DLINUX -DFAST_SHARE_MODES # LIBSM =

这三行的#号删除,然后储存M a k e f i l e 进行第3 步骤。 Use this for Linux with shadow passwords and quota

假如系统有安装shadow password 和q u o t a 的话,就将M a k e f i l e 里面这一段

# FLAGSM = -O3 -m486 - DLINUX-DSHADOW_PWD - DQUOTAS -DFAST_ SHARE_MODES # LIBSM = -lshadow

这两行的#号删除,将M a k e f i l e 储存起来后,并直接在s o u r c e /这个目录执行: ln -s /usr/include/linux/quota.h /usr/include/sys/quota.h 或者ln -sf /usr/src/quota-1.51 quota

如果/ u s r / s r c /目录下没有q u o t a - 1 . 5 1 ,可以到光盘的q u o t a /目录下取得q u o t a - 1 . 5 1 . t a r. g z ,然后将它解开再l i n k 即可。多做这两个步骤的原因是因为要包含q u o t a ,所以编译时需要用到q u o t a 的s o u r c e 。Use this for Linux with quota and glibc2

g l i b c 2 是G N U 新开发出的C Library ,所以若有使用g l i b c 2 与q u o t a ,请将下面选项的#号删除: # FLAGSM = -DLINUX -DQUOTAS -DNO_ASMSIGNALH -DGLIBC2 -DFAST_SHARE_MODES # LIBSM = -L/lib/libc5-compat-lcrypt

Use this for Linux with glibc2(1ibc6)

只有使用g l i b c 2 的人,请将下面选项的#删除:

# F L A G S M = -D L I N U X -D N E T G R O U P -D S H A D O W _P W D -D A L L O W _C H A N G E _P A S S W O R D -DFAST_SHARE_MODES = 1 -DNO_ASMSIGNALH_DGLIBC2 # LIBSM = -lnsl -lcrypt

3) 在s o u r c e /执行\"m a k e \"

m a k e 成功后会得到好几个可执行文件,但我们执行Samba Server 或c l i e n t 最需要的应是\"s m b d \"、\"n m b d \"这两个S a m b a 的守护进程和\"s m b c l i e n t \"这个S a m b a 的客户进程的执行文件并生成。接着执行\"make install \",会将S a m b a 的所有东西安装到/ u s r / l o c a l / s a m b a /这个目录,

就完成安装s a m b a 了。若以前装过S a m b a ,可以执行\"make revert \"将旧的版本删除并安装新版本的S a m b a 。 # make

# make install(or make revert)

做完此3 个步骤就完成编译h t t p d 了。

以上只是编译S a m b a 源代码的一般步骤,在RedhatLinux 中,根本不必如此麻烦,可以直接使用RedhatLinux 光盘中捆绑的S a m b a - 2 . 0 . 3 - 8 . i 3 8 6 . r p m 软件,因为它是R P M 类型文件,无须编译即可直接安装。 首先将光盘放入C D R O M 中,可以执行 $ mount $ cd /mnt/cdrom/

确认C D R O M 已经M o u n t 上,这时可以从光盘的/ R e d h a t L i n u x / R P M S /下取得S a m b a - 2 . 0 . 3 -8. i 3 8 6 . r p m 这个r p m 软件,然后用R P M 将它解压缩进行安装,R P M 这个安装软件可以将新软件的source code 重新整理包装成另外一种s o u r c e 或b i n a r y 的文件型式( . r p m ),这样一来可以免去安装软件时编译发生错误所产生的不良后果。( R P M 软件的详细介绍在本章最后一节。)执行命令如下: $ rpm -ivh Samba-2.0.3-8.i386.rpm

S a m b a # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

可以看出S a m b a 的软件名称以及它的安装过程,等到#字符跑完,就是软件安装完成了。安装完成后会自动在/ e t c /这个目录下放置有产生S a m b a 的s a m b a . c o n f 配置文件,在/ v a r / l o g / s a m b a /下面放置l o g . n m b 文件,下面

我们将详细谈如何进行设置。

设置Samba 的配置文件

S a m b a 的配置文件s m b . c o n f 关系着Samba Server 开放的权限、目录、打印机和机器所属的组,所以它对Samba Server 非常重要。在使用RedhatLinux 光盘自带的s m a b a 压缩文件s a m b a -2. 0 . 3 - 8 . i 3 8 6 . r p m 进行解压后,在e x a m p l e / s i m p l e /目录下就有一个s m b . c o n f 的范例,请将它复制到/ u s r / l o c a l / s a m b a / 1 i b /这个S a m b a 预设读取s m b .c o n f 的目录,另外/ e t c /下有一个s m b . c o n f .d e f a u l t ,这是完整的s m b .c o n f 说明使用文件,也一并把它复制到/ u s r / l o c a l / s a m b a / 1 i b /。接着我们开始修改s m b .c o n f 。为安全起见,我们首先还是把/etc / smb .c o n f 文件复制成s m b .c o n f o l d ,s m b .c o n f 文件,其内容说明如下:

s m b . c o n f 范例说明:打开s m b .c o n f 文件,首先是如下一段说明文字,建议你在明白设置的含义后进行修改。这是S a m b a S e r v e r- - - s m b d 的设置文件;请特别注意,s m b .c o n f 文件把用分号\";\"m a r k 起来的叙述当作注解。 # This is the main Samba configuration file. You should read the # smb.conf(5) manual page in order to understand the options listed # here. Samba has a huge number of configurable options (perhaps too # many!) most of which are not shown in this example #

# Any line which starts with a ; (semi-colon) or a # (hash) # is a comment and is ignored. In this example we will use a # # for commentry and a ; for parts of the config file that you # may wish to enable #

下面的w o r k g r o u p 这一行用来指定你的机器在网络邻居上所属的组名称。笔者定义为q c 。如果不指定,则内置的组名称为:\"M Y G R O U P \"

workgroup = qc下面的h o s t s a l l o w 这一行是设置哪一些领域的机器可以访问你的Samba Server ;若没有设置,则内置任何机器都可以访问你的S a m b a ;这里是设置192.168.1. 192.168.2. 127.领域的机器才可以访问S a m b a S e r v e r 。 hosts allow = 202.204.. 202.204.. 120.

下面的h o s t s a l l o w 这一行是定义如果你想使用自动调用的打印机而不是当需要时自己设置。 printcap name = /etc/printcap

load printers = yes

下面的config file 这一行是设置,只要加上下面这一行,不用重新开机,就可让修改s m b . c o n f 后马上生效。不过对Wo r k g r o u p 的定义无效。config file = /etc/smb.conf

下面是S a m a b S e r v e r 的一般化设置,设置打印机(须配合;/ e t c / p r i n t c a p 设置),使用者帐号为g u e s t ,将log file 文件(记录文件)设置放在/ v a r / l o g / s a m b a / l o g . % m 目录下;share modes = yes 指定允许任何人( g u e s t )使用定义在/ e t c / p r i n t c a p 下的打印机。 [ g l o b a l ] ; printing = bsd ; guest account = pcguest log file = /var/log/samba/log.%m max log size = 50 share modes = yes

下面定义使用S a m a b S e r v e r 的用户名的目录。 ; username map = /etc/smbusers

下面是关于l i n u x 的p r i n t e r 的使用设置,设置打印机在Wi n d o w s 9 5 网络邻居上的名称为[激光打印机],且这台打印机可以在网络邻居上看到(browseable = yes),可以执行打印( p r i n t a b l e = yes);但无权限者,如g u e s t 不可以使用(public = no),且这台打印机的权限设置为0 7 5 0 ,也就是只有拥有者( r o o t )才能使用。 [ p r i n t e r s ] comment = All Printers path = /var/spool/samba browseable = no

# Set public = yes to allow user 'guest account ' to print guest ok = no writable = no printable = yes

printable = no create mask = 0750

下面设置所有使用者的Home Directories : [ h o m e s ]

comment = Home Directories browseable = yes path = /home writable = yes

下面设置d a v i d 这位l i n u x 上的使用者的Home directory 。这种设置也是安装s a m a b 的好处之一,d a v i d 这位使用者可以直接经由Wi n d o w s 9 5 的网络邻居存取它在l i n u x 上的Home directory ,对使用者来讲非常方便。 [ d a v i d ]

comment = david's Home path = /usr/david valid users = david public = no writable = yes

下面的语句设置一个暂存的目录,可以让任何人共享(public = yes): [ t m p ]

comment = Temporary file space path = / read only = yes public = yes

上面只举了几个范例,如果想知道更多的范例,请参考S a m b a 内附的s m b . c o n f .d e f a u l t 。

设置好s m b . c o n f 后,紧接着就要启动Samba Server 了。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- stra.cn 版权所有 赣ICP备2024042791号-4

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务