


Bagaimana untuk mengehadkan sumber pengguna di Linux? Bagaimana cara mengkonfigurasi ULIMIT?
May 29, 2025 pm 11:09 PMSistem Linux mengehadkan sumber pengguna melalui perintah ULIMIT untuk mengelakkan penggunaan sumber yang berlebihan. 1. ULIMIT adalah arahan shell terbina dalam yang boleh mengehadkan bilangan deskriptor fail (-N), saiz memori (-V), kiraan thread (-u), dan lain-lain, yang dibahagikan kepada had lembut (nilai berkesan semasa) dan had keras (had atas maksimum). 2. Pengubahsuaian sementara menggunakan arahan ULIMIT secara langsung, seperti ULIMIT -N 2048, tetapi hanya sah untuk sesi semasa. 3. Untuk kesan kekal, ubah suai /etc/security/limits.conf dan fail konfigurasi PAM, dan tambah sesi yang diperlukan PAM_LIMITS.SO. 4. Perkhidmatan SystemD perlu menetapkan parameter seperti Limitnofile, LimitnProc dalam fail unit, dan sistem beban yang berlebihan berkuatkuasa.
Sistem Linux mengehadkan sumber pengguna, terutamanya melalui mekanisme yang disediakan oleh kernel untuk mengawal penggunaan sumber sistem proses. Antaranya, ulimit
adalah alat baris arahan yang biasa digunakan untuk menetapkan atau melihat sekatan sumber di bawah sesi shell semasa. Ia sesuai untuk menghalang pengguna atau program daripada menduduki terlalu banyak sumber, seperti memori, masa CPU, bilangan fail yang dibuka, dll.
Berikut adalah beberapa kaedah konfigurasi dan langkah berjaga -jaga yang biasa:
1. Apa itu Ulimit? Sumber apa yang boleh dibatasi?
ulimit
adalah arahan terbina dalam Linux Shell untuk mengawal had penggunaan sumber sistem. Apa yang mungkin dihadapi tetapi tidak terhad kepada:
- Bilangan maksimum deskriptor fail terbuka (
-n
) - Saiz memori maksimum yang boleh digunakan oleh satu proses (
-v
) - Bilangan maksimum benang (
-u
) - Masa CPU (
-t
) - Saiz ruang timbunan (
-s
)
Keterbatasan ini dibahagikan kepada had lembut dan had keras :
- Had lembut adalah nilai yang anda buat sekarang. Pengguna biasa hanya boleh menyesuaikan diri dengan nilai yang tidak melebihi had keras.
- Had keras ditetapkan oleh root dan tidak boleh dilampaui oleh pengguna biasa.
Sebagai contoh, untuk melihat had sumber pengguna semasa, anda boleh menggunakan:
ULIMIT -A
2. Bagaimana untuk mengubah suai tetapan ULIMIT buat sementara waktu?
Jika anda hanya mahu mengubah suai sekatan tertentu dalam sesi terminal semasa, anda boleh menggunakan arahan ulimit
secara langsung. Contohnya:
ULIMIT -N 2048 # Tetapkan bilangan fail terbuka ke 2048 ULIMIT -U 1024 # Sediakan hingga 1024 proses bagi setiap pengguna
Perhatikan bahawa pengubahsuaian ini hanya sah dalam sesi shell semasa, dan akan menjadi tidak sah selepas memulakan semula atau membuka terminal baru.
Di samping itu, beberapa sekatan hanya boleh dibangkitkan kepada pelbagai sekatan yang keras. Jika anda perlu memecahkan sekatan keras, anda perlu menggunakan kebenaran akar untuk mengubah suai mereka.
3. Bagaimana untuk berkuatkuasa secara kekal? Bagaimana cara menukar fail konfigurasi?
Untuk membuat tetapan ULIMIT berkuat kuasa setiap kali anda log masuk, anda perlu mengubah suai fail konfigurasi sistem.
Terdapat dua dokumen:
-
/etc/security/limits.conf
-
/etc/pam.d/common-session
(sistem debian) atau/etc/pam.d/login
(sistem redhat)
Tambahkan sesuatu seperti ini dalam limits.conf
:
* lembut nofile 4096 * keras nofile 8192 WWW-Data Soft NPROC 2048 www-data keras nproc 4096
Ini bermakna had lembut untuk semua pengguna ( *
) adalah 4096 deskriptor fail, dan had keras adalah 8192; Dan had proses untuk pengguna www-data
juga ditetapkan.
Di samping itu, pastikan modul PAM dimuatkan dengan pam_limits.so
dan tambahkannya ke /etc/pam.d/common-session
:
Sesi Diperlukan PAM_LIMITS.SO
Dengan cara ini, sistem akan menggunakan peraturan ULIMIT yang anda tetapkan setiap kali pengguna log masuk.
4. Bagaimana untuk menetapkan sekatan sumber untuk perkhidmatan SystemD?
Jika anda menggunakan perkhidmatan yang diuruskan melalui SystemD, seperti nginx, redis, dan skrip tersuai, anda tidak boleh bergantung pada limits.conf
, kerana perkhidmatan SystemD tidak mengikuti proses PAM.
Pada masa ini, sekatan sumber harus ditetapkan dalam fail unit perkhidmatan. Sebagai contoh, tambah /etc/systemd/system/myapp.service
:
[Perkhidmatan] LimitnOfile = 8192 LimitnProc = 4096
Kemudian tambah semula sistemD dan mulakan semula perkhidmatan:
Systemctl Daemon-reExec SystemCtl Mulakan semula MyApp
Ini akan membolehkan anda mengawal had sumber perkhidmatan tertentu secara individu.
Pada dasarnya itu sahaja. ULIMIT kelihatan mudah, tetapi perhatikan cara ia berkuatkuasa dan skop tindakan. Kadang -kadang anda menetapkannya tetapi tidak berkuatkuasa, mungkin kerana perkhidmatan tidak melalui proses PAM atau ditimpa oleh SystemD. Apabila menghadapi masalah, ingatlah untuk memeriksa log, atau gunakan perintah prlimit
untuk melihat batasan sebenar proses tertentu.
Atas ialah kandungan terperinci Bagaimana untuk mengehadkan sumber pengguna di Linux? Bagaimana cara mengkonfigurasi ULIMIT?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

