安装和启动Samba

来源:互联网 发布:java前端和后端分离 编辑:程序博客网 时间:2024/04/29 12:09

Samba 软件安装在Linux 一端。目前主要由一个20人左右的Samba 团队负责维护及开发,用户可以在http://www.samba.org/站点获得Samba的详细信息。同时,也可以在网页上下载Samba 的最新版本 

4.2.1 安装Samba服务器 

如果用户在安装Linux 时已经安装了Samba ,就无需再安装了可以通过下列命令确定是否已经安装了Samba  

[root@ smb_server  root]# rpm  –qa | grep  samba

samba-commom -2.2.7a-7.9.0

samba-2.2.7a-7.9.0

samba-client-2.2.7a-7.9.0

redhat-config-samba-1.0.4-1

samba-swat-2.2.7a-7.9.0

若出现这5个软件包,则表示已经安装了Samba ,否则必须安装Samba  

[root@smb_server  root]# mount  /dev/cdrom  /mnt/cdrom  

将光盘挂载到 /mnt/cdrom目录]

[root@smb_server  root]# cd  /mnt/cdrom/RedHat/RPMS 

切换到放置rpm文件的目录 

[root@smb_server  root]# rpm  -ivh samba-commom -2.2.7a-7.9.0i386.rpm

这是Samba 必备的程序,必须安装 

[root@smb_server  root]# rpm  -ivh samba-2.2.7a-7.9.0.i386.rpm

安装Samba 服务器程序,可以使我Windows 主机访问Samba 服务器共享的资源。 

如果需要使Linux 主机访问Windows 主机上的共享资源,则还应该安装Samba 客户端程序。 

[root@smb_server  root]# rpm  -ivh samba-client-2.2.7a-7.9.0.i386.rpm

4.2.2 Samba的全局参数的配置 

Samba最主要的配置文件是 /etc/samba/smb.conf,其中有很多选项可以设置,但作为初学者,只需要掌握其中一小部分选项的设置就可以配置所需要的Samba服务器了。在了解基本配置的基础上,就能很快架设一个基本的Samba服务器。在基本配置文件中,也只用到其中一小部分命令选项。

全局参数的配置在[global]字段中,没有出现(或被注释)的参数,Samba 采用的是默认配置。

# 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

#================== Global Settings ============================

[global]

#这是配置文件中关于全局参数的设置部分。 

…………

   workgroup = SMBGROUP

#这是设置服务器所要加入的工作组的名称,会在Windows 的“网上邻居”中能看到MYGROUP工作组,可以在此设置所需要的工作组的名称。 

netbios name=smb-server

#设置出现在“网上邻居”中的主机名。默认情况下,则使用真正的主机名。 

   server string = Samba Server

#这是设置服务器主机的说明信息,当在Windows 的“网上邻居”中打开Samba 上设置的工作组时,在Windows 的资源管理器窗口,会列出“名称”和“备注”栏,其中“名称”栏会显示出Samba服务器的NetBios名称,而“备注”栏则显示出此处设置的“Samba Server”。当然,可以修改默认的“Sambe Server”,使用自己的描述信息。 

 hosts allow = 192.168.1. 127

#这里是设置允许什么样的IP地址的主机访问Samba服务器。默认的情况下,hosts allow选项被注释,表示允许所有IP地址的主机访问。 

  guest account = pcguest

#设置当访问那些被设置了“guest ok=yes”参数的资源时所要使用的帐号名。默认的帐号为”nobody”,如果不想用默认的值,则应该去掉注释用的分号,用你想要的帐号(如pcguest zhangsan ),然后,你必需将这一新帐号加入到/etc/passwd文件中去。 

client  code  page=950

设置客户端访问Samba 服务器时所使用的字符编码表(code page),默认值为850,如果Samba 服务器要使用年中文名称来来命名共享的资源,要将此值改为950 

  log file = /var/log/samba/%m.log

#这一选项要求Samba服务器为每一个连接的机器使用一个单独的日志文件,指定文件的位置,名称。Samba会自动将%m转换成连接主机的NetBios名。 

   max log size = 0

