como usar o comando fsck no Linux?

o comando fsck (file system consistency check) é um utilitário para verificar e reparar um sistema de arquivos Linux. Os sistemas de arquivos modernos com registro no diário são projetados de forma que ferramentas como o fsck não sejam prontamente necessárias. No entanto, em alguns casos, o fsck pode ser a única opção para reparar um sistema de arquivos ‘ruim’.

fsck pode ser executado em uma partição que foi corrompida ou inconsistente com o resto do filesytem.

razões pelas quais o fsck pode ser necessário

  • desligamento impuro-esta é a principal causa de corrupção. Devido a um “impuro desligamento’, o sistema pode falhar mesmo de iniciar corretamente
  • Unidade de Falha ou Corrupção

Tabela de Conteúdo

Ambientes Onde Você NÃO Deve Usar o comando fsck

Desde que o comando trabalha diretamente com os setores do sistema de arquivos, é importante tomar as precauções necessárias aqui.

e2fsck’s man page says:

observe que, em geral, não é seguro executar o e2fsck em sistemas de arquivos montados. A única exceção é se a opção-n for especificada e as opções-c,- l ou-L não forem especificadas. No entanto, mesmo que seja seguro fazê-lo, os resultados impressos pelo e2fsck não são válidos se o sistema de arquivos estiver montado. Se o e2fsck perguntar se você deve ou não verificar um sistema de arquivos montado, a única resposta correta é “não”.

https://www.man7.org/linux/man-pages/man8/e2fsck.8.html

portanto, você deve fazer fsck em uma partição desmontada. Se você pode desmontar a partição usando umount, bem e bem. Caso contrário, você precisa mudar seu ambiente:

1. Modo de recuperação

(Para Ubuntu – Hold SHIFT durante a inicialização para entrar no GRUB, selecione ‘Opções Avançadas para Ubuntu’, selecione a opção rotulada ‘modo de recuperação’ e selecione fsck). No modo de recuperação, as partições são montadas.

modo de recuperação Fsck
modo de recuperação fsck

2. Ao usar o parâmetro do kernel init= / bin / bash

(segure SHIFT durante a inicialização para entrar no GRUB, pressione e para editar os parâmetros do kernel). Ele fornece um shell bash de onde fsck poderia ser executado, mas aqui também, as partições são montadas.

Parâmetro do Kernel Init
Parâmetro do Kernel Init

como usar o comando fsck?

com o básico claro, vamos passar para as etapas como você deve usar o comando fsck no Linux.

1. Uso básico do

Antes de começar a usar o comando, verifique se você está trabalhando em uma partição desmontada. Para desmontar uma partição e, em seguida, executar fsck nele digite :

$ sudo umount /dev/<partition_name>$ fsck /dev/<partition_name>

provavelmente, você não pode desmontar a partição. Nesse caso, você pode escolher um dos seguintes métodos.

2. Executando fsck usando um live USB

esta é provavelmente a melhor maneira de executar fsck. Ele fornece um rico conjunto de ferramentas familiares como fdisk. Use este tutorial para criar um Ubuntu USB ao vivo. Esta parte assume que você está executando o Linux fora de um USB ao vivo.

para listar todas as partições do seu sistema, você pode usar o comando fdisk.

$ sudo fdisk -l
Nvme Partições
NVMe Partições SSD
Ssd Sata Partições
SSD SATA Partições

Nota: As partições mostradas acima (para 2 SSDs, um NVMe e outro SATA) pode ser diferente do que o que você tem no seu sistema. fdisk imprime mais informações sobre as partições também. No entanto, para o propósito deste artigo, o nome da partição é suficiente.

identifique a partição que está causando problemas e, em seguida, simplesmente execute:

$ fsck /dev/<partition_name>

isso deve corrigir o problema.

3. Usando initramfs

outra maneira de usar o comando fsck está no modo intramfs. Para entrar initramfs

  1. segure a tecla SHIFT durante a inicialização para entrar no menu GRUB.
  2. Pressione e para editar a entrada de inicialização
  3. Adicionar o parâmetro de kernel como ‘break‘, como mostrado na imagem abaixo
  4. Pressione Ctrl - X para salvar e sair
Entrar Em Initramfs
Entrar Em Initramfs

initramfs fornece um “menos atraentes” o modo de resolução de problemas.

as partições não são montadas no initramfs, portanto, executar fsck seria seguro. Além disso, você precisa do nome da partição. O Initramfs, no entanto, fornece um mínimo de utilitários. Portanto, fdisk não estará disponível. Você pode listar as partições usando o comando cat, como mostrado abaixo:

$ cat /proc/partitions

Identificar a partição e, em seguida, executar:

$ fsck /dev/<partition_name>
o Initramfs Fschk
Initramfs Fsck

Nota: o comando fsck usando o Live USB podem não estar sempre disponíveis. Nesse caso, use o método initramfs.

como verificar se o fsck está programado ou não

você pode querer saber quando sua partição foi verificada da última vez ou quando será no futuro. Nesse caso, corra:

$ sudo tune2fs -l /dev/<partition_name> | egrep -i 'check|mount'
de Seleção Para executar o Fsck 1
Verificar Fsck
  • Máxima de montagem de contagem é o número de montagens, após o qual o sistema será automaticamente marcada pelo fsck.
  • intervalo de verificação é o tempo entre duas verificações do sistema de arquivos.

esses dois valores são suficientes para identificar quando o comando fsck foi executado pela última vez.

diferença entre fsck e e2fsck

você pode encontrar diferentes respostas / artigos pedindo-lhe para executar e2fsck ou fsck.ext4 em vez de fsck. Que diferença faz se você executar alguma dessas ferramentas em vez de fsck?

fsck é apenas um frontend para todos os comandos fsck específicos do sistema de arquivos, como os dois mostrados acima (um wrapper, se você pode dizer). Invocar fsck invoca automaticamente o fsck específico do sistema de arquivos correto. Vamos ver o que todos os fsck existe em nosso sistema:

$ ls -l /sbin/fsck*
Diferentes Fscks
Lista de todos os fsck

a Execução fsck em um ext2/3/4 partição é executado o respectivo /sbin/fsck.ext* executável. Esses executáveis, por sua vez, são links rígidos para o executável e2fsck. Portanto, mesmo se você executar fsck em uma partição ext4, ela será executada e2fsck.

conclusão

neste tutorial, cobrimos fsck que é uma ferramenta útil para a recuperação de sistemas de arquivos. Para saber mais sobre o comando fsck, veja sua página man.

Leave a Reply