案例:
公司有两个部门, sales / market . 分别有成员 jack / tom 和 zhang / shen .
公司需求是这样的, 本部门资料禁止其他部门访问, 本部门成员之间不能干扰对方文件, 但ceo对所有部门资料都有访问权利,
另外, 部门公共文件放在公共目录, 只允许下载.
------------------------ 案例代码
首先, 安装 smb 服务
yum -y install samba* --skip-broken
iptables -F
service iptables save
vi /etc/selinux/config ( SELINUX=disabled )
setenforce 0
/etc/rc.d/init.d/smb start
chkconfig --level 35 smb on
接着.....
1.建立用户和组
groupadd sales
groupadd market
for user in jack tom
do
useradd -g sales $user
smbpasswd -a $user
done
for user in zhang shen
do
useradd -g market $user ①
smbpasswd -a $user
done
useradd ceo
passwd ceo
2.建立共享目录
cd /home/
mkdir sales
mkdir market
3.设置目录权限
cd /home/
chown ceo sales ④
chown ceo market
chgrp sales sales ②
chgrp market market
chmod 1770 sales ③
chmod 1770 market
4.修改配置文件(添加共享)
vi /etc/samba/smb.conf
[sales]
path=/home/sales/
valid users=@sales ceo
write list=@sales ceo
writable=yes
[market]
path=/home/market/
valid users=@market ceo
write list=@market ceo
writable=yes
[public] ⑤
path=/home/pubshare/
writable=no
5.在windows下,运行 http://ip/ 测试!
------------------------ 解释标识处
1+2 : 将用户加入一个组, 再把一个目录的权限也设为这个组, 那么, 组内的成员就可以访问这个目录了! (实现: 本部门资料禁止其他部门访问)
3 : 我们通常看到的权限是 777 , 那么 第四位的 1 是什么权限呢? 它是"黏着位 t", t =1 , 如果对一个目录设置此权限, 那么, 这个目录内所有的文件的权限只属于其所有者, 其他人无写权限. (实现: 本部门成员之间不能干扰对方文件)
4 : 把所有共享目录的所有者权限设为ceo (实现: ceo对所有部门资料都有访问权利)
5 : 不设置 valid users 和 write list , 那么默认所有人都可以访问. writable=no 表示无写权限. (实现: 部门公共文件放在公共目录, 只允许下载.)
;