ในบางครั้งเราจำเป็นต้องมีการบริหารจัดการพื้นที่ของฮาร์ดดิสก์ในแต่ละพาร์ทิชัน ให้กับผู้ใช้งาน หรือกลุ่มผู้ใช้งาน เนื่องจากพื้นที่ของฮาร์ดดิสก์มีอยู่อย่างจำกัด ระบบบริหารจัดการดังกล่าวมีอยู่แล้วในระบบปฏิบัติการลินุกซ์ โดยมีชื่อว่า โควต้า (Quota)
ขั้นตอนการติดตั้งดิสก์โควต้า (Disk Quota)
ขั้นตอนที่ 1 เข้าสู่ Single User Mode
เนื่องจากว่าต้องมีการเมาท์พาร์ทิชันที่จะทำการเซ็ตดิสก์โควต้าใหม่อีกรอบ จึงจำเป็นที่จะต้องเข้าสู่ Single User Mode เพื่อเป็นการรับประกันว่า ไม่มีคนใช้งานอยู่ในระบบ แต่ถ้ายังไม่มีผู้ใช้คนอื่นมาใช้ระบบด้วย ก็สามารถข้ามขั้นตอนนี้ไปได้เลย
|
[root@netserv ~]# init 1 |
ขั้นตอนที่ 2
ระบุพาร์ทิชันที่จะใช้ดิสก์โควต้า ในที่นี้เราเลือกเป็น /homeซึ่งเป็นที่เก็บไฟล์ของผู้ใช้งาน โดยทำการเพิ่มออพชั่น usrquotaในไฟล์ /etc/fstabตรงพาร์ทิชัน /homeดังนี้
|
จาก LABEL=/home /home ext3 defaults 1 2 |
|
เป็น LABEL=/home /home ext3 defaults,usrquota 1 2 |
ขั้นตอนที่ 3
ทำการเมาท์พาร์ทิชัน /home ใหม่อีกครั้ง เพื่อให้ลินุกซ์อ่านข้อมูลของพาร์ทิชันใหม่ โดยใช้คำสั่ง mount แล้วเพิ่มออพชั่น -oดังนี้
|
# mount -o remount /home |
ขั้นตอนที่ 4
ออกจาก Single User Mode โดยใช้คำสั่ง exit เพื่อกลับมาสู่โหมดการทำงานปกติ
|
# exit |
ขั้นตอนที่ 5
ทำการสร้างไฟล์คอนฟิกกูเรชั่นสำหรับพาร์ทิชัน /home โดยมีชื่อไฟล์ว่า aquota.user โดยเก็บไว้ที่ /home ดังนี้
|
[root@netserv ~]# touch /home/aquota.user |
จากนั้นทำการเปลี่ยนสิทธิ์ของไฟล์นี้ ให้เจ้าของไฟล์สามารถอ่านและเขียนได้เท่านั้น (600) ดังนี้
|
[root@netserv ~]# chmod 600 /home/aquota.user |
ขั้นตอนที่ 6
ทำการสร้างตารางของโควต้า (Quota Table) โดยใช้คำสั่ง quotacheckดังนี้
|
[root@netserv ~]# quotacheck -vagum quotacheck: WARNING - Quotafile /home/aquota.user was probably truncated. Can't save quota settings... quotacheck: Scanning /dev/sda6 [/home] done quotacheck: Checked 377 directories and 172 files [root@netserv ~]# |
ขั้นตอนที่ 7
กำหนดดิสก์โควต้าของผู้ใช้งานแต่ละคน ตัวอย่างเช่น ต้องการกำหนดดิสก์โควต้าของผู้ใช้ที่ชื่อว่า sawasdee ก็สามารถทำได้ดังนี้
|
[root@netserv ~]# edquota -u sawasdee |
จะมีหน้าต่างสำหรับปรับแก้ไขขนาดของพื้นที่ ที่ผู้ใช้สามารถนำข้อมูลมาเก็บได้
|
Disk quotas for user sawasdee (uid 505): Filesystem blocks soft hard inodes soft hard /dev/sda6 0 0 0 0 0 0 |
โดยแต่ละฟิลด์มีความหมายดังนี้
-
Blocks : เป็นขนาดของพื้นที่ ที่มีการใช้งานไปแล้ว หน่วนเป็น 1k
-
Inodes : จำนวนไฟล์ ที่ผู้ใช้งานมีอยู่ในปัจจุบัน
-
Soft Limit : เป็นขนาดของพื้นที่ / จำนวนไฟล์ ที่ผู้ใช้สามารถนำมาเก็บไว้ได้ ถ้าเกินจากนี้ จะมีข้อความเตือน
-
Hard Limit : เป็นขนาดของพื้นที่ / จำนวนไฟล์ ที่ผู้ใช้สามารถนำมาเก็บไว้ได้ ซึ่งในบางครั้ง ขนาดของพื้นที่ / จำนวนไฟล์ สามารถเกิน Soft Limitได้ แต่จะไม่สามารถเกิน Hard Limit
ให้ทำการแบ่งพื้นที่ให้ผู้ใช้ sawasdeeให้เก็บไฟล์ได้ 10MBแต่ไม่เกิน 15MBดังนี้
|
Disk quotas for user sawasdee (uid 505): Filesystem blocks soft hard inodes soft hard /dev/sda6 0 1000015000 0 0 0 |
ขั้นตอนที่ 8 ดูรายงานการใช้พื้นที่ของดิสก์
เราสามารถดูรายงานการใช้พื้นที่ของดิสก์ได้ โดยใช้คำสั่ง repquotaดังนี้
|
[root@netserv ~]# repquota /home *** Report for user quotas on device /dev/sda6 Block grace time: 7days; Inode grace time: 7days Block limits File limits User used soft hard grace used soft hard grace ---------------------------------------------------------------------- root -- 176204 0 0 4 0 0 ... sawasdee -- 420 10000 15000 8 0 0 |