Cara Menggunakan Perintah fsck di Linux

Diterbitkan: 2022-01-29
Hard disk drive dengan kode biner tertulis di atasnya.
Pixza Studio/Shutterstock

Semua data penting kami berada di sistem file dari satu jenis atau lainnya, dan masalah sistem file pasti akan terjadi. Di Linux, kita dapat menggunakan perintah fsck untuk menemukan dan memperbaiki kesalahan sistem file.

Sistem File Adalah Perangkat Lunak

Sistem file adalah salah satu komponen terpenting dari komputer. Tanpa sistem file, komputer tidak dapat menyimpan data apa pun di hard drive, apakah drive itu piringan mekanis yang berputar atau solid-state drive. Bahkan, sistem file harus dibuat sebelum sistem operasi dapat diinstal pada hard drive. Harus ada sesuatu untuk menyimpan file sistem operasi. Jadi, sistem file dibuat selama proses instalasi.

10 Perintah Dasar Linux untuk Pemula
TERKAIT 10 Perintah Dasar Linux untuk Pemula

Sistem file dibuat oleh perangkat lunak, ditulis oleh perangkat lunak, dan dibaca oleh perangkat lunak. Seperti yang Anda ketahui, semua perangkat lunak yang kompleks memiliki bug. Data kami sangat penting bagi kami, jadi kami sangat percaya pada sistem file dan perangkat lunak yang membuat dan menggunakannya. Jika terjadi kesalahan, kita dapat kehilangan akses ke bagian dari sistem file atau bahkan seluruh partisi.

Sistem file penjurnalan modern lebih baik dalam menangani masalah yang dapat disebabkan oleh hilangnya daya secara tiba-tiba atau kerusakan sistem. Mereka kuat, tetapi mereka tidak terkalahkan. Jika tabel internal mereka diacak, mereka dapat kehilangan jejak di mana setiap file berada di drive, berapa ukurannya, nama apa yang dimilikinya, dan izin file apa yang ditetapkan pada mereka.

Perintah fsck memungkinkan Anda memeriksa apakah sistem file Anda sehat. Jika menemukan masalah biasanya dapat memperbaikinya untuk Anda juga.

Lakukan Pemeriksaan Preflight

Menggunakan fsck membutuhkan hak sudo. Perintah apa pun yang dapat membuat perubahan pada sistem file perlu diperlakukan dengan hati-hati dan dibatasi untuk mereka yang tahu apa yang mereka lakukan.

Iklan

Pilot tidak melompat ke dalam pesawat, menyalakannya, dan terbang ke biru pucat di sana. Mereka melakukan pemeriksaan sebelum penerbangan. Terlalu banyak yang dipertaruhkan untuk melakukan sebaliknya. Itu kebiasaan yang baik untuk dikembangkan. Sebelum Anda menggunakan fsck , Anda perlu memastikan bahwa Anda akan menggunakannya pada drive yang benar. Jadi sebelum melakukan sesuatu dengan fsck , kita akan melakukan sedikit pengintaian.

Kita akan mulai dengan fdisk dan menyalurkannya ke less . Kami tidak meminta informasi tentang partisi tertentu. Dengan menggunakan opsi -l (list) fdisk mencantumkan tabel partisi pada semua perangkat yang ditemukan di file “/proc/partitions”, jika ada.

 sudo fdisk -l | lebih sedikit 

Kita dapat melihat entri untuk /dev/sda dan /dev/sdb . Anda dapat menggulir file untuk melihat entri lain yang mungkin ada di komputer Anda.

Amati output di jendela terminal

Partisi pada /dev/sda terdaftar sebagai /dev/sda1 , /dev/sda2 , dan /dev/sda3 . Jadi kami memiliki tiga partisi pada drive pertama. Kita dapat melihat lebih banyak informasi dengan menggunakan perintah parted . Kami akan menggunakan opsi 'print' untuk menampilkan tabel partisi di jendela terminal.

 sudo berpisah /dev/sda 'cetak' 

Dapatkan informasi tentang tabel partisi

Kami mendapatkan beberapa informasi tambahan kali ini, termasuk jenis sistem file pada setiap partisi.

 Model: ATA VBOX HARDDISK (scsi) 
Disk /dev/sda: 34.4GB 
Ukuran sektor (logis/fisik): 512B/512B 
Tabel Partisi: gpt 
Bendera Disk:

Nomor Mulai Akhir Ukuran Sistem file Nama Bendera 
1 1049kB 2097kB 1049kB bios_grub 
2 boot Partisi Sistem EFI 2097kB 540MB 538MB fat32, khususnya 
3 540MB 34.4GB 33.8GB ext4
Iklan

