Lệnh quotaon trong Linux

Giới thiệu

Trong lab này, chúng ta sẽ khám phá lệnh quotaon của Linux và các ứng dụng thực tế của nó để quản lý hạn ngạch đĩa. Lab bao gồm giới thiệu về quản lý hạn ngạch đĩa, bật hạn ngạch đĩa trên một hệ thống file và giám sát và quản lý hạn ngạch đĩa của người dùng. Chúng ta sẽ học cách thiết lập và cấu hình quản lý hạn ngạch đĩa, cũng như cách giám sát và quản lý việc sử dụng đĩa của người dùng trên hệ thống Linux. Lab cung cấp các hướng dẫn từng bước và các ví dụ thực tế để giúp bạn hiểu và áp dụng quản lý hạn ngạch đĩa một cách hiệu quả.

Giới thiệu về Quản lý Hạn ngạch Đĩa

Trong bước này, chúng ta sẽ khám phá khái niệm quản lý hạn ngạch đĩa trong Linux. Hạn ngạch đĩa là một hệ thống cho phép các systemadmin giới hạn lượng không gian đĩa mà một người dùng hoặc nhóm có thể sử dụng trên một hệ thống file.

Đầu tiên, hãy kiểm tra mức sử dụng đĩa hiện tại trên hệ thống file:

df -h

Ví dụ đầu ra:

Filesystem      Size  Used Avail Use% Mounted on
overlay         39G   16G   22G  42% /
tmpfs           64M     0   64M   0% /dev
tmpfs           16G     0   16G   0% /sys/fs/cgroup
shm             64M     0   64M   0% /dev/shm
/dev/sda1       39G   16G   22G  42% /
tmpfs           16G     0   16G   0% /run
tmpfs           16G     0   16G   0% /var/run
tmpfs           16G     0   16G   0% /var/lib/docker
overlay         39G   16G   22G  42% /var/lib/docker/overlay2
tmpfs           16G     0   16G   0% /sys/fs/cgroup

Đầu ra hiển thị mức sử dụng đĩa hiện tại trên hệ thống file. Trong ví dụ này, hệ thống file root (/) đang sử dụng 42% dung lượng đĩa khả dụng.

Tiếp theo, hãy bật quản lý hạn ngạch đĩa trên hệ thống file root:

sudo apt-get update
sudo apt-get install -y quota
sudo quotacheck -cug /
sudo quotaon -a

Lệnh quotacheck quét một hệ thống file, xây dựng một bảng về mức sử dụng đĩa hiện tại và lưu trữ nó trong bộ nhớ kernel của hệ thống file. Lệnh quotaon bật quản lý hạn ngạch đĩa trên hệ thống file được chỉ định.

Bây giờ, hãy xác minh rằng quản lý hạn ngạch đĩa đã được bật:

sudo quotaon -a

Ví dụ đầu ra:

/: quotas turned on

Đầu ra xác nhận rằng quản lý hạn ngạch đĩa đã được bật trên hệ thống file root (/).

Bật Hạn ngạch Đĩa trên một Hệ thống File

Trong bước này, chúng ta sẽ học cách bật hạn ngạch đĩa trên một hệ thống file cụ thể.

Đầu tiên, hãy tạo một thư mục mới và gắn nó như một hệ thống file riêng biệt:

sudo mkdir /data
sudo mount -t tmpfs tmpfs /data

Bây giờ, hãy bật quản lý hạn ngạch đĩa trên hệ thống file /data:

sudo quotacheck -cug /data
sudo quotaon /data

Lệnh quotacheck quét hệ thống file /data, xây dựng một bảng về mức sử dụng đĩa hiện tại và lưu trữ nó trong bộ nhớ kernel của hệ thống file. Lệnh quotaon bật quản lý hạn ngạch đĩa trên hệ thống file /data.

Hãy xác minh rằng quản lý hạn ngạch đĩa đã được bật trên hệ thống file /data:

sudo quotaon -a

Ví dụ đầu ra:

/: quotas turned on
/data: quotas turned on

Đầu ra xác nhận rằng quản lý hạn ngạch đĩa đã được bật trên cả hệ thống file root (/) và hệ thống file /data.

