Większość wartości¹ limits.conf
jest limitami, które można ustawić za pomocą ulimit
polecenia powłoki lub setrlimit
wywołania systemowego. Są właściwościami procesu. Limity obowiązują niezależnie dla każdego procesu. W szczególności każdy proces może mieć do nofile
otwarcia plików. Nie ma ograniczeń co do liczby otwartych plików kumulowanych przez procesy użytkownika.
nproc
Granica jest trochę szczególny przypadek, że to będzie razem przez wszystkie procesy użytkownika. Niemniej jednak nadal ma zastosowanie do poszczególnych procesów: gdy proces wywołuje fork
utworzenie nowego procesu, wywołanie jest odrzucane, jeśli liczba procesów należących do euid procesu jest większa niż wartość procesu RLIMIT_NPROC
.
limits.conf
Strona mężczyzna wyjaśnia, że limity dotyczą sesji. Oznacza to, że wszystkie procesy w sesji będą miały te same limity (chyba że zostaną zmienione przez jeden z tych procesów). Nie oznacza to, że suma jest przetwarzana na procesy w sesji (nie jest to nawet coś, co śledzi system operacyjny - istnieje pojęcie sesji, ale jest ono bardziej szczegółowe, na przykład każda aplikacja X11 ma tendencję do kończenia we własnej sesji). Działa to tak, że proces logowania sam się określa pewne ograniczenia i są one dziedziczone przez wszystkie procesy potomne.
Đ Wyjątkiem są maxlogins
, maxsyslogins
i chroot
, który stosuje się jako część procesu logowania się do odrzucenia lub wpływ logowania.
limit.conf
zmieniony między godzinami otwarcia sesji lub jeśli zostaną ustawione inne limity (będą musiały być mniejsze z wyjątkiem roota).profile
.prlimit --pid $pid
każdy z nich, możesz skutecznie zmienić limit aktywnej sesji. Pamiętaj, że możesz to zrobić kilka razy, jeśli niektóre procesy zostaną rozwidlone podczas iteracji.RLIMIT_NPROC
ustawionymi na 2 w A i 3 w B. Następnie B może rozwidlić jeszcze jeden proces, ale A nie.