Ada tiga drive di komputer uji ini. Ini adalah hasil untuk dua drive lainnya /dev/sdb dan /dev/sdc . Perhatikan bahwa sistem file ini tidak memiliki bidang "Nama".

 sudo berpisah /dev/sdb 'cetak'
 Model: ATA VBOX HARDDISK (scsi) 
Disk /dev/sdb: 21.5GB 
Ukuran sektor (logis/fisik): 512B/512B 
Tabel Partisi: msdos 
Bendera Disk:

Nomor Mulai Akhir Ukuran Jenis Sistem file Bendera 
1 1049kB 21.5GB 21.5GB ext4 utama
 sudo berpisah /dev/sdc 'cetak'
 Model: ATA VBOX HARDDISK (scsi) 
Disk /dev/sdc: 21.5GB 
Ukuran sektor (logis/fisik): 512B/512B 
Tabel Partisi: msdos 
Bendera Disk:

Nomor Mulai Akhir Ukuran Jenis Sistem file Bendera
1 1049kB 21.5GB 21.5GB ext3 utama

Drive kedua dan ketiga memiliki ukuran yang sama, dan masing-masing memiliki satu partisi. Tetapi sistem file pada drive kedua adalah ext4 , dan sistem file pada drive ketiga adalah ext3 yang lebih lama.

Cara Memasang dan Melepas Perangkat Penyimpanan dari Terminal Linux
TERKAIT Cara Memasang dan Melepas Perangkat Penyimpanan dari Terminal Linux

Kami meneruskan pengenal partisi ke fsck , dan itu memeriksa sistem file di partisi itu. Tetapi kami tidak dapat menjalankan fsck pada sistem file yang terpasang. Kita perlu meng-unmount drive. Untuk melakukan itu, kita perlu mengetahui titik mount tempat partisi—dan oleh karena itu sistem file—dipasang.

Kita dapat menemukannya dengan mudah menggunakan perintah df .

 df /dev/sdb1
 df /dev/sdc1 

Menggunakan Perintah fsck

Kami memiliki semua informasi yang kami butuhkan. Hal pertama yang akan kita lakukan adalah melepas sistem file yang akan kita periksa. Kita akan mengerjakan sistem file pada partisi pertama—dan satu-satunya—dari /dev/sdb , yaitu /dev/sdb1 . Kami melihat sebelumnya bahwa ini adalah sistem file ext4 , dan dipasang di "/run/mount/dave/sata2."

Kami akan menggunakan perintah umount . Perhatikan tidak ada "n" di "umount."

 sudo umount /run/mount/dave/sata2 

Gunakan perintah umount untuk meng-unmount sistem file.

Iklan

Dengan umount , tidak ada berita adalah kabar baik. Jika Anda kembali diam-diam ke command prompt, kami siap melakukannya.

 sudo fsck /dev/sdb1 

Gunakan perintah fsck untuk memeriksa status sistem file.

Sistem file ini dilaporkan bersih. Itu berarti sistem file melaporkan bahwa tidak ada kesalahan atau masalah. Pemeriksaan sistem file yang lebih dalam tidak dilakukan secara otomatis. Kita juga dapat melihat kode pengembalian yang dikembalikan fsck ke shell.

 gema $? 

Nilai kembalian nol menunjukkan tidak ada kesalahan. Kode pengembalian yang mungkin adalah:

  • 0 : Tidak ada kesalahan
  • 1 : Kesalahan sistem file diperbaiki
  • 2 : Sistem harus di-boot ulang
  • 4 : Kesalahan sistem file tidak diperbaiki
  • 8 : Kesalahan operasional
  • 16 : Kesalahan penggunaan atau sintaksis
  • 32 : Pengecekan dibatalkan oleh permintaan pengguna
  • 128 : Kesalahan perpustakaan bersama

Meskipun sistem file dilaporkan bersih, kami dapat memaksa pemeriksaan sistem file untuk dilakukan, menggunakan opsi -f (paksa).

 sudo fsck /dev/sdb1 -f 

Paksa pemeriksaan sistem file menggunakan opsi paksa dalam perintah fsck

Kali ini, pemeriksaan membutuhkan waktu lebih lama untuk diselesaikan tetapi melakukan pengujian sistem file yang lebih menyeluruh. Sistem file kami memang bersih, dan tidak ada kesalahan yang dilaporkan. Jika masalah ditemukan saat pengujian sedang dilakukan, Anda akan diminta untuk membiarkan fsck memperbaiki masalah atau mengabaikan kesalahan.

Ketika Anda telah selesai menguji, Anda perlu me-remount sistem file. Cara termudah untuk melakukannya adalah dengan menggunakan mount dengan opsi -a (all). Ini memeriksa "/etc/fstab" untuk daftar sistem file, dan memastikan mereka semua terpasang seperti mereka akan mengikuti boot biasa.

 sudo mount -a 

