Maximale Dateihandles unter Linux
Die Dateihandles stellen die maximale Nummer dar, die einzelne Linux -Benutzer für geöffnete Dateien pro Sitzung haben können. Der/proc/sys/fs/file-max definiert das Dateilimit. Wenn Sie vor einem Neustart ein temporäres Limit festlegen müssen, ist dies die zu bearbeitende Datei.
Verwenden Sie den folgenden Befehl, um die aktuelle Grenze für die Anzahl der geöffneten Dateien in einem Linux -Host anzuzeigen:
$ cat/proc/sys/fs/file-max
Der Maximalwert der in diesem Fall aufgeführten Open -Datei -Deskriptoren ist für den Linux -Host gilt. Verschiedene Benutzer können unterschiedliche Werte haben als der Host.
Alternativ können Sie den folgenden Befehl verwenden:
$ sysctl fs.Dateimax
Der Wert in der obigen Ausgabe stellt die maximale Grenze für einen normalen Benutzer pro Anmeldesitzung dar. Sie können auch die weichen und harten Werte für die Deskriptoren mit dem erhalten Ulimit Befehl, der mehr Kontrolle über Shell -Ressourcen und -Prozesse bietet, die von ihm gestartet wurden.
Verwenden Sie für die harten Werte den folgenden Befehl:
$ ulimit -hn
Verwenden Sie in ähnlicher Weise den folgenden Befehl für weiche Werte:
$ ulimit -sn
Ändern der Datei/proc/sys/fs/file-max
Einige Anwendungen wie die Oracle -Datenbank erfordern einen höheren laufenden Bereich für die Dateideskriptoren. In diesem Fall müssen Sie die maximale aktuelle Grenze für die offenen Dateien ändern, um die Kapazität zu erhöhen. Wenn Sie diese Grenze ändern, ändern Sie die Kernelvariable/Proc/sys/fs/Datei-Max, und Sie können dies auf zwei Arten erreichen.
Setzen Sie für die erste Methode den Wert direkt aus der Befehlszeile. Zum Beispiel, um den Bereich auf festzulegen 324567, Der Befehl wäre der folgende:
$ sudo sysctl -W fs.Dateimax = 324567
Beachten Sie, dass Sie über Administratorrechte verfügen müssen, damit dies funktioniert. Überprüfen Sie die neue Grenze wie bei der Überprüfung der maximalen Grenze.
Verwenden Sie sie für die nächste Methode nur, wenn Sie eine neue maximale Grenze für die geöffneten Dateien in Ihrem System dauerhaft festlegen möchten. Die erste zuvor gezeigte Methode wird nach einem Neustart auf die Standardwerte zurückgesetzt.
Um mit der dauerhaften Methode fortzufahren, müssen Sie einen Texteditor wie verwenden Nano oder vi und bearbeiten die /etc/sysctl.Conf Datei. Lassen Sie uns für unseren Fall das VI -Bearbeiten verwenden. Der Befehl lautet wie folgt:
$ vi /etc /sysctl.Conf
Ergänzen Sie die fs.Dateimax = 324567 Mit dem neuen Wert der Wahl. Speichern und beenden Sie die Datei. Die neuen Werte werden auch nach einem Neustart bestehen bleiben.
Darüber hinaus müssen Sie sich von Ihrem System abmelden und sich wieder anmelden, um die Änderungen zu beeinflussen. Aus Alternativ führen Sie den folgenden Befehl aus:
$ sysctl -p
Stellen Sie schließlich sicher, dass das neue Limit unter Verwendung des vorherigen Befehls festgelegt wird oder den Inhalt des /proc/sys/fs/file-max Verwenden des CAT -Befehls.
$ cat/proc/sys/fs/file-max
Einstellen von FD -Grenzen der Benutzerebene
Die vorherigen Befehle setzen die Dateideskriptoren (FD) für das gesamte Hostsystem. Sie müssen jedoch nicht immer das gesamte System ändern. Manchmal müssen Sie möglicherweise den spezifischen Benutzer angeben, der möglich ist.
Um einen bestimmten Benutzer zu ändern, fügen Sie die Grenze zu der hinzu /etc/Sicherheit/Grenzen.Conf.
Verwenden Sie einen beliebigen Editor, um die Datei zu öffnen und die Änderungen vorzunehmen. Für unser Beispiel verwenden wir VI und setzen die Soft FD -Grenzen für einen benannten Benutzer fest Benutzer1.
$ sudo vi/etc/Sicherheit/Grenzen.Conf
Sie können überprüfen, ob die Softgrenzen, die wir für den spezifischen Benutzer hinzugefügt haben, mithilfe der folgenden Befehle zu diesem Benutzerkonto gearbeitet haben:
$ su user1
$ ulimit -sn
Der -Sn ist für die weichen Grenzen. In der folgenden Ausgabe stellen wir fest, dass der Wert auf den in der Konfigurationsdatei definierten Wert eingestellt wird. Implizit haben wir die Dateideskriptoren für einen bestimmten Benutzer erfolgreich geändert.
Abschluss
Das ist es! Wir haben gesehen, wie man das modifiziert /proc/sys/fs/file-max Um das maximale Grenzwert für die geöffneten Dateien in einem Linux -Host anzuzeigen und zu bearbeiten. Darüber hinaus haben wir gesehen.