1、 node
1.为了限制一个部门过多的占用共享空间而让其余部门的文件没法存放,就要给共享硬盘作一个配额,规定某一个部门最多占用必定的空间。 linux
2.文件系统是在linux系统上,为了能让windows机器也能访问到,因此要采用samba文件系统。 shell
3.要限制空间大小,就要采用quota. vim
二.配置磁盘配额quota windows
1.安装quota包 浏览器
[root@localhost ~]# rpm -qa | grep quota 网络
quota-3.17-16.el6.x86_64 测试
2.从新设置/etc/fstab挂载选项,并重启来完成挂载 ui
从新设置前: spa
[root@localhost ~]# vim /etc/fstab
UUID=dbaec1a5-d027-40bb-9cc1-54097084f19e / ext4 defaults,usrquota,grpquota 1 1
...
[root@localhost ~]# mount
/dev/sda3 on / type ext3 (rw)
...
设置后,重启:
[root@localhost ~]# vim /etc/fstab
UUID=dbaec1a5-d027-40bb-9cc1-54097084f19e / ext4 defaults,usrquota,grpquota 1 1
...
[root@localhost ~]# mount
/dev/sda1 on / type ext4 (rw,usrquota,grpquota)
...
或者将你想要作配额的分区从新挂载,并添加usrquota,grpquota选项参数,例如
mount /dev/nova-volumes/test /media/ -o usrquota,grpquota
3.建立用户或组,给此用户或组作磁盘限定
useradd share
useradd user1 –g share
4.创建配额文件,分别对用户和组
quotacheck -cmug / 须要配额的分区都须要创建一个此文件,后面的目录就是分区的挂载点
配额文件会自动创建在分区文件系统的根目录中
[root@localhost ~]# ll /
总计 178
-rw------- 1 root root 9216 11-23 17:31 aquota.group
-rw------- 1 root root 8192 11-23 17:32 aquota.user
...
5.给用户user1添加配额
[root@localhost ~]# edquota -u user1 (-u参数为配置用户,若是为给组配置,参数为-g)
Disk quotas for user user1 (uid 501):
Filesystem blocks soft hard inodes soft hard
/dev/sda1 10240 5120 10240 12 0 0
解释:列表中第一列Filesystem为要处理的分区;
第二列blocks为硬盘的当前blocks状态,不能改变(硬盘存储文件要写入block,同时占用一个inode),单位为K;
第三列soft为软限制,在正常操做期间用户或组容许使用的 1KB 的块数。这是最低限制容量的意思,使用者在宽限期间以内,他的容量能够超过 soft ,但必须要宽限时间以内将磁盘容量下降到 soft 的容量限制之下;
第四列hard为硬限制,要比soft的值大,用户或组可被容许使用的 1KB 的总块数,包括在 quota 宽限期内临时存储器。这是绝对不能超过的容量!跟 soft 相比的意思为什么呢?一般 hard limit 会比 soft limit 为高,例如网络磁盘空间为 30 MB ,那么 hard limit 就设定为 30MB ,可是为了让使用者有必定的警惕心,因此当使用空间超过 25 MB 时,例如使用者使用了 27 MB 的空间时,那么系统就会警告使用者,让使用者能够在宽限时间内将他的档案量下降至 25 MB ( 亦便是 soft limit )以内!也就是说, soft 到 hard 之间的容量其实就是宽限的容量;
第六列,节点软限制,在正常操做期间用户或组容许使用的文件数。单位为个数。
第七列,节点硬限制,用户或组被容许建立的总文件数,包括在 quota 宽限期内的临时文件。单位为个数。
设置某个配额为零表示不施加任何配额限制。
宽限时间:也就是当您的使用者使用的空间超过了 soft limit ,却尚未到达 hard limit 时,那么在这个宽限时间以内,就必须要请使用者将使用的磁盘容量下降到 soft limit 之下!而当使用者将磁盘容量使用状况超过 soft limit 时,宽限时间就会自动被启动,而在使用者将容量下降到 soft limit 之下,那么宽限时间就会自动的取消。
若是想使用shell直接配置配额,则能够使用setquota命令
setquota -u user5 5120 10240 300 500 /home
5120表示软块数,就是说容量软限制80M
10240表示硬块数,容量硬限制100M
300表示软节点,意思就是文件多少软线限制300个文件或者文件夹
500表示硬节点。。。
/home就是要设置的文件系统挂载点
6.查看配置状况
[root@localhost ~]# quota -u user1
Disk quotas for user user1 (uid 502):
Filesystem blocks quota limit grace files quota limit grace
/dev/sda1 10240* 5120 10240 7days 12 0 0
7.启动配额项
quotaon -avug
8.关闭配额
quotaoff -a 先中止
9.测试
[root@localhost ~]# su user1
[steve@localhost ~]$ dd if=/dev/zero of=/home/user1/test bs=1M count=1
[steve@localhost ~]$ cp test test1
[steve@localhost ~]$ cp test test2
[steve@localhost ~]$ cp test test3
[steve@localhost ~]$ cp test test4
Sda1: warning, use block quota exceeded. #达到5M时,开始报警
[steve@localhost ~]$ du -sh
5M .
硬盘配额成功配置,下面就是与samba的应用
三.配置samba文件系统
1.安装samba包
[root@localhost ~]# rpm -qa | grep samba
samba-winbind-clients-3.5.10-125.el6.x86_64
samba-3.5.10-125.el6.x86_64
samba-common-3.5.10-125.el6.x86_64
2.配置
主要配置为如下的选项
[root@localhost ~]# grep ^[^#] /etc/samba/smb.conf | grep ^[^\;]
[global]
workgroup = MYGROUP
security = user #用户访问模式,若是为非用户模式为share
passdb backend = tdbsam
load printers = yes
cups options = raw
[share]
path = /share #共享目录
browseable = yes #可浏览器访问
writable = yes #可写
guest ok = no #不能匿名访问
valid users = @share #可访问的用户组,前提是系统用户
3.建立/disk目录,并设置所属用户与组
mkdir /share
chown user1:share /share
4.建立samba用户,前提是系统用户
smbpasswd -a user1
5.重启smb
service smb restart
6.测试
在一台与此smb机器能连通的机器上映射此samba文件系统
\\ServerIP\share
发现此分区的可用空间为10M
四.quota的group限定与samba
事实在实际工做中,不会单独的给某一个用户进行限定,而是给一个组。好比一个部门,每人都有本身的用户名,同时能访问到属于这个部门的共享空间。咱们只要把这些用户名同属于一个组,而后对这个组就行限定就能够了。
1.创建组与用户
groupadd share
useradd -g share user2
useradd -g share user3
useradd -g share user4
2.设定quota
#edquota -g template
Disk quotas for group template (gid 501):
Filesystem blocks soft hard inodes soft hard
/dev/sda1 36 150000 250000 9 0 0
~
3.设定samba用户
smbpasswd -a user2
smbpasswd -a user3
smbpasswd -a user4
4.配置smb.conf
[root@localhost ~]# grep ^[^#] /etc/samba/smb.conf | grep ^[^\;]
[global]
workgroup = MYGROUP
security = user #用户访问模式,若是为非用户模式为share
passdb backend = tdbsam
load printers = yes
cups options = raw
[share]
path = /disk #共享目录
browseable = yes #可浏览器访问
writable = yes #可写
guest ok = no #不能匿名访问
valid users = @share #可访问的用户组,前提是系统用户
5.改变共享目录所属组与权限
chown user1:share /share
chmod 770 /share
6.重启samba,进行测试,发现每一个用户查看共享都为一样的空间150M。完成!
注意:若是对组限定后,并对属于此组的某个用户也进行了限定,可是限定空间大小不一样,为根据限定小的那个决定可用空间