Remount sistem file menggunakan perintah mount

Sistem File Linux Mana yang Harus Anda Gunakan?
TERKAIT Sistem File Linux Mana yang Harus Anda Gunakan?

Perhatikan bahwa kita tidak perlu memberi tahu fsck jenis sistem file apa yang ada di partisi; utilitas menentukan bahwa dengan memeriksa sistem file. Itu berarti kita dapat memaksa pemeriksaan sistem file pada /dev/sdc1 , sistem file ext3 pada PC pengujian kita, menggunakan perintah yang sama persis yang kita gunakan pada /dev/sdb1 , yang merupakan partisi ext4 .

 sudo fsck /dev/sdc1 -f 

Gunakan perintah fsck untuk memaksa pemeriksaan sistem file

Iklan

Anda mungkin tidak ingin langsung memperbaiki sistem file. Anda mungkin lebih suka melihat sebelum melompat. Anda dapat meminta fsck untuk tidak menawarkan untuk memperbaiki apa pun dan hanya melaporkan masalah ke jendela terminal. Opsi -N (dry run) melakukan hal itu:

 sudo fsck -N /dev/sdb1 

Sebelum memperbaiki sistem file, lakukan dry run

Kebalikannya adalah memberi tahu fsck untuk tidak repot-repot meminta jika menemukan kesalahan, dan teruskan saja dan perbaiki. Untuk melakukan ini, gunakan opsi -y (tanpa konfirmasi).

 sudo fsck -y /dev/sdb1

Menggunakan fsck Pada Partisi Root

Anda tidak dapat menggunakan fsck pada partisi yang di-mount, tetapi untuk mem-boot komputer Anda, partisi root harus di-mount. Jadi bagaimana kita bisa menjalankan fsck di partisi root? Jawabannya adalah dengan menghentikan proses boot dan menjalankan fsck dalam mode recovery.

Saat komputer Anda boot, tahan tombol "Shift". Jika Anda mengatur waktu dengan benar, Anda tidak akan bisa boot ke Linux. Proses booting akan berhenti pada menu hitam putih. Mesin uji yang digunakan untuk artikel ini menjalankan Ubuntu tetapi distribusi lain memiliki jenis menu yang sama, meskipun tampilannya mungkin berbeda. Di mana dikatakan "Ubuntu" di tangkapan layar, itu akan memiliki nama distribusi Anda.

Menu pemulihan dengan item menu opsi lanjutan dipilih

Pindahkan bilah sorotan dengan tombol "Panah Atas" dan "Panah Bawah" sehingga item menu "Opsi lanjutan untuk Ubuntu" dipilih. Tekan "Enter" untuk pindah ke layar berikutnya.

Menu pemulihan dengan item menu "mode pemulihan" dipilih

Iklan

Pilih opsi yang diakhiri dengan “(mode pemulihan).” Dalam contoh kami, ini adalah "Ubuntu, dengan Linux 5.11.0-20-generic (mode pemulihan)." Tekan tombol "Enter".

Anda akan melihat menu pemulihan. Pilih "fsck check all file system" dan tekan tombol "Tab" untuk memindahkan sorotan ke tombol "OK". Tekan enter."

Menu pemulihan dengan fsck dipilih

Anda akan melihat pemberitahuan bahwa partisi root akan dipasang bersama dengan partisi lain yang ditentukan dalam file “/etc/fstab” Anda.

Pilih ya untuk memulai fsck dalam mode interaktif

Tekan tombol "Tab" untuk memindahkan sorotan ke tombol "Ya" dan tekan "Enter."

Anda akan melihat fsck berjalan dalam mode interaktif. Jika ada masalah, Anda akan diminta untuk membiarkan fsck memperbaikinya atau mengabaikannya. Ketika sistem file telah diperiksa, Anda akan melihat menu pemulihan lagi.

Pilih opsi "lanjutkan", tekan tombol "Tab" untuk memindahkan sorotan ke tombol "Ok", dan tekan "Enter." Proses booting akan dilanjutkan, dan Anda akan boot ke Linux.

Iklan

Boot mode pemulihan dapat memengaruhi beberapa driver, jadi praktik yang baik untuk mem-boot ulang sekali lagi, segera setelah Anda boot ke Linux. Ini memastikan komputer Anda beroperasi dengan cara standarnya.

Ketika Ada Yang Salah

Jaring pengaman ada karena suatu alasan. Kenali perintah fsck . Jika kebutuhan muncul untuk menggunakannya dalam kemarahan suatu hari, Anda akan senang Anda membiasakan diri terlebih dahulu.

TERKAIT: Laptop Linux Terbaik untuk Pengembang dan Penggemar