Saya mempunyai situasi hari ini di mana saya me-restart komputer saya dan mengatakan saya perlu memeriksa disk untuk konsistensi. Sekitar 10 menit kemudian (pada "1%" selesai), saya menyerah dan memutuskan untuk membiarkannya berjalan ketika saya pulang.
Sebagai perbandingan, komputer di rumah saya menggunakan Ext4 untuk semua partisi, dan pemeriksaan disk (yang berjalan sekitar seminggu sekali) hanya perlu beberapa detik. Saya ingat membaca bahwa melakukan pemeriksaan disk cepat adalah prioritas, tetapi saya tidak tahu bagaimana mereka bisa melakukannya.
Jadi, bagaimana cara Ext4 memeriksa disk dengan sangat cepat? Apakah ada beberapa terobosan besar dalam melakukan ini setelah NTFS keluar (~ 10 tahun yang lalu)?
Catatan: Disk NTFS ~ 300 GB dan disk Ext4 ~ 500 GB. Keduanya sekitar setengah penuh.
Jawaban:
Ada dua alasan utama perbedaan kinerja, dan dua mungkin alasan Pertama, alasan utama:
Peningkatan Kinerja ext4 vs NTFS
Berbagai tolok ukur telah menyimpulkan bahwa sistem file ext4 yang sebenarnya dapat melakukan berbagai operasi baca-tulis lebih cepat dari partisi NTFS. Perhatikan bahwa meskipun tes ini tidak menunjukkan kinerja dunia nyata, kami dapat memperkirakan hasil ini dan menggunakannya sebagai salah satu alasan.
Adapun mengapa ext4 benar-benar berkinerja lebih baik maka NTFS dapat dikaitkan dengan berbagai alasan. Misalnya, ext4 mendukung alokasi tertunda secara langsung. Namun, sekali lagi, keuntungan kinerja sangat bergantung pada perangkat keras yang Anda gunakan (dan dapat sepenuhnya dinegasikan dalam kasus tertentu).
Persyaratan Pemeriksaan Sistem File yang Dikurangi
Sistem file ext4 juga mampu melakukan pemeriksaan sistem file yang lebih cepat dari sistem file penjurnalan yang setara lainnya (mis. NTFS). Menurut halaman Wikipedia:
Dan sekarang, keduanya mungkin alasan:
Utilitas Pengecekan Sistem File Sendiri
Aplikasi tertentu dapat menjalankan rutinitas berbeda pada sistem file untuk benar-benar melakukan "pemeriksaan" kesehatan. Ini dapat dengan mudah dilihat jika Anda menggunakan fsck utilitas yang diatur pada Linux versus chkdsk utilitas pada Windows. Aplikasi ini ditulis pada sistem operasi yang berbeda untuk sistem file yang berbeda. Alasan saya membawa ini sebagai mungkin alasannya adalah panggilan sistem tingkat rendah di setiap sistem operasi berbeda, sehingga Anda mungkin tidak dapat langsung membandingkan utilitas menggunakan dua sistem operasi yang berbeda.
Disk Fragmentasi
Yang ini mudah dimengerti, dan juga membantu kita untuk memahami perbedaan antara sistem file. Meskipun semua data digital yang disimpan dalam file adalah sama, bagaimana itu disimpan di hard drive sangat berbeda dari filesystem ke filesystem. Fragmentasi file jelas dapat meningkatkan kecepatan akses, lebih disebabkan oleh perbedaan kecepatan.
sumber
Dari pemahaman saya, ext4 mencoba menulis data ke celah terbuka terus-menerus terbesar di mana tidak ada data saat ini berada. Ini sangat mengurangi latensi ketika file-file tersebut harus dibaca karena, sebagian besar, seluruh konten dari file individual sebagian besar akan terletak pada satu track kontinu sehingga drive head akan memiliki sedikit mencari lakukan ketika menemukan setiap blok yang berisi data yang membentuk satu file itu.
Itu (ext4) masih bisa menjadi terfragmentasi tetapi jauh lebih sedikit dan tidak harus dengan cara yang mempengaruhi kinerja baca / tulis sangat seperti dengan NTFS. Pada NTFS, data ditulis ke blok terbuka pertama di jalur kepala.
Jadi di mana pun kepala terletak dan ada blok terbuka ia menulis data sebanyak itu sesuai kemudian menulis di mana pun ia mendarat di tempat lain di disk ketika kepala harus pindah, katakanlah, ke bagian lain dari disk untuk mengakses file berbeda yang harus dibuka di program yang baru saja Anda muat sementara file lain sedang ditulis.
Ini berarti bahwa jika file tersebut besar kemungkinan akan menyebar dalam blok yang terpisah satu sama lain pada trek yang terpisah dan itulah mengapa defragmenting sering diperlukan untuk NTFS.
Juga mengapa server umumnya tidak menggunakannya karena ada I / O yang lebih berat terjadi dengan server di mana data terus-menerus ditulis dan dibaca dari disk 24/7.
Juga saya tidak yakin tetapi jika
chkdsk
memeriksa integritas masing-masing file (yang saya percaya keduanya danfsck
lakukan) maka itu juga akan lebih lambat dibandingkan karena apa yang baru saja saya jelaskan tentang fragmentasi pada NTFS.sumber
Windows seharusnya tidak perlu memeriksa volume NTFS saat startup. Jika ya, ada yang salah serius — sesuatu yang jauh lebih buruk daripada hanya BSOD atau pemadaman listrik. Ada kemungkinan besar bahwa sebagian data Anda juga rusak oleh apa pun yang merusak metadata sistem file. Pemeriksaan disk tidak dapat mendeteksi itu; satu-satunya tujuannya adalah untuk menghindari korupsi lebih lanjut.
KB2854570 daftar beberapa alasan bahwa ini bisa terjadi. Salah satunya adalah hibernasi OS dengan volume yang terpasang, memodifikasi isi volume, kemudian melanjutkan dari hibernasi dengan volume (kembali) terpasang. Jika Anda melakukannya, ada kemungkinan besar korupsi data diam.
Saya tidak tahu mengapa filesystem ext4 Anda memeriksa sendiri seminggu sekali, tapi itu mungkin (semoga) bukan karena krisis yang sebanding yang berulang setiap minggu. Itu mungkin hanya melakukan pemeriksaan kewarasan rutin, dan bukan pemeriksaan konsistensi penuh.
sumber