Jawaban:
/tmp
dimaksudkan sebagai penyimpanan cepat (mungkin kecil) dengan masa pakai yang singkat. Banyak sistem membersihkan /tmp
sangat cepat - pada beberapa sistem bahkan dipasang sebagai RAM-disk. /var/tmp
biasanya terletak pada disk fisik, lebih besar dan dapat menyimpan file sementara untuk waktu yang lebih lama. Beberapa sistem juga bersih /var/tmp
, tetapi lebih jarang.
Perhatikan juga bahwa /var/tmp
mungkin tidak tersedia pada proses boot awal, karena /var
dan / atau /var/tmp
mungkin mountpoints. Jadi itu sedikit sebanding dengan perbedaan antara /bin
dan /usr/bin
. Yang pertama tersedia saat boot awal - yang terakhir setelah sistem telah me-mount semuanya. Jadi sebagian besar skrip boot akan digunakan /tmp
dan bukan /var/tmp
untuk file sementara.
Lokasi lain (yang akan datang) di Linux untuk file sementara adalah /dev/shm
.
/bin
dan /usr/bin
sebenarnya sama saja hari ini (symlinks). ;-)
/tmp
mungkin, dan kadang-kadang, dibersihkan saat reboot. /var/tmp
dipertahankan antara reboot.
Lihat artikel Wikipedia di FHS .
Mereka memiliki tujuan dan fungsi yang sama. Setiap versi UNIX / Linux akan menangani direktori ini secara berbeda. Secara historis, sebelum munculnya filesystem RAM / swap yang berbasis, Anda memiliki sistem disk-kurang mana /
dan /usr
filesystem akan read-only dan /var
(variabel) akan baca-tulis. The /tmp
nama akan menjadi symbolic link ke /var/tmp
. Kemudian, sistem tanpa-disk keluar dari gaya, ruang disk menjadi lebih murah (untuk memiliki file root yang lebih besar) dan teknologi memungkinkan sistem file yang dipasang dari memori alih-alih disk. The /var/tmp
direktori jatuh dari gaya, tetapi masih digunakan oleh beberapa program.
Saat ini, lebih banyak keamanan diatur secara default aktif /tmp
, seperti g+s,+t
izin, tetapi tidak aktif /var/tmp
. Selain itu, /var/tmp
jarang dipasang dari RAM atau swap.
a+rwx+t
- dan tidak g+s
.
Spesifikasi Basis POSIX, Edisi 7 on / tmp :
Direktori berikut harus ada pada sistem yang sesuai dan harus digunakan seperti yang dijelaskan:
/ tmp
Direktori yang tersedia untuk aplikasi yang membutuhkan tempat untuk membuat file sementara. Aplikasi harus diizinkan untuk membuat file dalam direktori ini, tetapi tidak boleh berasumsi bahwa file tersebut disimpan antara doa aplikasi.
Standar Hierarki File 2.3 pada / tmp :
Direktori / tmp harus tersedia untuk program yang memerlukan file sementara.
Program tidak boleh berasumsi bahwa file atau direktori apa pun di / tmp disimpan di antara pemanggilan program.
Alasan
Standar IEEE P1003.2 (POSIX, bagian 2) membuat persyaratan yang mirip dengan bagian di atas.
Meskipun data yang disimpan dalam / tmp dapat dihapus dengan cara spesifik situs, disarankan agar file dan direktori yang berada di / tmp dihapus setiap kali sistem di-boot.
FHS menambahkan rekomendasi ini berdasarkan preseden historis dan praktik umum, tetapi tidak menjadikannya persyaratan karena administrasi sistem tidak berada dalam ruang lingkup standar ini.
POSIX tidak menentukan / var / tmp . FHS melakukannya :
Direktori / var / tmp tersedia untuk program yang memerlukan file atau direktori sementara yang disimpan di antara reboot sistem. Oleh karena itu, data yang disimpan di / var / tmp lebih persisten daripada data di / tmp .
File dan direktori yang terletak di / var / tmp tidak boleh dihapus ketika sistem di-boot. Meskipun data yang disimpan dalam / var / tmp biasanya dihapus dengan cara spesifik situs, disarankan agar penghapusan terjadi pada interval yang lebih jarang daripada / tmp .