Verzeichnisgröße beschränken

Verzeichnisgröße beschränken

Ich installiere ein Programm auf meinem Linux-Server und es speichert Daten lokal für eine Woche. Es kann jedoch manchmal ein Fehler auftreten, der das Löschen der Daten verhindert.

Um dies zu verhindern, erstelle ich bei der Installation auf einem Unix-Server einfach ein neues Dateisystem der angegebenen Größe. Das Dateisystem auf meinem Linux-Server wurde jedoch so erstellt, dass es die vollständige Partition enthält. Gibt es eine Möglichkeit, die maximale Größe für ein Verzeichnis festzulegen?

Wenn es sich außerdem um freien Speicherplatz in der Partition handelt, wäre es dann besser, ein neues Dateisystem zu erstellen oder die oben genannten Einschränkungen zu verwenden?

Danke, Alex

Antwort1

Ich bin mir nicht sicher, wie man die Größe eines einzelnen Verzeichnisses begrenzen kann. Sie könnten einen neuen Benutzer erstellen, ihm ein Kontingent zuweisen und den Prozess dann unter diesem Benutzer ausführen, aber ich vermute, das ist nicht das, wonach Sie suchen.

Wie Sie andeuten, können Sie ein Dateisystem als „Datei“ erstellen und es als Ausgabeverzeichnis für diese App mounten. Dadurch wird sichergestellt, dass es nie auf Ihr normales Dateisystem überläuft:

dd if=/dev/zero of=~/disk_image_file count=$size_in_blocks
mkfs -t ext3 -q ~/disk_image_file
mkdir -p ~/mnt/app1/log
mount -o loop=/dev/loop0 ~/disk_image_file ~/mnt/app1/log

Antwort2

Sie suchen nach Kontingenten. Ja, es ist durchaus möglich, auf den meisten, wenn nicht allen Unix-Dateisystemen, Kontingente zu implementieren.

Folgendes sollten Sie lesen:http://www.faqs.org/docs/Linux-mini/Quota.html Sie müssen keine Kernelkonfiguration vornehmen. Bei halbwegs modernen Systemen ist dies wahrscheinlich bereits in der Distribution aktiviert.

Kommen Sie wieder, wenn Sie Probleme haben.

verwandte Informationen