SuSE GmbH

SuSE Support-Datenbank

Titel: ulimit für Dateigröße konfigurieren

----------

Übersicht o Stichwortsuche o History o Versionen o Kategorien o Alle Artikel

----------

ulimit für Dateigröße konfigurieren

Symptom:

Der Versuch, große Dateien zu erzeugen, endet mit Fehlermeldungen wie

File too big

Das Kommando

$ ulimit -Hf

das den hard limit (in kByte) für die Größe neu erzeugter Dateien anzeigt, weist für diesen limit einen unzureichend kleinen Wert aus (z. B. 1048576 für 1 GByte, während Dateien bis zu 2 GByte bearbeitet werden sollen). Der limit läßt sich nicht erhöhen.

Ursache:

Der hard limit für die Dateigröße wird am Beginn einer Sitzung gesetzt durch /bin/login, das noch mit root-Rechten läuft. Normale User (außer root) können diesen Limit nur verringern, nicht erhöhen. Auch ein Kommando dafür in der /etc/profile, der .bash_login oder einer anderen Initialisierungsdatei für die Shell, nützt nichts, da diese Dateien von der Shell mit normalen User-Rechten abgearbeitet werden.

Lösung (SuSE Linux Versionen ab 6.2)

SuSE Linux ab Version 6.2 verwendet PAM (Pluggable Authentication Modules); vgl. auch http://sdb.suse.de/sdb/de/html/kukuk_pam.html

Im PAM-System werden die ulimits für Dateigröße konfiguriert in der Datei /etc/security/limits.conf (nicht mehr wie früher in /etc/login.defs). Diese Datei enthält auch ausführlichen Kommentartext zur Syntax sowie (auskommentierte) Beispieleinträge. Beispielsweise läßt sich die maximale Dateigröße für einen User diskhog auf das ext2fs-Maximum von knapp 2 GByte = 2 097 151 kByte (vgl. unten) erhöhen durch den Eintrag:

diskhog   hard   fsize   2097151

Lösung (ältere SuSE Linux Versionen bis 6.1)

/bin/login entnimmt den Wert für diesen limit der Datei /etc/login.defs(5): und zwar dem Eintrag

ULIMIT xxxxxxx

Achtung! Die Größenangabe erfolgt hier, anders als beim ulimit Kommando, in Sektoren zu 512 Byte! Nach einer Neuinstallation lautet dieser Eintrag:

ULIMIT 2097152

Ein User mit Schreibrecht auf /etc/login.defs (das sollte i. a. nur root sein!) kann diesen Eintrag ändern. Dies wirkt sich unverzüglich aus auf alle Sitzungen, die danach über /bin/login gestartet werden.

Der größte sinnvolle Wert richtet sich nach der maximal möglichen Dateigröße in den verwendeten Dateisystemen. Beim ext2-Dateisystem ist sie 2 GByte - 1 kByte, entsprechend einem Wert von

ULIMIT 4194302

----------

Siehe auch:

----------

Stichwörter: ULIMIT, DATEIGRÖßE, FILE TOO BIG, LOGIN.DEFS, PAM

----------

Kategorien: Linux

----------

Übersicht o Stichwortsuche o History o Versionen o Kategorien o Alle Artikel

----------

SDB-kgw_file-ulimit, Copyright SuSE GmbH, Nuremberg, Germany - Version: 23. May 1997
SuSE GmbH - Zuletzt generiert: 10. Jan 2000 12:35:48 by kgw with sdb_gen 1.00.0