Tiếp theo, hãy đặt giới hạn hạn ngạch đĩa cho một người dùng. Trong ví dụ này, chúng ta sẽ sử dụng người dùng labex:

sudo edquota labex

Thao tác này sẽ mở trình chỉnh sửa hạn ngạch, nơi bạn có thể đặt giới hạn mềm và giới hạn cứng cho mức sử dụng đĩa của người dùng. Ví dụ:

Disk quotas for user labex (uid 1000):
  Filesystem  blocks  soft  hard  inodes  soft  hard
  /data         0       5000  6000    0      0     0

Trong ví dụ này, giới hạn mềm cho hệ thống file /data được đặt thành 5000 blocks và giới hạn cứng được đặt thành 6000 blocks.

Giám sát và Quản lý Hạn ngạch Đĩa của Người dùng

Trong bước cuối cùng này, chúng ta sẽ học cách giám sát và quản lý hạn ngạch đĩa của người dùng.

Đầu tiên, hãy kiểm tra mức sử dụng hạn ngạch đĩa hiện tại cho người dùng labex:

sudo repquota /data

Ví dụ đầu ra:

*** Report for user quotas on device /data
Block grace time: 7days; Inode grace time: 7days
                        Block limits                File limits
User            used    soft    hard  grace    used  soft  hard  grace
---------------------------------------------------------------------
labex        --      0     5000    6000            0      0      0

Lệnh repquota hiển thị mức sử dụng hạn ngạch đĩa hiện tại cho hệ thống file được chỉ định. Trong ví dụ này, người dùng labex đã sử dụng 0 blocks trong giới hạn mềm 5000 block và giới hạn cứng 6000 block trên hệ thống file /data.

Bây giờ, hãy mô phỏng một tình huống trong đó người dùng labex vượt quá hạn ngạch đĩa của họ:

dd if=/dev/zero of=/data/bigfile.txt bs=1M count=6000

Lệnh này tạo một file 6000 MB trong thư mục /data, file này sẽ vượt quá hạn ngạch đĩa của người dùng labex.

Hãy kiểm tra lại mức sử dụng hạn ngạch đĩa:

sudo repquota /data

Ví dụ đầu ra:

*** Report for user quotas on device /data
Block grace time: 7days; Inode grace time: 7days
                        Block limits                File limits
User            used    soft    hard  grace    used  soft  hard  grace
---------------------------------------------------------------------
labex        *  6000    5000    6000  1day        0      0      0

Đầu ra cho thấy rằng người dùng labex đã vượt quá giới hạn mềm là 5000 blocks và hiện đang trong thời gian ân hạn là 1 ngày để giảm mức sử dụng đĩa của họ.

Để quản lý hạn ngạch đĩa của người dùng, bạn có thể sử dụng các lệnh sau:

sudo edquota labex  ## Edit the user's disk quota limits
sudo quota -v labex ## Display the user's current disk quota usage
sudo quota -l labex ## Display the user's disk quota limits

Lệnh edquota cho phép bạn sửa đổi giới hạn hạn ngạch đĩa của người dùng, trong khi lệnh quota cho phép bạn xem mức sử dụng và giới hạn hạn ngạch đĩa hiện tại của người dùng.

Tóm tắt

Trong lab này, đầu tiên chúng ta đã khám phá khái niệm quản lý hạn ngạch đĩa trong Linux, cho phép các systemadmin giới hạn lượng không gian đĩa mà một người dùng hoặc nhóm có thể sử dụng trên một hệ thống file. Sau đó, chúng ta đã học cách bật quản lý hạn ngạch đĩa trên hệ thống file root bằng cách cài đặt các gói cần thiết, chạy lệnh quotacheck để xây dựng một bảng về mức sử dụng đĩa hiện tại và bật quản lý hạn ngạch đĩa bằng lệnh quotaon. Cuối cùng, chúng ta đã học cách bật quản lý hạn ngạch đĩa trên một hệ thống file riêng biệt bằng cách tạo một thư mục mới, gắn nó như một hệ thống file riêng biệt và bật quản lý hạn ngạch đĩa trên hệ thống file đó.

400+ câu lệnh phổ biến trong Linux