
Aufgrund eines RAM-Mangels unter Debian muss ich /tmp auf ein SSD-Laufwerk verschieben. Aber ich weiß immer noch nicht, wie ich das machen soll, damit die Programme, die es verwenden, weiterhin unter dem Pfad /tmp darauf zugreifen können.
Im Grunde möchte ich also /tmp von der Ramdisk nach z. B. /home/tmp verschieben. Und über /tmp darauf zugreifen können
Antwort1
systemctl mask tmp.mount
Dieser Befehl weist Sie an, systemd
das RAM-basierte Dateisystem ( ) nicht auf /tmp zu mounten tmpfs
. Um die Änderung anzuwenden, müssen Sie das System anschließend neu starten.
In den meisten Fällen ist dies alles, was Sie tun müssen. Es ist nicht notwendig, /tmp nach /home/tmp oder sonst wo umzuleiten. Diese Methode wird in offiziellensystemd-Dokumentation --
Ich möchte lediglich das durch tmpfs gesicherte /tmp loswerden!
Sie haben drei Möglichkeiten:
- Deaktivieren Sie jegliches Mounten von /tmp, so dass es sich auf demselben physischen Dateisystem wie das Stammverzeichnis befindet. Führen Sie dazu Folgendes aus:
systemctl mask tmp.mount
- Hängen Sie ein anderes physisches Dateisystem in /tmp ein. Erstellen Sie dazu einfach einen Eintrag dafür in /etc/fstab, wie Sie es für jedes andere Dateisystem tun würden.
- Behalten Sie /tmp, aber vergrößern/verkleinern Sie es. Erstellen Sie dazu einfach einen Eintrag dafür in /etc/fstab, wie Sie es für jedes andere tmpfs-Dateisystem tun würden, und verwenden Sie die richtige size=-Option.
Warum ist es nicht notwendig, /tmp zB nach /home/tmp umzuleiten?
Das obige sollte /tmp als beschreibbares Verzeichnis im /
Root-Dateisystem hinterlassen. Software für Debian oder die meisten anderen Linux-DistributionensollenVerwenden Sie /tmp nur für eine kleine Anzahl von Dateien, sodass ich mir keine Sorgen machen muss, dass der Speicherplatz im Root-Dateisystem knapp wird. Diese Anforderung scheint hauptsächlich aus der Idee abzuleiten, dass /tmp ein RAM-Dateisystem sein kann :-).
- https://systemd.io/TEMPORARY_DIRECTORIES.html
- Was ist der Unterschied zwischen /tmp und /var/tmp?[unix.stackexchange.com]
Sie müssen sich keine Sorgen machen, dass sich /tmp mit der Zeit mit veralteten Dateien füllt. /tmp wird beim Booten automatisch bereinigt:
$ cat /usr/lib/tmpfiles.d/tmp.conf
# This file is part of systemd.
#
# systemd is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or
# (at your option) any later version.
# See tmpfiles.d(5) for details
# Clear tmp directories separately, to make them easier to override
D /tmp 1777 root root -
#q /var/tmp 1777 root root 30d
# There are more lines here, but they are not important to this answer
# ...