需求说明
- 管理员账号能管理所有文件夹;
- 职员账号能管理自己的文件夹、公共文件夹及访客文件夹;
- 访客仅能管理访客文件夹;
- 没有权限访问的文件夹则不显示(账号隔离);
账号设定
- admin:管理员账户;
- zhangshan:职员账号;
- lisi:职员账号;
- guest:访客账号。
创建相关文件夹
# 创建一个文件夹,把所有账号对应的文件夹都放入其中
mkdir /home/samba
# 创建公共文件夹
mkdir /home/samba/公共文件
# 创建 zhangsan 对应的文件夹
mkdir /home/samba/张三
# 创建 lisi 对应的文件夹
mkdir /home/samba/李四
# 创建 guest 对应的文件夹
mkdir /home/samba/访客
# 文件夹授权
chown -R 777 /home/samba/
# 1777 说明:所有用户都可以在这个目录下创建文件,
# 但只能删除自己创建的文件(root除外),这样可以对文件启到保护作用。
chown -R 1777 /home/samba/公共文件
创建相关分组及账号
# 创建分组
sudo grpupadd admin # 管理员组
sudo grpupadd personnel # 职员组
sudo grpupadd guest # 访客组
# 创建账号,-s /sbin/nologin 为禁止用户登录
sudo useradd -g admin -s /sbin/nologin admin
sudo useradd -g personnel -s /sbin/nologin zhangsan
sudo useradd -g personnel -s /sbin/nologin lisi
sudo useradd -g guest -s /sbin/nologin guest
Linux 安装 samba 服务
CentOS:
sudo yum install samba
Ubuntu:
sudo aptg-get install samba samba-common
配置 samba 权限
为了实现账号隔离的效果,我们需要把每个账号单独配置一个以 .smb.conf 结尾的配置文件。配置方式如下:
首先创建配置文件