Secara tidak sengaja saya perhatikan bahwa dalam direktori / tmp secara terus menerus dibuat beberapa file kemudian segera dihapus. Menggunakan suksesi ls -l /tmp
saya berhasil menangkap file yang dibuat:
-rw------- 1 root root 0 Apr 2 19:37 YlOmPA069G
-rw------- 1 root root 0 Apr 2 19:37 l74jZzbcs6
atau contoh lain:
-rw------- 1 root root 0 Apr 2 19:44 AwVhWakvQ_
-rw------- 1 root root 0 Apr 2 19:44 RpRGl__cIM
-rw------- 1 root root 0 Apr 2 19:44 S0e72nkpBl
-rw------- 1 root root 0 Apr 2 19:44 emxIQQMSy2
Ini tentang Ubuntu 18.10 dengan 4.18.0-16-generik. Ini adalah instalasi yang hampir segar: Saya menambahkan beberapa perangkat lunak server (nginx, mysql, php7.2-fpm) tetapi bahkan dengan mereka yang ditutup masalah tetap ada.
Apa file yang dibuat dan mengapa? Bagaimana saya menghentikan perilaku ini? yang sangat tidak diinginkan pada SSD
Terima kasih!
MEMPERBARUI
Pertanyaannya adalah kapan tidak memiliki / tmp dalam RAM (tidak ada tmpfs ).
Perangkat lunak yang bersalah adalah x2goserver.service kalau tidak harus memilikinya .
/tmp
biasanya di tmpfs (sistem file ramdisk yang menggunakan pagecache sebagai backing store-nya); Anda menandai pertanyaan Anda dengan tmpfs , sehingga komentar Anda tentang SSD tampak tidak pada tempatnya./tmp
biasanya pada tmpfs" berlaku untuk pengguna Ubuntu yang normal - Hanya menggunakan instalasi default Ubuntu,/tmp
pada disk dan OP akan perlu membuat entri fstab yang sesuai untuk memasukkannya ke dalam tmpfsJawaban:
Saya sarankan menginstal dan menjalankan fnotifystat untuk mendeteksi proses pembuatan file-file ini:
Anda akan melihat proses yang melakukan kegiatan buka / tutup / baca / tulis sesuatu seperti berikut ini:
sumber
/tmp/...
file untuk IPC antara daemon dan ruang pengguna, bukan DBUS yang lebih rumit.Tentukan program / proses mana yang menyentuh file
Anda dapat menggunakan alat seperti
lsof
untuk menentukan proses dan binari mana yang menyentuh / membuka file mana. Ini bisa menjadi masalah jika file sering berubah, jadi Anda dapat mengatur jam tangan untuk memberi tahu Anda:Terkadang, hanya dengan melihat pengguna atau pemilik grup memberi Anda petunjuk yang baik (yaitu:)
ls -lsha
.Masukkan
/tmp
ke dalam RAM, bukan diskJika diinginkan, Anda dapat memasukkan
/tmp
direktori Anda ke dalam RAM. Anda harus menentukan apakah ini langkah cerdas berdasarkan RAM yang tersedia, serta ukuran dan frekuensi baca / tulis.Jika Anda memiliki RAM yang cukup, ini dapat dianggap sebagai hal yang sangat baik untuk dilakukan baik untuk umur panjang SSD Anda, maupun kecepatan sistem Anda. Anda bahkan dapat melakukan ini dengan jumlah RAM yang lebih kecil jika Anda men-tweak
tmpreaper
(kadang-kadangtmpwatch
) menjadi lebih agresif.sumber
Anda menandai pertanyaan Anda dengan tmpfs , jadi tidak cukup jelas bagi saya bagaimana ini terkait dengan SSD sama sekali. Tmpfs adalah sistem file dalam-memori (atau lebih tepatnya, dalam-blok-cache), sehingga tidak akan pernah mengenai disk fisik.
Terlebih lagi, bahkan jika Anda memiliki backing store fisik untuk
/tmp
sistem file Anda , kecuali jika Anda memiliki sistem dengan hanya beberapa kilobyte RAM, file-file yang berumur pendek tidak akan pernah mengenai disk, semua operasi akan terjadi dalam cache.Jadi, dengan kata lain, tidak ada yang perlu dikhawatirkan karena Anda menggunakan tmpfs, dan jika tidak, masih tidak ada yang perlu dikhawatirkan.
sumber
/tmp
menggunakan RAM, maka tidak ada hubungannya dengan SSD Anda, jadi SSD tidak diinginkan atau tidak diinginkan tetapi sebenarnya sama sekali tidak terkait.Orang-orang terlalu khawatir tentang ketahanan penulisan SSD. Dengan asumsi bahwa membuat dan menghapus file kosong menulis 24 kB setiap detik, dan menggunakan spesifikasi 150 TBW untuk Samsung 860 EVO 250 GB yang populer, aus membutuhkan waktu 193 tahun!
(150 * 10 ^ 12) / ((2 * 3 * 4 * 1024) * 60 * 60 * 24 * 365.25) = 193
Untuk sistem file ext4, gunakan "tune2fs -l" untuk menemukan menulis Seumur Hidup. Atau, gunakan "smartctl -a" dan cari Total_LBAs_Written. Saya selalu menemukan SSD memiliki banyak kehidupan yang tersisa.
sumber
tune2fs: Bad magic number in super-block while trying to open /dev/nvme0n1 Found a gpt partition table in /dev/nvme0n1
.Anda menggunakan
/dev/nvme0...
nama yang salah :Format yang tepat adalah:
Sejauh masa pakai SSD NVMe :
Kuncinya di sini adalah:
Setelah 18 bulan penggunaan, persentase penggunaan SSD adalah 0%. Jika setelah 3 tahun menggunakannya mencapai 1% maka saya tahu SSD akan bertahan 300 tahun.
Jelas jawaban ini tidak cocok dengan bagian komentar untuk membalas komentar lain.
sumber
tune2fs
sebagai tanggapan atas komentar Anda pada jawaban Fraser Gunn yang menunjukkan pesan kesalahan.