การบริหารจัดการเนื้อที่ของดิสก์ให้กับผู้ใช้ด้วย Disk Quota

ในบางครั้งเราจำเป็นต้องมีการบริหารจัดการพื้นที่ของฮาร์ดดิสก์ในแต่ละพาร์ทิชัน ให้กับผู้ใช้งาน หรือกลุ่มผู้ใช้งาน เนื่องจากพื้นที่ของฮาร์ดดิสก์มีอยู่อย่างจำกัด ระบบบริหารจัดการดังกล่าวมีอยู่แล้วในระบบปฏิบัติการลินุกซ์ โดยมีชื่อว่า โควต้า (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 10000   15000 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

number of view: 669pixelstats trackingpixel

Leave a Reply

ค้นหา
ผู้เยี่ยมชมเว็บไซต์

เริ่มนับวันที่ 16 พ.ค. 2550