Semua data penting kami berada dalam sistem file satu jenis atau yang lain, dan masalah sistem file pasti akan terjadi. Di Linux, kita bisa menggunakan
fsck.
perintah untuk menemukan dan memperbaiki kesalahan sistem file.
Sistem file adalah perangkat lunak
Sistem file adalah salah satu komponen paling penting dari komputer. Tanpa sistem file, komputer tidak dapat menyimpan data apa pun pada hard drive, apakah drive itu adalah piring mekanis berputar atau a drive solid-state . Bahkan, sistem file harus dibuat sebelum sistem operasi dapat diinstal pada hard drive. Harus ada sesuatu untuk file sistem operasi disimpan. Jadi sistem file dibuat selama proses instalasi.
Sistem file adalah dibuat oleh perangkat lunak , ditulis oleh perangkat lunak, dan baca dari dengan perangkat lunak. Seperti yang Anda ketahui, semua perangkat lunak kompleks memiliki bug. Data kami sangat penting bagi kami, jadi kami memberikan banyak kepercayaan pada sistem file dan perangkat lunak yang menciptakan dan menggunakannya. Jika terjadi kesalahan, kita dapat kehilangan akses ke bagian dari sistem file atau bahkan seluruh partisi.
Modern sistem file jurnal. lebih baik dalam menangani masalah yang dapat disebabkan oleh kehilangan daya yang tiba-tiba atau crash sistem. Mereka kuat, tetapi mereka tidak terkalahkan. Jika mereka Tabel internal diacak Mereka dapat kehilangan jejak di mana setiap file berada pada drive, berapa ukurannya, nama apa yang dimilikinya, dan izin file apa yang diatur pada mereka.
NS
fsck.
Perintah memungkinkan Anda memeriksa bahwa sistem file Anda sehat. Jika itu menemukan masalah, biasanya dapat memperbaikinya untuk Anda juga.
Lakukan pemeriksaan preflight
Menggunakan
fsck.
memerlukan
hak istimewa sudo.
. Perintah apa pun yang dapat membuat perubahan pada sistem file perlu diperlakukan dengan hati-hati dan terbatas pada mereka yang tahu apa yang mereka lakukan.
Pilot tidak melompat ke pesawat terbang, memulainya, dan terbang ke sana biru pucat. Mereka melakukan pemeriksaan preflight. Ada terlalu banyak yang dipertaruhkan untuk melakukan sebaliknya. Itu kebiasaan yang baik untuk dikembangkan. Sebelum Anda menggunakannya
fsck.
Anda perlu memastikan Anda akan menggunakannya pada drive yang benar. Jadi sebelum melakukan sesuatu dengan
fsck.
, kita akan melakukan sedikit pengintaian.
Kami akan mulai dengan
fdisk.
dan memasukkannya ke dalam
lebih sedikit
. Kami tidak meminta informasi tentang partisi tertentu. Dengan menggunakan
-l.
(Daftar) Opsi
fdisk.
Daftar tabel partisi pada semua perangkat yang ditemukan di file "/ proc / partisi", jika ada.
sudo fdisk -l | kurang
Kita bisa melihat entri untuk
/ dev / sda
dan
/ dev / sdb
. Anda dapat menggulir file untuk melihat entri lain yang mungkin ada di komputer Anda.
Partisi pada.
/ dev / sda
terdaftar sebagai
/ dev / sda1
,
/ dev / sda2
, dan
/ dev / sda3
. Jadi kami memiliki tiga partisi pada drive pertama. Kita dapat melihat sedikit informasi lebih lanjut dengan menggunakan
berpisah
memerintah. Kami akan menggunakan
'mencetak'
Opsi untuk menampilkan tabel partisi di jendela terminal.
sudo berpisah / dev / sda 'print'
Kami mendapatkan 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 Ukuran Akhir Sistem File Nama Bendera 1 1049KB 2097KB 1049KB BIOS_GRUB 2 2097KB 540MB 538MB FAT32 EFI System Partition Boot, ESP 3 540MB 34.4GB 33.8GB ext4
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 Ukuran Akhir Jenis File File Flags 1 1049KB 21.5GB 21.5GB ext4 primer
sudo berpisah / dev / sdc 'print'
Model: ATA VBOX Harddisk (SCSI) Disk / Dev / SDC: 21.5GB Ukuran sektor (logis / fisik): 512b / 512b Tabel Partisi: MSDOS Bendera disk: Nomor Mulai Ukuran Akhir Jenis File File Flags 1 1049KB 21.5GB 21.5GB Primer ext3
Drive kedua dan ketiga adalah ukuran yang sama, dan masing-masing memiliki satu partisi. Tetapi sistem file pada drive kedua adalah
ext4.
, dan sistem file pada drive ketiga adalah yang lebih tua
ext3.
.
Kami lulus pengidentifikasi partisi ke
fsck.
, dan itu memeriksa sistem file pada partisi itu. Tapi kita tidak bisa lari
fsck.
pada sistem file yang dipasang. Kita perlu unmount drive. Untuk melakukan itu kita perlu mengetahui titik mount yang partisi - dan oleh karena itu sistem file - dipasang pada.
Kita dapat menemukan itu dengan mudah menggunakan
df.
memerintah.
DF / DEV / SDB1
DF / DEV / SDC1
Menggunakan perintah fsck
Kami memiliki semua informasi yang kami butuhkan. Hal pertama yang akan kita lakukan adalah unmount sistem file yang akan kita periksa. Kita akan bekerja pada sistem file pada partisi pertama dan satu-satunya
/ dev / sdb
, yang
/ dev / sdb1
. Kami melihat sebelumnya bahwa ini adalah
ext4.
sistem file, dan dipasang di "/ run / mount / dave / sata2."
Kami akan menggunakan
umount.
memerintah. Perhatikan tidak ada "n" di "umount."
sudo umount / run / mount / dave / sata2
Dengan
umount.
, Tidak ada berita adalah kabar baik. Jika Anda kembali secara diam-diam ke prompt perintah, kami baik-baik saja.
sudo fsck / dev / sdb1
Sistem file ini dilaporkan bersih. Itu berarti sistem file melaporkan bahwa ia tidak memiliki kesalahan atau masalah. Pemeriksaan sistem file yang lebih dalam tidak secara otomatis dilakukan. Kita juga bisa melihat kode pengembalian itu
fsck.
dikembalikan ke cangkang.
echo $?
Nilai pengembalian nol menunjukkan tidak ada kesalahan. Kode pengembalian yang mungkin adalah:
- 0. : Tidak ada kesalahan
- 1 : Kesalahan sistem file dikoreksi
- 2. : Sistem harus di-boot ulang
- 4. : Kesalahan sistem file dibiarkan tidak dikoreksi
- 8. : Kesalahan Operasional
- 16. : Penggunaan atau kesalahan sintaksis
- 32. : Memeriksa dibatalkan oleh permintaan pengguna
- 128. : Kesalahan Berbagi-Perpustakaan
Meskipun sistem file dilaporkan bersih, kami dapat memaksakan pemeriksaan sistem file untuk berlangsung, menggunakan
-F
(kekuatan) opsi.
sudo fsck / dev / sdb1 -f
Kali ini, cek membutuhkan waktu lebih lama untuk menyelesaikan tetapi melakukan tes yang lebih menyeluruh dari sistem file. Sistem file kami memang bersih, dan tidak ada kesalahan yang dilaporkan. Jika masalah ditemukan sebagai tes dilakukan, Anda akan diminta untuk membiarkan
fsck.
Perbaiki masalah atau abaikan kesalahan.
Setelah Anda selesai menguji, Anda perlu mendapatkan kembali sistem file. Cara termudah untuk melakukan ini adalah dengan menggunakan
Gunung
dengan
-A
(semua) opsi. Ini memeriksa "/ etc / fstab" untuk daftar sistem file, dan memastikan mereka semua dipasang sama seperti mereka akan mengikuti boot biasa.
sudo mount -a
Perhatikan bahwa kita tidak perlu memberi tahu
fsck.
Jenis sistem file apa pada partisi; Utilitas menentukan bahwa dengan memeriksa sistem file. Itu berarti kita dapat memaksa pemeriksaan sistem file
/ dev / sdc1
, NS
ext3.
sistem file pada PC uji kami, menggunakan perintah yang sama persis kami gunakan pada
/ dev / sdb1
, yang merupakan
ext4.
partisi.
sudo fsck / dev / sdc1 -f
Anda mungkin tidak ingin menyelam langsung untuk memperbaiki sistem file. Anda mungkin lebih suka melihat sebelum Anda melompat. Kamu bisa tanya
fsck.
Tidak menawarkan untuk memperbaiki apa pun dan hanya melaporkan masalah ke jendela terminal. NS
-N
(Run Run) melakukan hal itu:
sudo fsck -n / dev / sdb1
Kebalikan dari itu adalah untuk mengatakan
fsck.
Untuk tidak repot-repot mendorong apakah ada kesalahan, dan untuk terus maju dan memperbaikinya. Untuk melakukan ini, gunakan
-y.
Opsi (tanpa petunjuk).
sudo fsck -y / dev / sdb1
Menggunakan fsck pada partisi root
Anda tidak bisa menggunakannya
fsck.
Pada partisi yang dipasang, tetapi untuk mem-boot komputer Anda, partisi root harus dipasang. Jadi bagaimana kita bisa berlari
fsck.
Di partisi root? Jawabannya adalah untuk mengganggu proses boot dan menjalankan
fsck.
dalam mode pemulihan.
Sementara komputer Anda boot, tahan tombol "Shift". Jika Anda menghitung waktu, Anda tidak akan mem-boot ke Linux. Proses boot akan berhenti pada menu hitam dan putih. Mesin uji yang digunakan untuk artikel ini menjalankan Ubuntu tetapi distribusi lain memiliki jenis menu yang sama, meskipun mungkin bervariasi dalam penampilan. Di mana dikatakan "Ubuntu" di tangkapan layar itu akan memiliki nama distribusi Anda.
Pindahkan bar highlight dengan tombol "Atas Panah" dan "Bawah Panah" sehingga item menu "Opsi Lanjutan untuk Ubuntu" dipilih. Tekan "Enter" untuk pindah ke layar berikutnya.
Pilih opsi yang diakhiri dengan "(mode pemulihan)." Dalam contoh kami, itu adalah "Ubuntu, dengan Linux 5.11,0-20-generik (mode pemulihan)." Tekan tombol "Enter".
Anda akan melihat menu pemulihan. Pilih "FSCK Periksa semua sistem file" dan tekan tombol "Tab" untuk memindahkan sorotan ke tombol "OK". Tekan enter."
Anda akan melihat pemberitahuan bahwa partisi root akan dipasang bersama dengan partisi lain yang didefinisikan dalam Anda File "/ etc / fstab" .
Tekan tombol "Tab" untuk memindahkan sorotan ke tombol "Ya" dan tekan "Enter."
Anda akan melihat
fsck.
Jalankan 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 "Resume", tekan tombol "Tab" untuk memindahkan sorotan ke tombol "OK", dan tekan "Enter." Proses boot akan melanjutkan, dan Anda akan mem-boot ke Linux.
Boot mode pemulihan dapat memengaruhi beberapa driver, jadi praktik yang baik untuk reboot sekali lagi, segera setelah Anda boot ke Linux. Ini memastikan komputer Anda beroperasi dalam mode standar.
Ketika semuanya salah
Jaring pengaman ada karena suatu alasan. Kenali
fsck.
memerintah. Jika kebutuhan muncul untuk menggunakannya dalam kemarahan suatu hari, Anda akan senang Anda membiasakan diri terlebih dahulu.