Admin Linux - Manajemen Kuota
Kuota disk CentOS dapat diaktifkan keduanya; memperingatkan administrator sistem dan menolak akses penyimpanan-disk lebih lanjut ke pengguna sebelum kapasitas disk terlampaui. Saat disk penuh, bergantung pada apa yang ada di disk, seluruh sistem dapat berhenti menderu hingga pulih.
Mengaktifkan Manajemen Kuota di CentOS Linux pada dasarnya adalah proses 4 langkah -
Step 1 - Aktifkan manajemen kuota untuk grup dan pengguna di / etc / fstab.
Step 2 - Pasang kembali sistem file.
Step 3 - Buat database Kuota dan buat tabel penggunaan disk.
Step 4 - Tetapkan kebijakan kuota.
Aktifkan Manajemen Kuota di / etc / fstab
Pertama, kami ingin membuat cadangan file / etc / fstab kami -
[root@centosLocal centos]# cp -r /etc/fstab ./
Kami sekarang memiliki salinan / etc / fstab kerja kami yang diketahui di direktori kerja saat ini.
#
# /etc/fstab
# Created by anaconda on Sat Dec 17 02:44:51 2016
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/cl-root / xfs defaults 0 0
UUID = 4b9a40bc-9480-4 /boot xfs defaults 0 0
/dev/mapper/cl-home /home xfs defaults,usrquota,grpquota 0 0
/dev/mapper/cl-swap swap swap defaults 0 0
Kami membuat perubahan berikut di bagian opsi / etc / fstab untuk volume atau Label di mana kuota akan diterapkan untuk pengguna dan grup.
- usrquota
- grpquota
Seperti yang Anda lihat, kami menggunakan xfsberkas sistem. Saat menggunakan xfs ada langkah manual tambahan yang terlibat./homeada di disk yang sama dengan /. Penyelidikan lebih lanjut menunjukkan / disetel untuk noquota , yang merupakan opsi pemasangan tingkat kernel. Kita harus mengkonfigurasi ulang opsi boot kernel kita.
root@localhost rdc]# mount | grep ' / '
/dev/mapper/cl-root on / type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
[root@localhost rdc]#
Konfigurasi Ulang Opsi Boot Kernel untuk Sistem File XFS
Langkah ini hanya diperlukan dalam dua kondisi -
- Saat disk / partisi tempat kami mengaktifkan kuota, menggunakan sistem file xfs
- Ketika kernel mengirimkan parameter noquota ke / etc / fstab saat boot
Step 1 - Buat cadangan / etc / default / grub.
cp /etc/default/grub ~/
Step 2- Modifikasi / etc / default / grub .
Ini adalah file defaultnya.
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=cl/root rd.lvm.lv=cl/swap rhgb quiet"
GRUB_DISABLE_RECOVERY="true"
Kami ingin mengubah baris berikut -
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=cl/root rd.lvm.lv=cl/swap rhgb quiet"
untuk
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=cl/root rd.lvm.lv
=cl/swap rhgb quiet rootflags=usrquota,grpquota"
Note- Penting untuk menyalin perubahan ini secara verbatim. Setelah kami mengkonfigurasi ulang grub.cfg, sistem kami akan gagal untuk boot jika ada kesalahan yang dibuat dalam konfigurasi. Silakan, coba bagian tutorial ini tentang sistem non-produksi.
Step 3 - Cadangkan grub.cfg kerja Anda
cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg.bak
Buat grub.cfg baru
[root@localhost rdc]# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.10.0-514.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-514.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-dbba7fa47f73457b96628ba8f3959bfd
Found initrd image: /boot/initramfs-0-rescuedbba7fa47f73457b96628ba8f3959bfd.img
done
[root@localhost rdc]#
Mulai ulang
[root@localhost rdc]#reboot
Jika semua modifikasi tepat, kita seharusnya tidak memiliki ketersediaan untuk menambahkan kuota ke sistem file xfs .
[rdc@localhost ~]$ mount | grep ' / '
/dev/mapper/cl-root on / type xfs (rw,relatime,seclabel,attr2,inode64,usrquota,grpquota)
[rdc@localhost ~]$
Kami telah melewati parameter usrquota dan grpquota melalui grub.
Sekarang, edit lagi / etc / fstab untuk memasukkan / sejak / home pada disk fisik yang sama.
/dev/mapper/cl-root/xfs
defaults,usrquota,grpquota 0 0
Sekarang mari aktifkan database kuota.
[root@localhost rdc]# quotacheck -acfvugM
Pastikan Kuota diaktifkan.
[root@localhost rdc]# quotaon -ap
group quota on / (/dev/mapper/cl-root) is on
user quota on / (/dev/mapper/cl-root) is on
group quota on /home (/dev/mapper/cl-home) is on
user quota on /home (/dev/mapper/cl-home) is on
[root@localhost rdc]#
Pasang kembali Sistem File
Jika partisi atau disk terpisah dari partisi yang di-boot secara aktif, kita dapat memasang ulang tanpa perlu melakukan boot ulang. Jika kuota telah dikonfigurasi pada disk / partisi yang di-boot di direktori root /, kami mungkin perlu melakukan boot ulang sistem operasi. Memaksa remount dan menerapkan perubahan, kebutuhan untuk memasang kembali filesystem mungkin berbeda-beda.
[rdc@localhost ~]$ df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/cl-root 22447404 4081860 18365544 19% /
devtmpfs 903448 0 903448 0% /dev
tmpfs 919308 100 919208 1% /dev/shm
tmpfs 919308 9180 910128 1% /run
tmpfs 919308 0 919308 0% /sys/fs/cgroup
/dev/sda2 1268736 176612 1092124 14% /boot
/dev/mapper/cl-var 4872192 158024 4714168 4% /var
/dev/mapper/cl-home 18475008 37284 18437724 1% /home
tmpfs 183864 8 183856 1% /run/user/1000
[rdc@localhost ~]$
Seperti yang bisa kita lihat, volume LVM sedang digunakan. Jadi mudah untuk hanya reboot. Ini akan memasang kembali / home dan memuat perubahan konfigurasi / etc / fstab ke dalam konfigurasi aktif.
Buat File Database Kuota
CentOS sekarang mampu bekerja dengan kuota disk di / home. Untuk mengaktifkan dukungan kuota penuh, kita harus menjalankanquotacheck perintah.
quotacheck akan membuat dua file -
- aquota.user
- aquota.group
Ini digunakan untuk menyimpan informasi kuota untuk disk / partisi yang mendukung kuota.
Berikut ini adalah sakelar cek-kuot yang umum.
Beralih | Tindakan |
---|---|
-u | Memeriksa kuota pengguna |
-g | Memeriksa kuota grup |
-c | Kuota harus diaktifkan untuk setiap sistem file dengan mengaktifkan kuota |
-v | Menampilkan keluaran verbose |
Tambahkan Batas Kuota Per Pengguna
Untuk ini, kami akan menggunakan perintah edquota, diikuti dengan nama pengguna -
[root@localhost rdc]# edquota centos
Disk quotas for user centos (uid 1000):
Filesystem blocks soft hard inodes soft hard
/dev/mapper/cl-root 12 0 0 13 0 0
/dev/mapper/cl-home 4084 0 0 140 0 0
Mari kita lihat setiap kolom.
Filesystem - Ini adalah kuota sistem file untuk pengguna yang diterapkan
blocks - Berapa banyak blok yang saat ini digunakan pengguna di setiap sistem file
soft- Atur blok untuk batas lunak. Batas lunak memungkinkan pengguna untuk membawa kuota untuk jangka waktu tertentu
hard- Atur blok untuk batas keras. Batas keras adalah total kuota yang diperbolehkan
inodes - Berapa banyak inode yang sedang digunakan pengguna
soft - Batas inode lunak
hard - Batas inode yang keras
Untuk memeriksa kuota kami saat ini sebagai pengguna -
[centos@localhost ~]$ quota
Disk quotas for user centos (uid 1000):
Filesystem blocks quota limit grace files quota limit grace
/dev/mapper/cl-home 6052604 56123456 61234568 475 0 0 [centos@localhost ~]$
Berikut adalah kesalahan yang diberikan kepada pengguna ketika batas kuota telah terlampaui.
[centos@localhost Downloads]$ cp CentOS-7-x86_64-LiveKDE-1611.iso.part ../Desktop/
cp: cannot create regular file ‘../Desktop/CentOS-7-x86_64-LiveKDE-
1611.iso.part’: Disk quota exceeded
[centos@localhost Downloads]$
Seperti yang bisa kita lihat, kita hampir mencapai kuota disk pengguna ini. Mari kita atur peringatan batas lunak. Dengan cara ini, pengguna akan mendapatkan pemberitahuan terlebih dahulu sebelum batas kuota berakhir. Dari pengalaman, Anda akan mendapatkan keluhan pengguna akhir saat mereka mulai bekerja dan perlu menghabiskan 45 menit untuk membersihkan file agar benar-benar mulai bekerja.
Sebagai Administrator, kami dapat memeriksa penggunaan kuota dengan file repquota perintah.
[root@localhost Downloads]# repquota /home
Block limits File limits
User used soft hard grace used soft hard grace
----------------------------------------------------------------------------------------
root -- 0 0 0 3 0 0
centos -+ 6189824 56123456 61234568 541 520 540 6days
[root@localhost Downloads]#
Seperti yang bisa kita lihat, centos pengguna telah melebihi kuota hard block mereka dan tidak dapat lagi menggunakan ruang disk di / home .
- + menunjukkan bahwa hard quota telah terlampaui pada sistem file.
Saat merencanakan kuota, perlu dilakukan sedikit penghitungan. Apa yang perlu diketahui oleh Administrator adalah: Berapa banyak pengguna di sistem? Berapa banyak ruang kosong untuk dialokasikan di antara pengguna / grup? Berapa banyak byte yang membentuk satu blok pada sistem file?
Tentukan kuota dalam hal blok sebagai terkait dengan ruang disk kosong. Direkomendasikan untuk meninggalkan buffer "aman" dari ruang kosong di sistem file yang akan tetap berada dalam skenario kasus terburuk: semua kuota terlampaui secara bersamaan. Ini terutama pada partisi yang digunakan oleh sistem untuk menulis log.