Ich habe mich gefragt, wie ich den /tmp
Endpunkt am besten im kurzlebigen Speicher /mnt
einer EC2-Instanz bereitstellen und dem ubuntu
Benutzer Standardschreibberechtigungen erteilen kann .
Einige schlagen vor, /etc/rc.local folgendermaßen zu bearbeiten:
mkdir -p /mnt/tmp && mount --bind -o nobootwait /mnt/tmp /tmp
Dies funktioniert jedoch bei mir nicht (Dateien unterscheiden sich).
Ich habe versucht, den Standard-fstab-Eintrag zu bearbeiten:
/dev/xvdb /mnt auto defaults,nobootwait,comment=cloudconfig 0 2
Ersetzen Sie / mnt durch / tmp und geben Sie ihm eine umask = 0777, dies funktioniert jedoch aufgrund von cloudconfig nicht.
Ich benutze Ubuntu 12.04. Vielen Dank.
ubuntu
amazon-ec2
ubuntu-12.04
fstab
Claudio Poli
quelle
quelle
touch
undls -l
angeben?/mnt/tmp
sollte dieselben Dateien zurückgeben/tmp
und hinzufügen, dass einetouch /tmp/testfile
vomubuntu
Benutzer ausgegebene Datei ohne Verwendung funktionieren solltesudo
.Antworten:
Es gibt ein paar Probleme mit dem ersten Vorschlag, den Sie auflisten, obwohl es so aussieht, als ob es in eine gute Richtung geht:
Aus Sicherheitsgründen sollte der
mkdir
Befehl das Verzeichnis mit dem im Modus gesetzten Sticky-Bit erstellen:Das
-o nobootwait
scheint nicht notwendig zu sein, da dies nicht gespeichert wird/mnt/fstab
.Daher würde ich empfehlen, dies zu versuchen in
/etc/rc.local
:Jeder Versuch, das Bind-Mount
/etc/fstab
einzufügen, führt zu Problemen, wenn Sie die Instanz stoppen / starten oder wenn Sie eine AMI erstellen und eine neue Instanz ausführen, da / mnt ein kurzlebiger Speicher ist und alle Inhalte (einschließlich des/mnt/tmp
Verzeichnisses) verschwinden .quelle
Ein robusterer Ansatz, da Sie Ubuntu ausführen, besteht darin, den Vorschlag von Eric Hammond in ein Upstart- Skript einzufügen und die Bindung sofort nach dem Mounten durchzuführen
/mnt
:Einige Server, wie Apache / Passenger, erstellen möglicherweise wichtige temporäre Dateien auf
/tmp
. Sobaldrc.local
- der letzte in der Startsequenz - ausgeführt wurde, wurden sie ausgeblendet und verwirrten die Server.quelle
Die Idee , ein Upstart-Skript zu verwenden, wie von Romulo Ceccon vorgeschlagen, ist großartig. Möglicherweise möchten Sie die Magie jedoch nicht in einem obskuren Skript verbergen. Es ist vollkommen in Ordnung, das Mount in fstab hinzuzufügen, z
Und das ist das Upstart-Skript:
Auf diese Weise können Sie jede Verzeichnisstruktur erstellen und was nicht im kurzlebigen Speicher.
Alles was übrig bleibt ist
mkdir -p /mnt/local{1..4}
ein Neustart (ohne würde ich / tmp nicht mounten, da Sie dort aktuelle Dateien verstecken würden).quelle
/mnt/local1
? Vielleicht ist das Montageereignis sicherer.chmod 1777
odermkir -p
in Upstart-Skripten zu tun .