具体详细信息请参照 鸟哥的Linux(服务器架设篇)
◆1、首先检查系统是否安装好了samba。
[root@cisco samba]# rpm -qa | grep smb
如果出现下面三行内容,则表示已经安装好了Samba(不同版本可能显示不一样)
smbios-utils-2.0.1-2.fc9.1.i386
gnome-vfs2-smb-2.22.0-1.fc9.i386
libsmbclient-3.2.0-1.pre3.9.fc9.i386
libsmbios-2.0.1-2.fc9.1.i386
pam_smb-1.1.7-8.2.2.i386
如果没有安装后好,需要进入安装关盘Fedora-9-i386-DVD.iso
[root@cisco /]# mount /dev/cdrom /mnt/cdrom/
mount: block device /dev/sr0 is write-protected, mounting read-only
[root@cisco /]# cd /mnt/cdrom/
找到相应的安装软件安装即可。
samba,samba-client,samba-common都需要安装才行,如果没有光盘,可以在图像界面选择 应用程序——添加删除程序,搜索samba,然后找到所需的软件包,点击安装即可。
◆2、进入samba目录
[root@cisco /]# cd /etc/samba/
[root@cisco samba]# ls
lmhosts smb.conf smbpasswd smbusers
这里的smb.conf是samba服务器的主要配置文件。
还要注意一点,smbpasswd文件是用来存储用户帐号和经过加密后的密码。
刚安装好samba服务时,此文件不存在。需要手工创建。
◆3、编辑smb.conf文件
[root@cisco samba]# vim smb.conf
此处建议以后使用vim方式打开文件,使用这种方式打开文件的好处是可以将不同的C语句利用不同的颜色显示,方便你的阅读和修改,就像C文件中打开文件那样。很人性化的一个界面,你使用后对比一下就知道了。
进行如下设置:
#=============== Global Settings ===========================[global]
workgroup = MSHOME //将linux 加入的工作组名,我这里加入了MSHOME工作组。
server string = Samba //这是服务器描述信息,方便标志资源。可以随便输入。
encrypt passwords = yes //表示是否对用户的密码进行加密,这里选择加密,安全!
public = yes //定义一个共享是否对公共访问开放。当设置为 yes 时,在系统上没有帐户用户将基于所定义的客户帐户的属性来接收访问。
smb passwd file = /etc/samba/smbpasswd //这是账号密码的存放文件
netbios name = mm's samba //在外部访问该samba服务器时,显示的信息。
# --------------------------- Logging Options -----------------------------
# logs split per machine
log file = /var/log/samba/log.%m //log文件的存放位置。
# max 50KB per log file, then rotate
max log size = 50 //log 文件的大小限制,设置为0表示不做限制,设置成50以内的数据时候限制为这个文件范围内的大小空间,单位为KB。
# ----------------------- Standalone Server Options ------------------------
security = user
//共享的安全级别,samba有四种安全等级:
//user:由提供服务的samba服务器负责检查账户及密码(默认)
//share:用户不需要账户及密码即可登录samba服务器
//server:检查账户及密码的工作由另一台windows或samba服务器负责
//domain;指定windows域控制服务器来验证用户的账户及密码
passdb backend = tdbsam
以上即为通用一般配置。
加入我们需要共享的目录为 /opt/
需要添加如下代码:
[rose] //该处为在WINDOWS中显示的名字
comment = my samba server! //设置共享信息,随便输入
path = /opt //设置为需要共享的目录的路径
valid users = testuser //可以访问次共享目录的用户,我这里设为testuser用户
public = yes //同上面的解释
writable = yes //用户是否可写,这里我们允许。
然后输入wq! (保存退出)
◆4、启动smb和nmb服务,此处需要说明的是这两个服务需要单独输入命令来启动,并不像RED HAD 5中的仅仅使用一个命令便能够启动的。
[root@cisco samba]# service smb start
Starting SMB services: [ OK ]
[root@cisco samba]# service nmb start
Starting NMB services: [ OK ]
◆5、添加可以访问我们刚才设置共享目录的用户:testuser
1)建一个系统用户
[root@linux samba]# useradd testuser (建一个名叫testuser的用户)
[root@linux samba]# passwd t (给testuser用户添加密码)
Changing password for user samba.
New password: (密码要六位以上,不显示在屏幕上)
BAD PASSWORD: it does not contain enough DIFFERENT characters
Retype new password: (确认密码)
passwd: all authentication tokens updated successfully
2) 更新 /etv/samba/smbpasswd 文件
[root@linux samba]# cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswd
3) 然后创建samba帐户
[root@cisco samba]# smbpasswd -a testuser
New SMB password:
Retype new SMB password:
Added user testuser.
◆6、重新启动smb服务
[root@cisco samba]# service smb restart
Shutting down SMB services: [ OK ]
Starting SMB services: [ OK ]
[root@cisco samba]# service nmb restart
Shutting down NMB services: [ OK ]
Starting NMB services: [ OK ]
◆测试:两个系统进行相互访问
在window系统下访问linux共享目录
运行——输入linuxIP地址,输入samba用户名和密码,登录成功即可打开共享目录。
通过linux系统访问windows共享目录:可以使用:smb://ip ,其中 ip 为 Windows 系统 IP 地址,share为windows的共享目录