|
|
Опубліковано 02.11.2021 14:39:36
|
|
|
|

У Linux ми можемо використовувати команду ulimit -n, щоб побачити максимальну кількість файлових дескрипторів, які може відкрити один процес (також враховуються з'єднання сокетів). системаЗначення за замовчуванням — 1024。
Для загальних застосувань (наприклад, Apache, системні процеси) 1024 цілком достатній. Однак він трохи розтягнутий для однопроцесних додатків, таких як Squid, MySQL і Java. Якщо кількість дескрипторів файлів, відкритих одним процесом, перевищує системно визначене значення, згадується повідомлення про помилку «занадто багато відкритих файлів».
Переглянути максимальну кількість обробок файлів, встановлених системою
LSOF (List Open Files) — це інструмент, який перелічує файли, що наразі відкриті в системі. У середовищі Linux все існує у вигляді файлів, через які можна отримати доступ не лише до загальних даних, а й до мережевих з'єднань і апаратного забезпечення. Отже, у фоновому режимі, таких як сокети Transmission Control Protocol (TCP) та User Datagram Protocol (UDP), система призначає дескриптор файлу додатку, незалежно від характеру файлу, який забезпечує спільний інтерфейс для взаємодії між додатком і базовою операційною системою. Оскільки список дескрипторів для відкритих файлів додатку містить багато інформації про сам додаток, наявність інструменту LSOF для перегляду цього списку буде дуже корисною для моніторингу системи та усунення несправностей.
Команда встановлення виглядає так:
Порахуйте загальну кількість файлових дескрипторів, які наразі відкриті в системі:
Способи перегляду кількості файлових дескрипторів, відкритих у процесі подачі заявки:
Set ulimit
Тимчасові налаштування
Насправді команда ulimit поділяється на м'які та жорсткі обмеження: плюс-h — це жорсткий ліміт, плюс-s — м'який ліміт. За замовчуванням відображаються м'які обмеження: якщо не додати -H або -S під час виконання команди ulimit для зміни, ці два параметри змінюються разом.
У чому різниця між м'якими та жорсткими лімітами?
Жорсткий ліміт — це фактичний ліміт, а м'який ліміт — це попереджувальний ліміт, який лише дає попередження.
Постійне місце дії
Значення ulimits є постійним, і файл конфігурації /etc/security/limits.conf має бути змінений
(Кінець)
|
Попередній:Як визначити, чи існує команда в Shell (Bash).Наступний:Linux chown змінює ім'я користувача та групу користувачів, до яких належить папка.
|