指定日志文件的最大容量(KB为单位),设置为0,表示没有限制。默认值为5000 

max disk size =1000

#设置能够共享的最大磁盘空间,单位为MB,默认值为0,表示不作任何限制。 

max open file =100

#设置同一客户端最多能打开文件的数目,默认值为10000个。 

   security = user

#设置Samba服务器的安全等级。默认情况下,使用user等级。 

#Samba服务器一共有四种安全等级。 

share: 使用此等级,用户不需要帐号及密码可以登陆Samba服务器。 

user:  使用此等级,由提供服务的Samba服务器检查用户帐号及密码。 

server: 使用此等级,检查帐号及密码的工作可指定另一台Samba服务器负责。

domain: 使用此等级,需要指定一台Windows NT/2000/XP服务器(通常为域控制器),以验证用户输入的帐号及密码。 

;   password server = <NT-Server-Name>

#如果安全等级为“server”或“domain”,则使用此选项指定要验证密码的主机名。 

  password level = 8

  username level = 8

#设置当验证用户口令和帐号时最多允许几个大小写字不同。默认值为0 

   encrypt passwords = yes

#设置当Samba客户端将帐号及密码传送到服务器端时,是否采取密码加密的方式。客户的操作系统如果是Windows 95 OSR2 NT SP3以后的版本,应该将此选项的值设为yes,默认值为no 

   smb passwd file = /etc/samba/smbpasswd

#设置在Samba服务器上存放加密的密码文件的位置(注意:Samba服务器与Linux采用不同的密码文件)。 

 

4.2.3 设置Samba密码文件 

smb.conf 文件中有“smb password file =/ect/samba/smbpassword”一行设置项,现在就要创建该设置项所指定的/ect/samba/smbpassword密码文件(若是用Windows NT/2000Server 来验证密码,则可以跳过此段内容)。以root帐号登录,然后按下列步骤进行: 

[root@smb_server  root]#cat /etc/passwd | mksmbpasswd.sh  >  /etc/samba/smbpasswd

[root@ smb_server  root]# chmod  500  /etc/samba

[root@ smb_server  root]# chmod  600  /etc/samba/smbpasswd

 

此步骤是将未加密的/etc/passwd文件转换成加密的smbpasswd文件。基于保密的原则,将/etc/samba目录的权限设为500,该文件的权限设为600,以避免他人取得密码文件。 

完成之后再利用smbpasswd命令,设置/ect/samba/smbpassword文件中每个帐号所使用的密码。(下面以fred为例。注意:此处设置的密码是fred要访问Samba服务器的密码,并非登录Linux 主机的密码,默认设置”UNIX password  sync=YES”, 则登录Linux 主机的密码将改变,Samba服务器的密码一致,如果希望这两个密码不一致,则设置”UNIX password  sync=NO” 

[root@smb_server  root]# smbpasswd fred

New SMB password: 此处输入密码 

Retype SMB password: 重新输入密码 

Password  changed  for user  fred  看到这一句表示密码设置成功。 

 

4.2.4 启动Samba服务器 

可以执行下面的命令来启动Samba服务器: 

[root@ smb_server  Root]#   service smb start

当能看到下面的显示,就表示启动成功。 

Starting  SMB  service          [确定]

Starting  NMB  service          [确定]

 

如果要暂停或重新启动Samba服务器,只要将上面命令中的start 改为stoprestat就可以了。 

也可以让系统在每次开机时就启动Samba服务器。执行ntsysv命令,进入Service设置画面,选择smb选项,单击确定即可。 

4.2.5 测试Samba配置文件 

设置好smb.conf文件之后,执行下面的命令测试smb.conf的设置语法是否正确。 

[root@smb_server  root]#  testparm

Load smb config files from /etc/samba/smb.conf

Processing section "[homes]"

Processing section "[printers]"

Processing section "[tmp]"

Processing section "[public]"

Processing section "[fredsdir]"

Loaded services file OK.

Press enter to see a dump of your service definitions

表示正确。 

检查正常后,一定要记得执行 

[root@smb_server  root]#   service smb  restart

命令,重新启动Samba服务器。

原创粉丝点击