ToconfigureabackupserverinNginx,addthe"backup"parametertoaserverintheupstreamblock,ensuringitonlyreceivestrafficwhenallotherserversareunavailable.1.Definethebackupserverusingthesyntax"serverbackup;"withintheupstreamblock.2.Combine

Selepas mengubah suai konfigurasi Nginx, anda harus terlebih dahulu menguji sintaks dan kemudian memuatkan semula perkhidmatan tersebut. 1. Gunakan Nginx-T untuk menyemak sintaks fail konfigurasi. Sekiranya "sintaksisok" dan "testissuccessful" cepat, ini bermakna ia betul; Sekiranya terdapat ralat, garis masalah tertentu akan dipaparkan. 2. Jika keizinan fail konfigurasi tinggi, anda perlu menggunakan Sudonginx-T untuk dilaksanakan. 3. Sahkan bahawa ujian sebenarnya dimuatkan. Anda boleh menentukan laluan melalui nginx-t-c/path/to/your/nginx.conf, atau melihat fail konfigurasi yang digunakan oleh proses utama melalui ps-ef | grepnginx. 4. Setelah ujian diluluskan, laksanakan perkhidmatan kelebihan beban Sudonginx untuk membuat konfigurasi baru berkuat kuasa

Pengubahsuaian ^~ digunakan dalam nginx untuk mengutamakan pemadanan url awalan yang ditentukan dan untuk mengelakkan ekspresi tetap berikutnya daripada padanan. Apabila URL yang diminta bermula dengan awalan ini, Nginx akan segera mengadopsi konfigurasi blok ini dan melangkau semua ungkapan biasa (lokasi ~ atau lokasi ~*) cek, tetapi tidak memerlukan perlawanan tepat seperti =. 1. Ia sesuai untuk situasi di mana pemprosesan laluan tertentu diperlukan (seperti sumber statik) dan elakkan ditimpa oleh peraturan biasa; 2. Ia sering digunakan untuk meningkatkan prestasi dan memastikan peraturan tertentu dilaksanakan terlebih dahulu; 3. Senario tipikal termasuk imej perkhidmatan, skrip, atau penghalaan API dalaman. Berbanding dengan pengubah lain: 4. Perlawanan awalan biasa akan terus memeriksa biasa; 5. Perlawanan tepat hanya akan digunakan untuk laluan penuh; 6. Perlawanan biasa akan masuk

