Linux'ta Kullanıcı Tarafından Çalıştırılan İşlemler için Sınırlar Nasıl Ayarlanır
Linux'un güzelliklerinden biri de onunla ilgili hemen hemen her şeyi kontrol edebilmenizdir. Bu, sistem yöneticisine sistemi üzerinde büyük bir kontrol sağlar ve sistem kaynaklarının daha iyi kullanılmasını sağlar.
Bazıları bunu yapmayı hiç düşünmemiş olsa da, Linux'ta tek bir kullanıcının ne kadar kaynak kullanabileceğini ve ne kadar süreyle kullanabileceğini sınırlayabileceğinizi bilmek önemlidir.
Ayrıca Okuyun: Linux'ta Açık Dosya Sayısı Sınırı Nasıl Artırılır?
Bu kısa konu başlığımızda kullanıcı tarafından başlatılan işlem sayısının nasıl sınırlandırılacağını ve mevcut limitlerin nasıl kontrol edilip değiştirileceğini size göstereceğiz.
Daha ileri gitmeden önce belirtmemiz gereken iki şey var:
- Kullanıcı sınırlarını değiştirmek için sisteminize kök erişiminizin olması gerekir
- Bu sınırları değiştirmeyi planlıyorsanız son derece dikkatli olmalısınız
Kullanıcı sınırlarını ayarlamak için aşağıdaki dosyayı düzenlememiz gerekecek:
/etc/security/limits.conf
Bu dosya, pam_module tarafından oluşturulan ulimit'i uygulamak için kullanılır.
Dosya aşağıdaki sözdizimine sahiptir:
<domain> <type> <item> <value>
Burada seçeneklerin her birini tartışmayı bırakacağız:
- Alan – buna kullanıcı adları, gruplar, kılavuz aralıkları vb. dahildir
- Tür – yumuşak ve katı sınırlar
- Öğe – sınırlanacak öğe – çekirdek boyutu, dosya boyutu, nproc vb.
- Değer – bu, verilen sınıra ilişkin değerdir
Bir limit için iyi bir örnek:
@student hard nproc 20
Yukarıdaki satır, "öğrenci"
grubunda maksimum 20 işlemlik kesin bir sınır belirler.
Belirli bir sürecin sınırlarını görmek istiyorsanız sınırlar dosyasını şu şekilde "cat" yapabilirsiniz:
cat /proc/PID/limits
PID gerçek işlem kimliği olduğunda, ps komutunu kullanarak işlem kimliğini öğrenebilirsiniz. Daha ayrıntılı açıklama için - Çalışan Linux İşlemlerini Bulma ve Kullanıcı Başına İşlem Limitlerini Ayarlama başlıklı makalemizi okuyun.
İşte bir örnek:
cat /proc/2497/limits
Örnek Çıktı
Limit Soft Limit Hard Limit Units
Max cpu time unlimited unlimited seconds
Max file size unlimited unlimited bytes
Max data size unlimited unlimited bytes
Max stack size 8388608 unlimited bytes
Max core file size 0 unlimited bytes
Max resident set unlimited unlimited bytes
Max processes 32042 32042 processes
Max open files 1024 4096 files
Max locked memory 65536 65536 bytes
Max address space unlimited unlimited bytes
Max file locks unlimited unlimited locks
Max pending signals 32042 32042 signals
Max msgqueue size 819200 819200 bytes
Max nice priority 0 0
Max realtime priority 0 0
Max realtime timeout unlimited unlimited us
Tüm satırlar hemen hemen kendini açıklayıcı niteliktedir. Ancak limits.conf dosyasına girebileceğiniz ayarlar hakkında daha fazla bilgi edinmek isterseniz burada verilen kılavuza göz atabilirsiniz.
Herhangi bir sorunuz veya yorumunuz varsa, lütfen bunları aşağıdaki yorum bölümüne göndermekten çekinmeyin.