Odpowiedzi:
/tmpma oznaczać szybkie (możliwie małe) przechowywanie o krótkim okresie użytkowania. Wiele systemów czyści /tmpbardzo szybko - w niektórych systemach jest nawet montowany jako dysk RAM. /var/tmpzwykle znajduje się na dysku fizycznym, jest większy i może przechowywać pliki tymczasowe przez dłuższy czas. Niektóre systemy również czyszczą /var/tmp, ale rzadziej.
Zauważ też, że /var/tmpmoże nie być dostępny we wczesnym procesie rozruchu, ponieważ /vari / lub /var/tmpmogą być punktami montowania. Jest to więc trochę porównywalne z różnicą między /bini /usr/bin. Pierwszy jest dostępny podczas wczesnego rozruchu - drugi po zamontowaniu przez system wszystkiego. Dlatego większość skryptów rozruchowych będzie używać, /tmpa nie /var/tmpplików tymczasowych.
Inną (nadchodzącą) lokalizacją w systemie Linux dla plików tymczasowych jest /dev/shm.
/bini /usr/binobecnie są takie same (dowiązania symboliczne). ;-)
/tmpmoże być, a czasem jest czyszczony przy ponownym uruchomieniu. /var/tmpjest zachowywany między restartami.
Zobacz artykuł w Wikipedii na temat FHS .
Mają ten sam cel i funkcjonalność. Każda wersja UNIX / Linux będzie obsługiwać te katalogi inaczej. Historycznie, przed pojawieniem się systemów plików opartych na RAM / swap, istniały systemy bezdyskowe, w których systemy plików /i /usrbyłyby tylko do odczytu, a /var(zmienne) byłyby do odczytu i zapisu. /tmpNazwa będzie symboliczny link /var/tmp. Później systemy bezdyskowe przestały być stylowe, miejsce na dysku stało się tańsze (aby mieć większe systemy plików root) i dopuszczono technologię dla systemów plików montowanych z pamięci zamiast z dysku. /var/tmpKatalog wypadł z mody, ale jest nadal używany przez niektóre programy.
W dzisiejszych czasach większe zabezpieczenia są domyślnie włączone /tmp, podobnie jak g+s,+tuprawnienia, ale nie włączone /var/tmp. Ponadto /var/tmprzadko jest montowany z pamięci RAM lub wymiany.
a+rwx+t- i nie g+s.
Podstawowe specyfikacje POSIX, wydanie 7 na / tmp :
Następujący katalog powinien istnieć w zgodnych systemach i powinien być używany zgodnie z opisem:
/ tmp
Katalog udostępniony aplikacjom, które potrzebują miejsca do tworzenia plików tymczasowych. Aplikacje będą mogły tworzyć pliki w tym katalogu, ale nie będą zakładały, że takie pliki są zachowywane między wywołaniami aplikacji.
File Hierarchy Standard 2.3 on / tmp :
Katalog / tmp musi zostać udostępniony programom wymagającym plików tymczasowych.
Programy nie mogą zakładać, że jakiekolwiek pliki lub katalogi w / tmp są zachowywane między wywołaniami programu.
Racjonalne uzasadnienie
Standard IEEE P1003.2 (POSIX, część 2) stawia wymagania, które są podobne do powyższej sekcji.
Chociaż dane przechowywane w / tmp mogą być usuwane w sposób specyficzny dla witryny, zaleca się, aby pliki i katalogi znajdujące się w / tmp były usuwane przy każdym uruchomieniu systemu.
FHS dodało to zalecenie na podstawie historycznej precedensu i powszechnej praktyki, ale nie uczyniło go wymogiem, ponieważ administracja systemem nie wchodzi w zakres tego standardu.
POSIX nie określa / var / tmp . FHS robi jednak :
Katalog / var / tmp jest udostępniany programom wymagającym plików tymczasowych lub katalogów, które są zachowywane między restartami systemu. Dlatego dane przechowywane w / var / tmp są bardziej trwałe niż dane w / tmp .
Pliki i katalogi znajdujące się w / var / tmp nie mogą być usuwane podczas uruchamiania systemu. Chociaż dane przechowywane w / var / tmp są zazwyczaj usuwane w sposób specyficzny dla witryny, zaleca się, aby usuwanie następowało rzadziej niż w / tmp .