Wenn Sie mehrere Prozesse in Linux-Umgebungen verwalten, ist es ideal zu wissen, wie wir die maximale Anzahl offener Dateien definieren können, um eine viel genauere Kontrolle zu haben oder um die missbräuchliche Verwendung von Serverressourcen zu vermeiden. Daher ist es angebracht, dass wir immer die Möglichkeiten berücksichtigen, die unser System bietet, damit wir es effizienter verwalten können.
Das Limit für geöffnete Dateien in Linux- Distributionen kann dank des Befehls ulimit angepasst werden. Daher wird in diesem Lernprogramm heute anhand dieser Gelegenheit analysiert, wie die Anzahl der geöffneten Dateien in Linux ermittelt werden kann, um das Standardlimit zu erhöhen.
Als nächstes werden wir sehen, wie wir das festgelegte Limit von Dateien, die in Ubuntu Linux-Systemen geöffnet werden können, erweitern können.
1. Kennen Sie die aktuelle Dateibeschränkung in Linux Ubuntu
Der erste Schritt, den wir machen müssen, ist, genau zu wissen, welche Dateibegrenzung wir unter Linux öffnen können. In diesem Fall verwenden wir Ubuntu 17.04 Server. Um diesen Wert zu kennen, führen wir den folgenden Befehl aus:
cat / proc / sys / fs / file-max
Das angezeigte Ergebnis gibt die Anzahl der Dateien an, die ein Benutzer pro Anmeldung öffnen kann. Diese Anzahl ist in jeder Linux-Distribution variabel.
2. Kennen Sie die Grenzen von Hardware und Software in Linux Ubuntu
Ein weiterer wichtiger Aspekt, der berücksichtigt werden muss, ist die Kenntnis der Systemgrenzen auf Hardware- und Softwareebene. Dies wird durch die Ausführung der folgenden Befehle erreicht:
ulimit -Hn ulimit -Sn
3. Überprüfen Sie in Linux die Standardgrenzwerte für die Dateideskriptoren
Wenn wir bestimmte Anwendungen auf den Servern ausführen, ist es erforderlich, dass sie eine größere Anzahl von Dateibegrenzungen haben, da sie ständig Ereignisse oder Prozesse registrieren, die eine große Anzahl von Dateien betreffen. Wir können Anwendungen wie PHP, MySQL, MariaDB ua erwähnen. .
In diesen Fällen können wir das Limit erhöhen, indem wir die Datei fs.file-max mit dem Dienstprogramm sysctl bearbeiten .
Denken Sie daran, dass wir dank sysctl die Kernelparameter unter Linux konfigurieren können.
Um dies darzustellen, erhöhen wir das Limit der offenen Dateien auf 600.000. Dazu führen wir die folgende Zeile als Root-Benutzer aus:
sudo sysctl -w fs.file-max = 600000
Um zu überprüfen, ob das neue Limit korrekt festgelegt wurde, führen wir die folgende Zeile aus:
cat / proc / sys / fs / file-max
Wie wir sehen, wurde die Grenze von uns festgelegt.
Ein Aspekt, den Sie berücksichtigen sollten, ist, dass bei diesem Vorgang das festgelegte Limit nur bis zum nächsten Sitzungsstart verfügbar ist. Wenn dieses Limit also konstant sein soll, müssen Sie mit dem bevorzugten Editor auf die folgende Datei zugreifen:
sudo nano /etc/sysctl.conf
In der geöffneten Datei fügen wir am Ende die folgende Zeile hinzu:
fs.file-max = 600000
Wir speichern die Änderungen mit den Tasten:
+ O Strg + O
und wir verlassen den Editor mit den Tasten
+ X Strg + X
Wir können das Dateilimit erneut überprüfen, indem wir die folgende Zeile ausführen:
cat / proc / sys / fs / file-max
Es wird notwendig sein, die Sitzung zu schließen, um die Änderungen zu übernehmen, und wenn wir möchten, dass sie sofort vorgenommen werden, werden wir den folgenden Befehl ausführen:
sysctl -p
4. Legen Sie in Linux Ubuntu die Obergrenzen für offene Dateien pro Benutzer fest
Möglicherweise möchten wir bestimmte Grenzwerte für offene Dateien für einen bestimmten Benutzer in einer Domäne festlegen. Dazu müssen wir auf die folgende Konfigurationsdatei zugreifen:
sudo nano /etc/security/limits.conf
Im letzten Teil sehen wir die folgende Syntax:
<domain> <type> <item> <value>
Dort müssen wir den Benutzernamen, den Elementtyp und die zuzuweisende Grenze hinzufügen. Wir speichern die Änderungen und verlassen den Editor.
Auf diese Weise haben wir die Möglichkeit, die Benutzergrenzen für geöffnete Dateien in verschiedenen Linux-Distributionen und insbesondere in Ubuntu Server 17.04 festzulegen oder zu erhöhen.