Linux Quota - cài đặt và cấu hình trên Ubuntu và Debian

theanh

Administrator
Nhân viên
Quota cho phép bạn chỉ định giới hạn về hai khía cạnh của lưu trữ đĩa: số lượng inode mà một người dùng hoặc một nhóm người dùng có thể sở hữu; và số lượng khối đĩa có thể được phân bổ cho một người dùng hoặc một nhóm người dùng. Ý tưởng đằng sau quota là người dùng bị buộc phải duy trì dưới giới hạn sử dụng đĩa của họ, tước đi khả năng sử dụng không gian đĩa không giới hạn trên một hệ thống. Quota được xử lý trên cơ sở mỗi người dùng, mỗi hệ thống tệp. Nếu có nhiều hơn một hệ thống tệp mà người dùng dự kiến sẽ tạo tệp, thì quota phải được đặt riêng cho từng hệ thống tệp. Có nhiều công cụ khác nhau giúp bạn quản lý và tự động hóa các chính sách hạn ngạch trên hệ thống của mình.

Cài đặt.​

Bạn chỉ cần tiếp tục và cài đặt hạn ngạch trên hệ thống Ubuntu bằng cách chạy:
Mã:
sudo apt-get install quota
đối với Debian, hãy sử dụng lệnh cài đặt mà không cần sudo:
Mã:
apt-get install quota
Lệnh này sẽ cài đặt hạn ngạch trên hệ thống của bạn. Bây giờ sau khi cài đặt, chúng ta sẽ chỉnh sửa tệp /etc/fstab
của mình trong phần thiết lập:
Mã:
sudo -
Mã:
nano /etc/fstab
Bạn có thể sẽ mở tệp fstab và nó sẽ trông giống như sau:


Bạn có thể thêm các dòng trên vào tệp fstab
của mình với ổ đĩa mong muốn được sử dụng theo hạn ngạch. Bạn có thể thay đổi usrquota thành grpquota theo yêu cầu. Tiếp theo, bạn sẽ phải khởi động lại hệ thống hoặc bạn có thể tiếp tục và nhập:
Mã:
mount -o remount /your_drive rw (lệnh này sẽ hoặc phân vùng của bạn mà hạn ngạch đã được chọn)
Lệnh trên sẽ có tác dụng thay vì khởi động lại. Bạn cũng có một giải pháp thay thế để chỉnh sửa tệp /etc/fstab, bạn có thể sử dụng:
Mã:
mount -o remount,usrquota /your_drive rw
Lệnh trên sẽ chỉ thêm ổ đĩa cụ thể vào hạn ngạch cho đến lần khởi động lại tiếp theo. Bạn có thể thay đổi usrquota thành grpquota theo yêu cầu. Nó cũng có thể được sử dụng nếu bạn chỉ đang thử công cụ hạn ngạch cho mục đích giáo dục. Bây giờ chúng ta đã gắn kết và khởi động hệ thống hạn ngạch trên ổ đĩa mong muốn. Bạn có thể muốn thêm quotacheck vào crontab, bạn có thể thực hiện điều đó bằng cách thực hiện:
Mã:
nano /etc/crontab
Và thêm lệnh sau:


Điều này sẽ giúp chạy quotacheck định kỳ (mỗi tuần). Mặc dù quotacheck hoạt động theo chu kỳ tự động.

Tạo hệ thống tệp quota.​

Sau khi mỗi hệ thống tệp được kích hoạt quota được gắn lại, hệ thống có khả năng hoạt động với hạn ngạch đĩa. < Tuy nhiên, bản thân hệ thống tệp vẫn chưa sẵn sàng hỗ trợ quota. Bước tiếp theo là chạy lệnh quotacheck.


Mã:
quotacheck -cug /your_drive
Tùy chọn -c chỉ định rằng các tệp quota sẽ được tạo cho mỗi hệ thống tệp có quota được kích hoạt, tùy chọn -u chỉ định kiểm tra quota người dùng và tùy chọn -g chỉ định kiểm tra quota nhóm. Sử dụng lệnh abobe mà không chỉ định -u hoặc -g sẽ dẫn đến tùy chọn mặc định là usrquota(-u). Bạn có thể xem các tùy chọn khác bên dưới:



