Comando fsck no Linux (corrige sistema de arquivos) [Guia Básico]
O comando fsck no Linux é na verdade um “wrapper” que serve para chamar outros comandos que são variações do fsck para vários tipos de sistemas de arquivos.
Você pode perceber isso com o comando ls no diretório /usr/sbin:
$ ls -l /usr/sbin/*fsck*
lrwxrwxrwx 1 root root 8 mar 8 2019 /usr/sbin/dosfsck -> fsck.fat
-rwxr-xr-x 4 root root 256424 jul 26 2018 /usr/sbin/e2fsck
-rwxr-xr-x 1 root root 49896 jul 26 2018 /usr/sbin/fsck
-rwxr-xr-x 1 root root 37200 jul 26 2018 /usr/sbin/fsck.cramfs
-rwxr-xr-x 4 root root 256424 jul 26 2018 /usr/sbin/fsck.ext2
-rwxr-xr-x 4 root root 256424 jul 26 2018 /usr/sbin/fsck.ext3
-rwxr-xr-x 4 root root 256424 jul 26 2018 /usr/sbin/fsck.ext4
-rwxr-xr-x 1 root root 57424 ago 2 2018 /usr/sbin/fsck.fat
-rwxr-xr-x 1 root root 83536 jul 26 2018 /usr/sbin/fsck.minix
lrwxrwxrwx 1 root root 8 mar 8 2019 /usr/sbin/fsck.msdos -> fsck.fat
lrwxrwxrwx 1 root root 8 mar 8 2019 /usr/sbin/fsck.vfat -> fsck.fat
-rwxr-xr-x 1 root root 433 jan 24 2019 /usr/sbin/fsck.xfs
Dependendo do sistema de arquivos, o fsck invoca o fsck.algumacoisa apropriado para lidar com aquele sistema de arquivos.
O objetivo do fsck é checar e corrigir a existência de erros no sistema de arquivos. Por padrão, o fsck assume o sistema de arquivos ext2 e, após fazer uma checagem no disco, pergunta ao usuário se ele deseja fazer as correções necessárias.
Como parâmetro o fsck aceita um nome de dispositivo (ex.: /dev/hdc1, /dev/sdb2), um ponto de montagem (ex: /, /usr, /home), ou um Label (ex.: LABEL=root) ou uma identificação de disco UUID (ex.: UUID=8868abf6-88c5-4a83-98b8-bfc24057f7bd ).
Um identificador UUID é um número único que identifica um disco, como se fosse o “MAC Address dos discos”.
As opções frequentemente usadas são:
- -A: Faz a checagem de todos os discos especificados no arquivo /etc/fstab;
- -t: Especifica o tipo de sistema de arquivos que deverá ser checado;
Ainda podemos ter algumas opções para o sistema de arquivos ext2:
- -b: Superbloco Especifica qual superbloco o fsck irá trabalhar;
- -c: Faz checagem de setores defeituosos (bad blocks);
- -f: Força a checagem do sistema de arquivos mesmo que este pareça íntegro;
- -p: Repara automaticamente o sistema de arquivos;
- -y: Executa o fsck de modo não interativo, não fazendo nenhuma pergunta ao usuário;
Um superbloco é uma área especial no disco com informações importantes dos parâmetros do sistema de arquivos e o seu estado atual. Geralmente o superbloco é copiado em diversas áreas no disco como backup.
O fsck precisa que o disco esteja desmontado para realizar a checagem e reparos:
# fsck /dev/xvdb1
/dev/xvdb1 is in use.
Uma vez desmontado o sistema de arquivos:
# fsck.ext4 /dev/xvdb1
e2fsck 1.42.9 (28-Dec-2013)
/dev/xvdb1: clean, 41436/524288 files, 374905/2096891 blocks
Dependendo do tamanho e dos inúmeros reparos que a partição necessita, o processo do fsck pode demorar horas.
Para verificar a partição do sistema raiz há duas opções:
- Usar um Pendrive com Linux para dar carga em outro Linux e verificar a partição;
- Usar o comando “touch /forcefsck” para criar o arquivo forcefsck, que força o linux a verificar a partição raiz no boot do sistema
Comando e2fsck
O comando e2fsck é usado para checar o sistema de arquivos ext2, ext3 e ext4. Ele é a versão do fsck para os sistemas de arquivos baseados no sistema de arquivos ext.
As opções são comuns ao fsck, já que é ele que é invocado pelo fsck quando se trata de partições do tipo ext2, ext3 e ext4.
Exemplo:
$ sudo fsck.ext4 /dev/xvdb1
e2fsck 1.42.9 (28-Dec-2013)
/dev/xvdb1: clean, 41436/524288 files, 374905/2096891 blocks
Aprenda muito mais sobre Linux em nosso curso online. Você pode efetuar a matrícula aqui. Se você já tem uma conta, ou quer criar uma, basta entrar ou criar seu usuário aqui.
Gostou? Compartilhe
Tag:/dev, bash, certificação, certificaçãolinux, code, Comptia, developer, empreendedorismo, exame, freesoftware, gnu, hack, Linux, linuxfan, linuxfun, linuxmint, lovelinux, LPI, LPIC, management, nerd, opensource, php, prova, shell, software, softwarelivre, sql, tech, ti, unix