本文转自:http://blogold.chinaunix.net/u2/71107/showart_733101.html
检测安装Samba服务 (1).检查Samba服务包是否已安装:
rpm -qa | grep samba(2).如未安装,则插入第一张安装盘,执行:
mount /mnt/cdrom cd /cdrom/Redhat/RPMS(3).进入目录后安装Samba文件: 注意:运Samba至少需要三个文件,分别为: samba-common-2.2.7a-7.9.0.i386.rpm //服务器和客户端均需要的文件 samba-2.2.7a-7.9.0.i386.rpm //服务器端文件 samba-client-2.27a-7.9.0.i386.rpm //客户端文件 安装上述3个文件.
rpm -ivh samba-common-2.2.7a-7.9.0.i386.rpm //另外两个省略不写(4).安装完成后弹出光驱:
cd;eject2.设置密码文件. (1).此设置的作用是将Linux中的系统用户(/etc/passwd)导入到samba密码文件中 (/etc/samba/smbpasswd )
cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswd(2).接下来给smbpasswd等文件及文件夹设置访问权限.
chown root:root /etc/samba/smbpasswd chmod 600 /etc/samba/smbpasswd chmod 600 /etc/samba查看一下:
ll -d etc/samba(3).如果您想手动添加一个用户,则首先要保证Linux中该用户存在,步骤:
useradd austin passwd austin smbpasswd -a austin //此步为添加Samba用户3. 配置/etc/samba/smb.conf 文件. 虽然文件内容众多,但需要改动的不多,一般为按需所配: (1).修改[global](全局配置参数)
workgroup = workgroup //工作组名称 server string = samba server %v at %h //设置服务器名称.%v为版本号,%h为运行 smb服务的主机名 host allow = 192.168.80. 192.168.70. //允许访问服务器的主机 client code page = 939 //支持简体中文共享名上述四条为比较重要的.其他配置大家可按需按情况修改. (2).创建共享文件夹. 由于用户使用权限有多种(读,写,执行),而又访问者又有多种(用户,组),所以创建共享资源的访问方式有多种,下面暂举几例: 例一: 建立资源,使登陆到该服务器的用户均有权使用该空间(包括读,写) <1>.编辑smb.conf文件
vi smb.conf[resource] comment = local resource path = /var/samba/resource read only = no public = yes //允许guest用户访问
<2>. 建立共享文件夹
mkdir -p /var/samba/resource<3>. 由于任何人都能使用,所以得给该文件夹设置访问权限.
chmod 707 /var/samba/resource<4>. 如果想在该文件夹中放置预共享文件,而又不想花 时间从别的文件夹中cp过来,此时可以使用指针. 比如想共享/usr/share/doc 中的文件,则可以:
ln -s /usr/share/doc /var/samba/resource/doc进入/var/samba/resource ls一下,是不是出现指针文件了! 例二: 建立一资源,只能让用户austin全权访问. <1>. 编辑smb.conf文件
vi smb.conf[austin] comment = austin path = /var/samba/austin vaild users = smz //只允许austin访问 public = no writable = yes
<2>. 建立共享文件夹
mkdir -p /var/samba/austin<3>. 由于只能让austin使用,所以得给该文件夹设置访问权限.
chown austin:austin /var/samba/austinchmod 700 /var/samba/austin
此时该文件夹属于austin用户,并且只能由austin用户访问. 例三: 建立一资源,只能让root,zhang和wang访问. <1>. 编辑smb.conf文件
vi smb.conf[zhang wang] comment = zhang wang path = /var/samba/zhangwang vaild users = zhang wang public = no writable = yes creat mask = 0707
<2>. 建立共享文件夹
mkdir -p /var/samba/zhangwang<3>. 给该文件夹设置访问权限.
chmod 707 /var/samba/zhangwang此时该文件夹只能root,zhang,wang访问了. 例四: 建立一资源,让指定的组group2中的用户访问. <1>. 编辑smb.conf文件
vi smb.conf[group] comment = group2 path = /var/samba/group2 public = yes writable = yes write list = @group2 //设置读写访问用户列表
<2>. 建立共享文件夹
mkdir -p /var/samba/group2<3>. 给该文件夹设置访问权限.
chown group2.group2 /var/samba/group2chmod 770 /var/samba/group2
此时该文件夹只能由group2中的用户访问了. (3). 以上为创建共享文件夹,下面为创建共享打印机. <1>. 配置打印机的方面有很多,比如使用redhat-config-printer命令即可调出配置 菜单. <2>. 当然smb.conf中也要设置啊:
[global] printcap name = /etc/printcap //配置文件路径 [printers] writable = no guest ok = yes //guest可用 browseable = no //不可浏览 ptrintable = yes path = /var/spool/samba //队列位置 printer admin = root //打印机管理员其他配置不变或按情配置 接下来再添加print驱动设置:
[print$] comment = printer drivers path = /etc/samba/drivers browseable = yes guest ok = no read only = yes write list = root接着创建drivers文件夹:
mkdir -p /etc/samba/drivers最后给用户准备打印机驱动,并启动打印共享:
cupsaddsmb -a -U root //-a为共享所有打印机 -U为以root身份执行cupsaddsmb
命令 4. 测试并启动Samba服务器.
testparm //测试service smb start
pstree | grep mbd //查看是否启动
5. 访问Samba (1). 从Windows端访问. 使用"网络邻居"访问即可. (2). 访问时可以使用IP地址,也可以使用主机名访问.
vi /etc/samba/lmhosts192.168.80.35 smz_f91
//创建主机名与IP的映射 访问时,使用smbclient命令,使用方法如下: smbclient -L IP/主机名 [-U 用户名] //浏览Linux/Windows资源列表 smbclient -L 192.168.80.35 //浏览Linux smbclient -L 192.168.80.45 -U administrator //浏览Windows smbclient //IP/共享文件夹名 -U 系统用户名 //详细查看某一共享资源的 内容 smbclient //192.168.80.45/123 -U root/administrator //以root或administrator身份 登陆45主机访问共享文件夹123