Anda dapat melihat http://samwel.tk/laptop_mode/ . Meskipun halaman ini bukan terutama tentang masalah Anda, tetapi memberikan gambaran keseluruhan yang baik tentang cara kerja IO dan ide-ide, cara membuat disk Anda diam dengan mematikannya.
Jawaban singkat untuk masalah Anda:
gema 1> / proc / sys / vm / block_dump
itu akan menghasilkan pesan di syslog seperti:
23 Jul 10:04:05 locutus kernel: ls (5224): BACA blok 7340136 pada dm-4
23 Jul 10:04:05 locutus kernel: ls (5224): BACA blok 4335136 pada dm-4
23 Jul 10:04:05 locutus kernel: ls (5224): BACA blok 15505568 pada dm-4
23 Jul 10:04:05 locutus kernel: ls (5224): BACA blok 7340160 pada dm-4
23 Jul 10:04:05 locutus kernel: ls (5224): BACA blok 7340168 pada dm-4
Saya telah menggunakan perintah ls sederhana
CATATAN: pastikan pencatatan sistem Anda dimatikan atau ditulis ke ramdisk (ketik: tmpfs) sebelum melakukannya, karena (kutipan): "sistem Anda dapat masuk ke loop umpan balik, di mana syslogd menyebabkan aktivitas disk, ini menyebabkan output kernel, dan ini menyebabkan syslogd melakukan lebih banyak aktivitas disk "
Saya merekomendasikan mount / tmp sebagai ramdisk kemudian mengatur logging ke / tmp / syslog. Di / etc / fstab ini (dan reboot) akan melakukan:
tidak ada / tmp default tmpfs, size = 256M 0 0
Saya telah menggunakan iotop untuk mencari tahu apa yang menggunakan drive. Dari situs web Anda harus memiliki "Linux kernel ≥ 2.6.20 dengan opsi TASK_DELAY_ACCT dan TASK_IO_ACCOUNTING diaktifkan".
Sepertinya Anda hanya tertarik pada satu drive tertentu. Anda mungkin mempertimbangkan untuk menulis skrip yang secara rutin memeriksa dengan lsof atau fuser untuk akses ke drive / partisi itu.
sumber
Jika suatu proses mulai menulis data ke drive maka Anda bisa mengetahuinya dengan memeriksa secara teratur file yang terbuka: lsof .
Lain Anda bisa melihat dengan "bebas" jika file swap digunakan atau tidak.
sumber
Anda harus dapat menggunakan audit Linux untuk menambahkan arloji pada titik mount drive, kemudian memantau log dengan penelitian setelah acara untuk mencari tahu file apa yang dibaca atau ditulis ke (jika ada), dan proses apa yang dilakukan, audit dapat perhatikan membaca, menulis, mengeksekusi dan atribut perubahan pada sistem file apa saja (asalkan didukung pada sistem Anda - seharusnya).
sumber
Mungkin Anda bisa menggunakan incron yang menggunakan inotify untuk meluncurkan perintah berdasarkan aktivitas sistem file. Anda kemudian dapat menonton titik mount dan menggunakan incron untuk memicu lsof untuk mencari proses mana yang mengaksesnya.
sumber
Hal yang mudah untuk memeriksa apa yang memutar disk Anda adalah:
pergi ke direktori disk yang dipasang, bagi saya adalah / media / disk0 / transmisi
maka Anda jalankan:
sudo fatrace -c
Anda akan mendapatkan hasil anyting yang mengenai folder itu, misalnya Anda dapat login dengan ssh dan melakukan ls.
sumber