Chỉ định hạn ngạch cho người dùng hoặc nhóm cụ thể.​

Trước khi tiếp tục với hạn ngạch, chúng ta sẽ phải biết về giới hạn cứng, giới hạn mềm và Inode mà chúng ta sẽ tìm hiểu thêm:

Giới hạn mềm:
Giới hạn mềm cho biết lượng đĩa sử dụng tối đa mà người dùng hạn ngạch có trên một phân vùng. Khi kết hợp với thời gian gia hạn, nó hoạt động như ranh giới, nơi người dùng hạn ngạch được đưa ra cảnh báo về việc vi phạm hạn ngạch sắp xảy ra khi vượt quá.
Giới hạn cứng:
Giới hạn cứng chỉ hoạt động khi thời gian gia hạn được thiết lập. Nó chỉ định giới hạn tuyệt đối về mức sử dụng đĩa, mà người dùng hạn ngạch không thể vượt quá giới hạn cứng của mình.
Thời gian gia hạn:
Được thực hiện bằng lệnh "edquota -t", thời gian gia hạn là giới hạn thời gian trước khi giới hạn mềm được áp dụng cho hệ thống tệp có bật hạn ngạch. Có thể sử dụng đơn vị thời gian là giây, phút, giờ, ngày, tuần và tháng.
Bạn có thể có hai tùy chọn để chỉ định hạn ngạch. Lệnh edquota
và lệnh setquota. Hãy bắt đầu với lệnh setquota, đây là trình chỉnh sửa hạn ngạch dòng lệnh. Hệ thống tệp, tên người dùng/nhóm và hạn ngạch mới cho hệ thống tệp này có thể được chỉ định trên dòng lệnh. Lưu ý rằng nếu một số được đưa vào vị trí của tên người dùng/nhóm, nó được coi là UID/GID.
Mã:
TÓM TẮT setquota [ -rm ] [ -u | -g ] [ -F quotaformat ] tên block-softlimit block-hardlimit inode-softlimit inode-hardlimit -a | hệ thống tệp... setquota [ -rm ] [ -u | -g ] [ -F quotaformat ] [ -p protoname ] tên -a | hệ thống tệp... setquota -b [ -rm ] [ -u | -g ] [ -F quotaformat ] -a | hệ thống tệp... setquota -t [ -u | -g ] [ -F quotaformat ] block-grace inode-grace -a | hệ thống tệp... setquota -T [ -u | -g ] [ -F quotaformat ] tên block-grace inode-grace -a | filesystem...
Bạn có thể sử dụng lệnh bằng cách nhập:
Mã:
setquota -u linux 100 200 10 15 -a /your_drive
Trong lệnh trên, bạn sẽ thiết lập giới hạn cho người dùng linux. Bạn có thể xem đầu ra hoặc hiệu ứng bằng cách nhập:
Mã:
repquota /your_drive

Bây giờ trong hình ảnh trên, người dùng linux đã vượt quá giới hạn của mình đối với cả khối và giới hạn tệp được chỉ định bởi dấu ++. Vì giới hạn mềm và cứng được đặt là 100 và đã sử dụng 31980 khối bộ nhớ nên trường hợp tương tự cũng xảy ra với các tệp. Bạn cũng có thể muốn khám phá thêm về lệnh "setquota", bạn có thể tiếp tục và nhập:
Mã:
man setquota


