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:

  1. Kullanıcı sınırlarını değiştirmek için sisteminize kök erişiminizin olması gerekir
  2. 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.