Pada pertengahan November, VPS yang saya sewa dari perusahaan hosting berhenti merespons. Ketika saya menghubungi dukungan, mereka menjelaskan bahwa pemadaman listrik di pusat data menyebabkan reboot dan fsck secara paksa. Akhirnya, saya bertanya mengapa butuh waktu lama, dan diberi tahu bahwa ukuran volumenya 30 TB. Terakhir kali saya menerima pembaruan adalah pada bulan Februari, dan mereka belum menanggapi pertanyaan terbaru saya.
Saya mengerti bahwa fsck bisa sangat lambat untuk beberapa sistem file, tetapi apakah mungkin bagi fsck untuk mengambil 6 bulan pada volume 30 TB, atau haruskah saya berasumsi bahwa perusahaan hosting ini berbohong kepada saya sehingga saya terus membayar tagihan saya setiap bulan?
Jawaban:
fsck
kecepatan terutama tergantung pada jumlah file dan bagaimana mereka tersebar di direktori masing-masing. Yang mengatakan, 6 bulan untukfsck
benar-benar tidak masuk akal: itu harus diselesaikan dalam beberapa jam paling banyak, terutama jika menggunakanxfs
yang memilikixfs_repair
utilitas cepat . Di sini Anda dapat menemukan beberapafsck
lari dalam skala - semua selesai di bawah satu jam (3600-an). Jadi, tidak mungkin Andafsck
masih berjalan.Bagaimanapun, kehilangan daya yang tidak terduga tidak akan menyebabkan pukulan penuh
fsck
, melainkan hanya replay jurnal yang sangat cepat (beberapa detik) . Namun, jika beberapa file kunci rusak, OS dapat di-boot.Tapi mereka mungkin berbohong padamu. Anda harus segera berhenti membayar, meminta penjelasan, dan mengajukan permohonan pengembalian uang total.
sumber
ext2
, maka kegagalan daya akan membutuhkan penuhfsck
, dan saya tidak akan terkejut jika butuh berhari-hari pada volume 30TB yang banyak digunakan. Di sisi lain, jika mereka menggunakanext2
volume 30TB, itu dengan sendirinya adalah alasan untuk mencari tempat lain untuk layanan hosting.Dugaan: Sistem mereka menggunakan RAID yang tidak menggunakan BBU / FBWC (atau bahkan RAID perangkat lunak) dengan semua cache tulis yang mungkin (termasuk hard disk itu sendiri) yang disetel pada pengaturan paling agresif, untuk mendapatkan kinerja maksimum dengan biaya minimal. Pemadaman listrik yang keras pada pengaturan seperti itu dapat meninggalkan sistem file jurnal dalam kondisi di mana jurnal tidak dapat dipercaya dan tidak dapat digunakan untuk pemulihan. Masalahnya adalah bahwa sistem seperti itu secara agresif menata ulang dan menunda menulis, yang berarti bahwa entri jurnal dapat ditulis dengan efek dari tindakan data yang hilang ... atau entri jurnal yang hilang pada tindakan data yang konsekuensial.
Memulihkan sistem seperti itu dari pemadaman kasus terburuk dapat berarti bahwa Anda harus melakukan fsck / perbaikan "lambat" yang benar-benar memeriksa semua struktur sistem file seperti apa adanya, yang memang bisa memakan waktu satu atau dua hari untuk 30TB .... dan itu bukan tidak mungkin Anda harus menjalankan beberapa siklus perbaikan. Tambahkan ke bahwa personil mungkin tidak selalu tersedia untuk memantau ini, Anda dapat dengan mudah turun ke satu fsck yang dilakukan per minggu. Mereka mungkin menyerah dan lupa.
sumber
Untuk sebagian besar sistem file akan jauh lebih cepat, bahkan ketika ada kesalahan, seperti biasanya hanya metadata yang diperiksa.
Dalam kasus terburuk, mungkin membaca seluruh disk, ( misalnya sesuatu seperti
fsck.ext4 -cc /dev/sda
, yang melakukan tes tulis non-destruktif pada setiap blok), yang bisa memakan waktu beberapa hari untuk 30 TB. Jika Anda mengetahui kecepatan drive, Anda dapat menghitung ukuran / kecepatan . Untuk hard drive konsumen dengan menyalin sekitar 100 MB / s, beberapa TB dapat memakan waktu lebih lama daripada yang diperkirakan kebanyakan orang.Jika itu adalah server Anda, Anda bisa mendapatkan masalah saat boot kemudian hang ketika
fsck
menanyakan apakah Anda ingin memperbaiki kesalahan. Tetapi admin pusat data tidak akan membiarkanfsck
selama 6 bulan sementara semua VPS sedang offline.Jadi mereka berbohong kepada Anda, atau ada kesalahpahaman besar. Atau mereka menjalankan fsck beberapa waktu lalu dan tidak memperbarui Anda tentang masalah baru setelah selesai.
sumber
fsck
melintasi semua struktur sistem file, yang sebagian besar berarti menjalankan i / o acak. Jadi perhitungan di atas, berdasarkan laju transfer sekuensial , tidak terlalu berguna.