Bắt đầu bằng lệnh edquota
. Đây là một trình chỉnh sửa hạn ngạch. Một hoặc nhiều người dùng hoặc nhóm có thể được chỉ định trên dòng lệnh. Nếu một số được đưa ra tại vị trí của tên người dùng/nhóm, nó được coi là UID/GID. Đối với mỗi người dùng hoặc nhóm, một tệp tạm thời được tạo với biểu diễn ASCII của hạn ngạch đĩa hiện tại cho người dùng hoặc nhóm đó và sau đó một trình soạn thảo được gọi trên tệp đó. Sau đó, hạn ngạch có thể được sửa đổi, hạn ngạch mới được thêm vào, v.v. Đặt hạn ngạch thành không cho biết không nên áp dụng hạn ngạch nào. Bạn có thể sử dụng lệnh bằng cách nhập:
Mã:
edquota [I]username[/I] (đối với người dùng)
Mã:
edquota -g groupname (đối với nhóm)
Trình soạn thảo văn bản được xác định bởi biến môi trường EDITOR
được edquota sử dụng.


Nó trông giống như thế này hoặc ít giống như vậy. Cột đầu tiên là tên của hệ thống tệp có hạn ngạch được bật cho nó. Cột thứ hai hiển thị số lượng khối mà người dùng hiện đang sử dụng. Hai cột tiếp theo được sử dụng để đặt giới hạn khối mềm và cứng cho người dùng trên hệ thống tệp. Cột inodes hiển thị số lượng inode mà người dùng hiện đang sử dụng. Hai cột cuối cùng được sử dụng để đặt giới hạn inode mềm và cứng cho người dùng trên hệ thống tệp. Giới hạn khối cứng là lượng không gian đĩa tối đa tuyệt đối mà người dùng hoặc nhóm có thể sử dụng. Khi đạt đến giới hạn này, không thể sử dụng thêm không gian đĩa nào nữa. Giới hạn khối mềm xác định lượng không gian đĩa tối đa có thể sử dụng. Tuy nhiên, không giống như giới hạn cứng, giới hạn mềm có thể bị vượt quá trong một khoảng thời gian nhất định. Khoảng thời gian đó được gọi là thời gian gia hạn. Thời gian gia hạn có thể được biểu thị bằng giây, phút, giờ, ngày, tuần hoặc tháng. Nếu bất kỳ giá trị nào được đặt thành 0, giới hạn đó sẽ không được đặt. Trong trình soạn thảo văn bản, hãy thay đổi các giới hạn mong muốn. Bạn có thể kiểm tra thêm thông tin chi tiết trong các trang hướng dẫn:
Mã:
man edquota

Sau đó, bạn có thể tự kiểm tra giới hạn người dùng:
Mã:
quota username
Nó sẽ hiển thị đầu ra tương tự như sau:



Dấu * cho biết người dùng đã vượt quá giới hạn của mình. Các lệnh trên cũng có thể được sử dụng cho các nhóm:
Mã:
quota -g grpname (cho nhóm)
Đây là tất cả các lệnh chỉ định hạn ngạch. Bây giờ chúng ta hãy xem thêm một vài lệnh nữa.
Mã:
repquota /
Lệnh trên sẽ cung cấp cho bạn trạng thái đầy đủ của hạn ngạch của bạn.



Mã:
quotaon -a (khởi động hạn ngạch trên tất cả các hệ thống tệp.)
Đây là lệnh thông báo cho hệ thống rằng hạn ngạch đĩa nên được bật trên một hoặc nhiều hệ thống tệp. Các tệp hạn ngạch hệ thống tệp phải có trong thư mục gốc của hệ thống tệp đã chỉ định và được đặt tên là aquota.user
(đối với hạn ngạch người dùng phiên bản 2), quota.user (đối với hạn ngạch người dùng phiên bản 1), aquota.group (đối với hạn ngạch nhóm phiên bản 2) hoặc quota.group (đối với hạn ngạch nhóm phiên bản 1). Lệnh này được hệ thống sử dụng theo mặc định khi khởi động.
Mã:
quotaoff -a (dừng hạn ngạch trên tất cả các hệ thống tệp.)
Lệnh này thông báo cho hệ thống rằng các hệ thống tệp đã chỉ định phải tắt mọi hạn ngạch đĩa. Lệnh này được chạy theo mặc định trên hệ thống tại thời điểm tắt máy.
Đây sẽ là phần kết thúc cho hướng dẫn hạn ngạch của Linux.
 
Back
Bên trên