Untuk mengkonfigurasi perkhidmatan SSL/TLS NGINX, anda perlu menyediakan sijil dan kunci peribadi dan menetapkan parameter yang berkaitan di ServerBlock. 1. Sediakan fail sijil: Dapatkan sijil dalam format .crt atau .pem dan kunci peribadi .key. Anda boleh menggunakan Let'sEncrypt atau organisasi komersil untuk mengeluarkannya, dan menggabungkan sijil perantaraan ke dalam fail bundle; 2. Konfigurasi ServerBlock: Tentukan Listen443SSL, SSL_Certificate Path As /etc/ssl/example.com.crt, dan ssl_certificate_key Path as /etc/ssl/example.com.k dalam fail konfigurasi tapak.

Untuk mengurangkan penggunaan memori REDIS, adalah perlu untuk mengoptimumkan struktur data, memampatkan data, menetapkan masa tamat tempoh yang munasabah, dan elakkan kunci yang berlebihan. Pertama, menggunakan struktur data yang cekap seperti hash, ziplist dan intset dapat menjimatkan ruang; kedua, memampatkan rentetan besar atau data JSON sebelum penyimpanan untuk mengurangkan jumlah; ketiga, menetapkan masa tamat tempoh yang sesuai untuk kunci dan membolehkan strategi penghapusan; Keempat, elakkan kunci pendua atau tidak perlu dan periksa kekunci besar secara teratur. Kaedah ini dapat mengurangkan penggunaan memori dengan berkesan.

Perintah penutupan Linux/macOS boleh ditutup, dimulakan semula, dan operasi masa melalui parameter. 1. Matikan mesin dengan serta -merta dan gunakan parameter sudoshutdownnow atau -H/-p; 2. Gunakan titik masa atau masa tertentu untuk penutupan, batalkan penggunaan -c; 3. Gunakan parameter -r untuk memulakan semula, menyokong permulaan semula; 4. Perhatikan keperluan untuk kebenaran sudo, berhati -hati dalam operasi jauh, dan elakkan kehilangan data.

Memasang Linux adalah cara yang berkesan untuk meningkatkan prestasi buku nota lama. Pertama, sahkan keserasian perkakasan, termasuk seni bina CPU, memori, cakera keras dan sokongan kad grafik; Sekiranya memori kurang daripada 2GB, disyorkan untuk memilih sistem ringan seperti Lubuntu dan Xubuntu; Gunakan Rufus atau Etcher untuk membuat cakera boot, dan mengesyorkan pengagihan seperti puppylinux dan linuxlite yang sesuai untuk produk lama; Sebelum pemasangan, anda perlu menyesuaikan tetapan BIOS, matikan boot cepat, dan perhatikan kaedah pembahagian dan isu pemandu; Selepas pemasangan, sistem perlu dikemas kini, perisian biasa seperti Firefox, LibreOffice, VLC perlu dipasang, dan pengurusan kuasa dan persekitaran desktop harus dioptimumkan untuk meningkatkan pengalaman pengguna.

Untuk mengambil bitcoin yang dibeli tahun lalu, anda mesti terlebih dahulu menentukan lokasi penyimpanannya dan mengambil kunci akses. Langkah -langkah khusus adalah seperti berikut: 1. Ingat dan periksa akaun pertukaran yang mungkin anda gunakan, seperti Binance, Ouyi, Huobi, Gate.io, Coinbase, Kraken, dan lain -lain, dan cuba log masuk atau mengambil kata laluan anda melalui e -mel; 2. Jika Bitcoin telah ditarik balik ke dompet peribadi anda, anda mesti mencari fail mnemonik, kunci peribadi atau dompet. Maklumat ini mungkin wujud dalam sandaran fizikal, peranti elektronik atau pengurus kata laluan; 3. Selepas mencari maklumat utama, gunakan aplikasi dompet arus perdana untuk memilih fungsi "pulih dompet" dan masukkan dengan tepat masukkan kekunci mnemonik atau peribadi untuk menyegerakkan aset; Petua Penting: Jangan mendedahkan kekunci mnemonik atau peribadi untuk memastikan persekitaran operasi yang selamat, dan dengan sabar dan sistematik memeriksa semua
