Cara menggunakan Linux untuk mengehadkan dan mengawal sumber sistem
Dalam sistem Linux, kita selalunya perlu mengehadkan dan mengawal sumber sistem untuk memastikan kestabilan dan keselamatan sistem. Artikel ini akan memperkenalkan cara menggunakan mekanisme kawalan sumber terbina dalam Linux untuk mengehadkan dan mengawal penggunaan sumber sistem. Kami akan memberi tumpuan kepada dua alatan yang biasa digunakan, cgroup (kumpulan kawalan) dan ulimit, serta contoh penggunaannya.
1. cgroup
cgroup ialah mekanisme pengurusan sumber yang disediakan oleh kernel Linux, kita boleh mengatur proses bersama-sama dan mengehadkan dan mengawal sumber untuk kumpulan proses ini. cgroups boleh mengawal dan mengehadkan penggunaan sumber sistem seperti CPU, memori dan I/O.
Pertama, kita perlu memasang alat cgroup. Pada kebanyakan pengedaran Linux, ia boleh dipasang menggunakan arahan berikut:
sudo apt-get install cgroup-tools
Kita boleh menggunakan arahan cgcreate untuk mencipta cgroup, contohnya, buat cgroup bernama mygroup:
sudo cgcreate -g cpu,memory:mygroup
Arahan di atas mencipta Cgroup bernama mygroup dengan kedua-dua CPU dan kekangan memori padanya.
Seterusnya, kita perlu menetapkan had sumber cgroup. Sebagai contoh, kami mengehadkan CPU untuk menggunakan maksimum 50% daripada kepingan masa dan mengehadkan memori untuk menggunakan maksimum 1GB memori:
sudo cgset -r cpu.cfs_quota_us=50000 -r memory.limit_in_bytes=1G mygroup
Arahan di atas mengehadkan CPU mygroup untuk menggunakan maksimum 50% daripada potongan masa dan hadkan memori untuk Menggunakan sehingga 1GB memori.
Akhir sekali, kita boleh menggunakan arahan cgclassify untuk menambah proses ke cgroup yang ditentukan. Sebagai contoh, tambahkan proses dengan proses PID 12345 ke kumpulan saya:
sudo cgclassify -g cpu,memory:mygroup 12345
Sekarang, proses dengan proses PID 12345 akan tertakluk kepada had sumber kumpulan saya.
2. ulimit
Selain cgroup, Linux juga menyediakan satu lagi alat kawalan sumber yang berkuasa. ulimit membolehkan kami mengehadkan sumber sistem yang boleh digunakan oleh pengguna tunggal.
Kita boleh menggunakan perintah ulimit untuk melihat tetapan had sumber semasa. Contohnya, lihat had saiz fail maksimum yang boleh digunakan oleh pengguna semasa:
ulimit -f
Kita boleh menggunakan arahan ulimit untuk menetapkan had sumber. Contohnya, untuk menetapkan had saiz fail maksimum kepada 1GB:
ulimit -f 1000000000
Arahan di atas menetapkan had saiz fail maksimum kepada 1GB.
Selain itu, kami juga boleh menggunakan arahan ulimit untuk menetapkan had sumber lain, seperti masa CPU, memori, bilangan fail yang dibuka, dsb.
Had sumber yang ditetapkan melalui arahan ulimit hanya sah untuk sesi semasa Setelah sesi tamat, tetapan akan menjadi tidak sah. Jika kami ingin mengubah suai had sumber secara kekal, kami boleh mengubah suai fail konfigurasi sistem /etc/security/limits.conf.
Sebagai contoh, jika anda ingin mengubah suai bilangan maksimum fail terbuka kepada 10,000, anda boleh menambah konfigurasi berikut pada /etc/security/limits.conf:
* hard nofile 10000
Konfigurasi di atas akan mengubah suai bilangan maksimum fail terbuka kepada 10,000.
Kesimpulan
Artikel ini memperkenalkan cara menggunakan Linux untuk had dan kawalan sumber sistem. Kami memberi tumpuan kepada dua alatan yang biasa digunakan, cgroup dan ulimit, dan memberikan contoh penggunaan yang sepadan. Dengan menggunakan alat ini secara rasional, kami boleh mengawal penggunaan sumber sistem dengan berkesan dan memastikan kestabilan dan keselamatan sistem. Saya harap artikel ini akan membantu pembaca yang menggunakan Linux untuk mengehadkan dan mengawal sumber sistem.
Rujukan:
Atas ialah kandungan terperinci Cara Menggunakan Linux untuk Had dan Kawalan Sumber Sistem. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!