Di Linux, ulimit adalah alat bawaan untuk menguruskan peruntukan sumber di peringkat global, kumpulan, dan pengguna. Untuk sistem berbilang pengguna seperti Linux, ciri seperti ini hampir mustahak dimiliki. Ia dapat mencegah penggunaan sumber daya sistem yang tidak diingini seperti RAM, dan kekuatan CPU.
Lihat cara menetapkan nilai ulimit secara kekal di Linux.
Nilai Ulimit
Ulimit menguatkan had yang telah ditentukan berapa banyak sumber yang boleh digunakan pengguna. Alat ini menggunakan fail konfigurasi tertentu sebagai inti untuk menetapkan nilai-nilai ulimit. Untuk kawalan yang lebih baik, lebih baik anda mengedit fail.
$ cat / etc / security / had.pengesahan
Terdapat dua jenis had yang boleh dikenakan: had lembut dan keras. Lebih baik menerangkan jenis ini dengan contoh yang mudah.
Katakan pentadbir sistem ingin pengguna tertentu berlegar di sekitar nilai tertentu. Di sini, pengguna boleh melebihi nilai jika perlu tetapi tidak terikat dengannya. Dalam kes ini, ia akan menjadi had lembut. Sebaliknya, jika pentadbir ingin menetapkan had dengan tegas, maka ini adalah had yang sukar.
Menggunakan ulimit
Ulimit adalah alat baris perintah. Inilah struktur asas perintah ulimit.
$ ulimitPaparkan semua had
Bendera "-a" akan menyenaraikan semua pilihan dan konfigurasi untuk pengguna tertentu. Sekiranya tidak ada pengguna yang ditentukan, ia akan mencetak had untuk pengguna semasa.
$ ulimit -a$ ulimit -a
Untuk menampilkan had lembut pengguna, gunakan bendera "-S".
Untuk menampilkan had keras pengguna, gunakan bendera "-H".
Ada kemungkinan untuk melihat had proses tertentu. Perinciannya terdapat dalam fail berikut. Perhatikan bahawa ia adalah fail unik untuk setiap proses yang sedang dijalankan. Tukar medan PID dengan PID proses sasaran.
Parameter had
Untuk menukar imbuhan, anda harus menyatakan jenis had yang ingin anda tentukan. Berikut senarai pendek dengan semua parameter yang ada yang boleh anda ubah. Hampir semuanya menentukan nilai maksimum setiap parameter.
- b: Ukuran penyangga soket
- c: Ukuran fail teras yang dibuat
- d: Ukuran segmen data proses
- e: Keutamaan penjadualan (nilai "bagus")
- f: Bilangan fail yang dibuat oleh shell
- i: Bilangan isyarat yang belum selesai
- l: Ukuran untuk mengunci memori
- m: Ukuran set kediaman
- n: Bilangan deskriptor fail terbuka
- p: Ukuran penyangga paip
- q: Bilangan bait dalam barisan mesej POSIX
- r: Keutamaan penjadualan masa nyata
- s: Ukuran timbunan
- t: masa CPU (dalam beberapa saat)
- T: Bilangan utas
- u: Jumlah proses yang tersedia untuk pengguna
- v: Jumlah memori maya yang tersedia untuk diproses
- x: Bilangan kunci fail
Tukar nilai ulimit buat sementara waktu
Ada kemungkinan untuk mengubah nilai ulimit untuk pengguna tertentu buat sementara waktu. Perubahan akan tetap berlaku sehingga pengguna log keluar, sesi tamat atau sistem dihidupkan semula. Di sini, saya akan menunjukkan contoh cara menetapkan nombor proses maksimum bagi pengguna.
Untuk menukar jumlah proses yang tersedia menjadi 12345, jalankan perintah berikut. Ini akan mengenakan had keras sementara kepada pengguna.
$ ulimit -u$ ulimit -u 12345
Lihat had sukar untuk mengesahkan.
Tukar nilai ulimit secara kekal
Seperti disebutkan sebelumnya, ulimit menggunakan file konfigurasi sistem yang menentukan nilai ulimit lalai. Dengan membuat perubahan pada fail ini, anda dapat mengubah nilai ulimit secara kekal untuk setiap pengguna.
Buka fail di editor teks kegemaran anda. Perhatikan bahawa fail harus dibuka dengan izin root agar perubahan disimpan.
$ sudo vim / etc / security / had.pengesahan
Di sini, entri fail mengikuti struktur berikut.
Mari kita buat pecahan cepat setiap bidang.
- domain: Nama pengguna, kumpulan, julat GUID, dll.
- jenis: Jenis had (lembut / keras)
- item: Sumber yang akan terhad, contohnya, ukuran teras, nproc, saiz fail, dll.
- nilai: Nilai had
Berikut senarai pendek semua item yang ada.
- inti: Mengehadkan saiz fail teras (dalam KB)
- cpu: masa CPU (dalam min)
- data: Saiz data (dalam KB)
- ukuran: Saiz fail (dalam KB)
- kunci: Kunci fail yang dapat dipegang oleh pengguna
- memlock: ruang alamat memori terkunci (dalam KB)
- nproc: Bilangan pemproses
- rtpio: Keutamaan masa nyata
- sigpending: Bilangan isyarat belum selesai
Untuk senarai lengkap item yang ada, lihat halaman had lelaki.pengesahan.
$ lelaki had.pengesahan
Sebagai contoh, entri berikut akan membatasi jumlah inti CPU yang dapat digunakan pengguna "Viktor" hingga 2.
Setelah diedit, simpan fail. Untuk melaksanakan perubahan, pengguna yang terlibat perlu log keluar dan masuk semula. Bergantung pada bagaimana ia dilaksanakan, mungkin juga memerlukan sistem untuk dihidupkan semula.
Pemikiran terakhir
Alat ulimit menawarkan kaedah pengurusan sumber yang kuat. Ia mudah tetapi kuat dalam apa yang dilakukannya. Apa sahaja yang anda lakukan, pastikan had yang akan anda laksanakan dimasukkan dengan betul. Sekiranya anda mencuba perkara ini buat pertama kalinya, maka cubalah mengujinya di mesin maya terlebih dahulu.
Terdapat lebih banyak perintah ulimit daripada apa yang telah saya bincangkan di sini. Sekiranya anda ingin mengetahui lebih lanjut, periksa arahan Linux ulimit.
Selamat pengkomputeran!