/ Tmp versehentlich gelöscht

9

Ich bin aus Versehen gerannt sudo rm -r /tmp, ist das ein Problem?
Ich habe es mit neu erstellt. sudo mkdir /tmpBehebt das das Problem?

Nachdem ich das Verzeichnis neu erstellt habe, kann ich im Abschnitt " Orte " in der Seitenleiste von nautilus in Ubuntu 14.04 / tmp sehen, das vorher nicht vorhanden war. Ist das ein Problem?

Eine letzte Sache, muss ich rennen sudo chown $USER:$USER /tmp, um es so zugänglich zu machen, wie es vorher war. Würde es danach irgendwelche Nebenwirkungen geben?

Übrigens, ich bekomme diesen scheinbar verwandten Fehler, wenn ich versuche, die automatische Vervollständigung von Bash zu verwenden

bash: temporäre Datei für here-document kann nicht erstellt werden: Berechtigung verweigert

Amr Ayman
quelle

Antworten:

12

/tmpkann in den meisten Fällen als typisches Verzeichnis angesehen werden. Sie können es neu erstellen, root ( chown root:root /tmp) geben und 1777Berechtigungen dafür festlegen , damit jeder es verwenden kann ( chmod 1777 /tmp). Dieser Vorgang ist noch wichtiger, wenn Sie /tmpsich auf einer separaten Partition befinden (was ihn zu einem Einhängepunkt macht).

Da viele Programme auf temporären Dateien basieren, würde ich übrigens einen Neustart empfehlen, um sicherzustellen, dass alle Programme wie gewohnt fortgesetzt werden. Selbst wenn die meisten Programme so konzipiert sind, dass sie mit diesen Situationen richtig umgehen, können einige dies nicht tun.

John WH Smith
quelle
2
/tmpmuss keine Partition haben, obwohl es sein kann. /tmpkann auch ein Dateisystem vom Typ sein tmpfsoder ramfstmp-Dateien im Speicher behalten. Man muss sich je nach Verwendung, Datengröße usw. zwischen RAM oder Gerät entscheiden
bsd
Die letzte Info ist: drwxrwxrwt 5 root root 4096 أغس 12 20:21 tmp/.. Ist das in Ordnung?
Amr Ayman
@AmrAyman Dies sind typische /tmpBerechtigungen, ja. rwxÜberall, damit jeder lesen und schreiben kann, und ein klebriges Bit ( t), um sicherzustellen, dass einzelne Dateien Eigentümer / Berechtigungen sind /tmp. Weitere Informationen finden Sie hier.
John WH Smith
4

Das Verzeichnis /tmpmuss die Berechtigungen 1777 = rwxrwxrwt haben, dh jeder kann Dateien im Verzeichnis lesen, schreiben und darauf zugreifen, und ( t= Sticky-Bit-) Dateien dürfen nur von seinem Eigentümer gelöscht werden. Viele Dinge werden nicht mehr funktionieren, wenn dies nicht der Fall ist, manchmal auf bizarre Weise.

sudo mkdir -m 1777 /tmp

oder

sudo mkdir /tmp && sudo chmod 1777 /tmp

/tmpmuss zur Wurzel gehören. Ändern Sie nicht den Besitz eines anderen Benutzers.

Programme, die zum Zeitpunkt des Löschens temporäre Dateien verwendet haben, sind möglicherweise etwas verwirrt. Einige Hintergrundprogramme behalten einen Socket bei /tmpund müssen neu gestartet werden. Der wichtigste ist der X-Server: Nach dem Löschen /tmp/.X11-unix/X0können Sie keine GUI-Anwendung mehr starten. Sie müssen sich abmelden und wieder anmelden, um dies zu beheben (korrigieren Sie zuerst die Berechtigungen!).

Gilles 'SO - hör auf böse zu sein'
quelle
ist es nicht chmod?
Ramesh