samba+quota

[root@nod2 ~]# yum -y install samba

smb.conf配置文件的主要段
[global]
workgroup = 指定工作组或域
server string = 描述信息
security = 指定安全模式[share无权限验证、user缺省值,由samba服务器验证、server、domain]
hosts allow = 限定主机访问
log file = 指定日志文件存放位置
max log size = 指定日志文件大小
[homes]
        comment = Home Directories
        browseable = no 无权限共享目录隐藏
        writable = yes
 
准备工作,关闭防火墙,关闭selinux
 
应用场景一:允许sky与jack用户可能通过windows客户端访问共享目录/data,并具有读写权限
[root@nod2 ~]# useradd  -s /sbin/nologin sky     访问共享的用户可以不给予登入系统的权利
[root@nod2 ~]# useradd  -s /sbin/nologin jack
[root@nod2 ~]# smbpasswd -a sky
[root@nod2 ~]# smbpasswd -a jack
可以不设置sky jack在系统中的密码
[root@nod2 ~]# groupadd dataadmin 
[root@nod2 ~]# usermod -G dataadmin jack
[root@nod2 ~]# usermod -G dataadmin sky
[root@nod2 ~]# id jack
uid=501(jack) gid=501(jack) groups=501(jack),502(dataadmin)
[root@nod2 ~]# id sky
uid=500(sky) gid=500(sky) groups=500(sky),502(dataadmin)
[root@nod2 ~]# chgrp dataadmin /data
[root@nod2 ~]# chmod g+w /data
[root@nod2 ~]# ll -d /data
drwxrwxr-x. 2 root dataadmin 4096 Nov 29 12:48 /data
[root@nod2 ~]# vi /etc/samba/smb.conf  在文件的最后添加
[data]
        comment = this is test!
        path = /data
        writable = yes
        valid users = sky jack
[root@nod2 ~]# testparm /etc/samba/smb.conf 检测语法,这一步很重要,因为有些设置错误后,
samba会忽略掉,所以设置项不生效,启动依然成功
[root@nod2 ~]# /etc/rc.d/init.d/smb restart  有些版本的samba可以不重新启动服务
[root@nod2 ~]# /etc/rc.d/init.d/nmb restart
samba有两个守护进程:smbd监听139TCP端口
nmbd监听137和138UDP端口
smbd进程的作用是处理smb请求包,负责用户验证和文件共享;nmbd进程的作用是处理浏览共享各计算机名称解析。
所在windows下用"运行-->\\IP地址"的方式来访问共享时,可以不启用nmb这个服务,也一样可以使用共享资源。
在windows 下用命令"net use"查看已建立的连接,用“net use \\192.168.133.132\IPC$ /delete”命令
清除已建立的连接。
 
这样建立起来共享用户可以使用的分区空间就是/data这个分区的大小,所以还得配合quota来加以限制
 
[root@nod2 ~]# vi /etc/fstab
UUID=48e7731f-4a10-4183-801e-9868a0bb171d /data                   ext4    defaults,usrquota        1 2
[root@nod2 ~]# mount -o remount /data  重新挂载分区,写入usrquota选项
[root@zhaochj ~]# mount | grep data  验证usrquota生效
/dev/sda3 on /data type ext4 (rw,usrquota)
[root@nod2 ~]# quotacheck -cvu /data 建立管理磁盘配额的数据库文件aquota.user,这一步有些资料说要进入单用户模式执行,但我没有这样做也一样有效
[root@nod2 ~]# quotaon /data 启用配额
[root@nod2 ~]#edquota sky
Disk quotas for user sky (uid 500):
  Filesystem                   blocks       soft       hard     inodes     soft     hard
  /dev/sda3                         0          0          10240          0        0        0
这里限制了10M的大小,警告数值没有设置
[root@zhaochj ~]# quota sky
Disk quotas for user sky (uid 500): none
用户在没有使用过quota时状态是none
[root@zhaochj ~]# repquota -a
*** Report for user quotas on device /dev/sda3
Block grace time: 7days; Inode grace time: 7days
                        Block limits                File limits
User            used    soft    hard  grace    used  soft  hard  grace
----------------------------------------------------------------------
root      --      15       0       0              2     0     0    
这里也报告没有sky用户的信息
但在windows中访问过共享后就有记录了
这样配置后,就达到了一个有限制的共享设置
如果想对让用户访问/data目录后对其他用户所创建的文件有查看的权限,而没有修改和删除的权限,那么应该如下设置
[root@zhaochj ~]# chmod 1777 /data      设置粘着位的权限,这样即可

你可能感兴趣的:(samba)