الويب العربي

الويب العربي (http://www.arabwebtalk.com/index.php)
-   إدارة وتشغيل السيرفرات (http://www.arabwebtalk.com/forumdisplay.php?f=80)
-   -   ما هى الحصص (Quotas) وكيفية استخدامها بالتفصيل (http://www.arabwebtalk.com/showthread.php?t=162524)

صالح عباس 18-09-2011 05:48 PM

ما هى الحصص (Quotas) وكيفية استخدامها بالتفصيل
 
الـحصة أو ما يُعرف بإسم الـ quota، أعتقد أنه لا غنى عنها لأى مدير نظام، فماذا تعنى وكيف يمكننى أن أستخدمها ؟ أولاً الحصة أو الـ quota هى عبارة عن قيود أقوم بوضعها على مُستخدم معين أو حتى مجموعة كاملة، لذلك الـ quota يمكن تطبيقها على كلاً من الـمستخدمين الفرديين، أو المجموعات أيضًا، فأحيانًا نود تحديد مساحة معينه لمستخدم معين لا يمكنه تجوازها نهائيًا، أو فرض قيد معين على مجموعه معينه، لذلك نلجأ إلى إستخدام ما يُعرف بإسم الـ quota.

أولاً :: تثبيت حزمة الـ RPM quota على النظام
كود:

yum install quota

وللتأكد من تثبيتها بشكل صحيح
كود:

rpm -qa | grep quota

ثانيًا :: التعديل على ملف fstab

يجب التعديل على ذلك الملف حتى يمكننا استخدام الـ quota على ملف نظام معين، والتعديل يكون بأحد الطريقتين، إما اضافة

usrquota : وبالتالى قد أخبرنا النظام بذلك الخيار أننا سوف نقوم بتطبيق الحصص على المستخدمين فقط
grpquota : هنا أخبرنا اللنظام أننا سوف نقوم بتطبيق الحصص على المجموعات فقط على ملف النظام ذلك.

وبالطبع يمكن اختيار الخيارين معًا، لنعبر بذلك على استخدام الـ quotas على كلاً من المستخدمين والمجموعات، وتتم إضافة تلك الخيارات فى العمود الخاص بخيارات الـ mount، ويكون شكل السطر بعد التعديد هكذا
كود:

/dev/sdc1              /opt/company_data      ext4    defaults,usrquota,grpquota      1 2

ثالثًا :: إعادة عمل mount لذلك الملف هكذا
كود:

mount -o remount /mnt/exmple

حيث الـ /mnt/example هو الـ mount point الخاصة بملف النظام خاصتى.

رابعًا :: إنشاء الملفات اللازمة للتعامل مع الـ quotas


وهما ملف

aquota.user : والذى يمكننا من التحكم فى الحصص الخاصة بالمستخدمين الفرديين
aquota.group : والذى يمكننا من التحكم فى الحصص الخاصة بالمجموعات

ولعمل ذلك وإنشاء ذلك الملفين (وبالطبع هذا لو كنا قد حددنا فى ملف /etc/fstab الخيارين usrquota و grpquota) نقوم بكتابة الآتى
كود:

quotacheck -ugm /mnt/example

وللتأكد من أن الملفين قد تم إنشائهما نقوم بكتابة الآتى، وتكون النتيجة كما هو مُوضح
كود:

-rw-------. 1 root root  6144 Sep 18 17:07 aquota.group
-rw-------. 1 root root  6144 Sep 18 17:07 aquota.user

خامسًا :: تفعيل الـ quota على ملف النظام الذى سوف نعمل عليه

كود:

quotaon /mnt/example
سادسًا :: ما هو الـ hard limit والـ soft limit


الـ hard limit أو كما يُسمية البعض hard block limit

وهى أقصى مساحه يمكن أن يستغلها المستخدم ولا يمكن تخطيها، فإذا وصل المستخدم إلى نهائتها، لن يستطيع إضافة أى مساحه إضافية لها

الـ soft limit أو كما يُسمية البعض soft block limit

تُعتبر مثل الـ hard limit بالضبط ولكن مع إمكانية اضافة فترة سماح فى حالة تجاوز المستخدم المساحة المسموح بها، وبخصوص فترة السماح يجب على المستخدم خلال فترة السماح مسح الملفات الزائدة والرجوع إلى المساحه التى حددتها له وه soft limit

وبالطبع الذى يحدث دائمًا، أقوم بتحديد soft limit وتحديد فترة السماح له (يمكن تحديدها بالثوانى، الدقائق، اليوم، الشهر) ولتكن يومان فإذا تخطى المستخدم الـ soft limit وهو مازال فى فترة السماح لا يمكنه مهما حدث أن يتخطى الـ hard limit، لذلك عند تحديد فترة السماح يجب تحديد الـ hard limit، وإن لم يتم تحديد فترة السماح، أصبحت الـ soft limit، هى أقصى مساحه لا يمكن أن يتجاوزها المستخدم.


سابعًا :: تحديد الـ quatas للمستخدمين


لتحديد الـ quotas للمستخدمين نقوم بتنفيذ الآتى
كود:

edquota -u <user-name>

وهنا يظهر لنا الملف aquota.user الذى يمكن تحديد جميع القيود من خلاله، هكذا
كود:

  Filesystem                  blocks      soft      hard    inodes    soft    hard
  /dev/sdc1                        0          0          0          0        0        0

وهنا هفرض أنى أريد تحديد الآتى:
الـ hard limit حوالى 100 ميجا
الـ soflimit حوالى 50 ميجا

فيكون الملف بعد التعديل هكذا
كود:

  Filesystem                  blocks      soft      hard    inodes    soft    hard
  /dev/sdc1                        0      50000      100000            0        0        0

ثامنًا :: تحديد فترة السماح

لتحديد فترة السماح نقوم بكتابة الآتى
كود:

edquota -t

فيظهر لنا الآتى
كود:

  Filesystem            Block grace period    Inode grace period
  /dev/sdc1                    7days                  7days

نقوم بتحديد block grace period كما نريد، سواء minutes, hours, days.

ونحفظ اللمف ونقوم بالخروج.


وهنا نكون قد وصلنا إلى آخر الشرح، أسأل الله أن يجعله فى ميزان حسناتى، وأن ينفعه

8MEDIA 08-10-2011 07:34 PM

الف شكر على الشرح الرائع .. جعله الله فى ميزان حسناتك


جميع الأوقات بتوقيت مكة المكرمة. الساعة الآن » 12:09 AM.

Powered by vBulletin
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Copyright © ArabWebTalk.Com 2004-2012