Click here If you are looking for implementing user disk quota implementation in linux. Here in this post we are now going to discus how to implement Linux Group quota for a project?
Many people will ask why we require group quota if we have user quota?
I will explain this with an example. In companies people will be working on projects/groups where they want to share their data on a common location and accessed by any user for that group. Its some thing like group store where they will be dumping data on a single location. So its very much easy to restrict per group basis on this group store, so we can set some limit on all the users in that group on how much they can upload to that folder. We will take one example to accomplish this group quota.
group name : project1.
group members : user1, user2, user3.
group dump folder/common folder to the above mention users : /home/project1 (/dev/hda2).
group disk quota limit : 100MB soft/110MB hard limit
Now we have all the ingredients to prepare spicy food :)
Implementing Group disk quota on Linux
Step1 : Create a group
#groupadd project1
Step2 : Create all the require users with their home directory /home/project1 and group as project1
#useradd -c "Testing group quota implementation" -m -d /home/project1 -g project1 user1
#useradd -c "Testing group quota implementation" -m -d /home/project1 -g project1 user2
#useradd -c "Testing group quota implementation" -m -d /home/project1 -g project1 user3
Step3 : Select/prepare the partition for quota here my partition is /dev/hda2 so edit /etc/fstab file for with the required entries.
vi /etc/fstab /dev/hda2 /home ext3 defaults,usrquota,grpquota 0 0
save and exit the file
Step4 : Now remount the partition with rw permissions
#mount -o remount,rw /home
Step5 : Now create group quota database
#quotacheck -cug /home
check for user/group database is created or not when you give ls /home you can see
aquota. user, aquota.group files in /home directory,which contains user and group databases.
Step6 : Once the above command executed successfully, check quota is implemented or not.
#repquota -a
Step7 : Now set quota for the group project1, this can be done using edquota or setquota. Most of the people know edquota command usage when executed it will open a temporary quota file where we have to mention your desired values. But in this I am going to show you another way to set group quota.
#setquota -g project1 100 110 0 0 /dev/sda2
Explanation of above command.
-g specifies we are going to edit group quota.
The group name is project1
We are setting setting soft(100kb) and hard limit(110kb) on blocks
We disabled setting soft(0) and hard(0) limit on inodes
Last we specified on what partition we are going to set this quota(/dev/sda2)
Step8 : Don't think its completed. This is the most and main important point you have remember when implementing group quota. We have to set permission to /home/project1 with SGID so that all the members in the group can able to upload data to /home/project1 with out any issue.
#chmod 2770 /home/project1
Now all the group members of project1 can upload total of 100kb not more than that. For example user1 uploaded 75kb so members of project1 can only upload 25kb more.
How to: Linux Group Disk Quota Implementation
3/27/2010 11:08:00 AM Posted by Surendra Kumar AnneLabels: Disk-Mgmt, How-To's, Quota
Subscribe to:
Post Comments (Atom)
0 comments:
Post a Comment