O disco rígido é a parte mais importante do seu computador. É nele que são armazenados os ficheiros do sistema operativo e outras informações importantes. A unidade de armazenamento no disco rígido é um sector ou bloco. É onde é armazenada uma determinada quantidade de dados, normalmente 512 ou 1024 bytes. Ao longo do tempo, o disco desenvolve sectores de bits que deixam de funcionar, mas o sistema de ficheiros continua a tentar escrever informações nesses sectores. É extremamente difícil escrever informações nesses sectores, pelo que o utilizador pode perdê-los. Esta desvantagem é caraterística dos discos rígidos HDD, ao passo que os SSD não têm estas desvantagens. Têm um controlador especial que move os dados dos sectores de bits para os sectores de trabalho. Neste artigo vamos dizer-lhe como verificar os sectores de bits de um disco em Linux.
No Linux, um programa chamado badblocks é usado para procurar sectores defeituosos num disco rígido. Se precisar de verificar a partição root ou home do disco, é melhor arrancar num LiveCD para que o sistema de ficheiros não esteja montado. Se precisar de ver que partições estão no disco, pode utilizar o comando fdisk
:
$ sudo fdisk -l /dev/sda1
Utilizando a interface gráfica, pode utilizar o Gparted - um utilitário especial. O utilizador só precisa de selecionar o disco pretendido na lista pendente.
Num exemplo concreto, vamos considerar como verificar a partição /dev/sda2
com o sistema de ficheiros XFS. O comando badblocks é utilizado para este fim. A sua sintaxe é bastante simples:
$ sudo badblocks -vn /dev/sda2 -o ~/bad_sectors.txt
Pode precisar das seguintes opções de programa:
-e
- permite-lhe definir o número de blocos de bits, após o qual o teste não deve ser continuado;-f
- por defeito, o utilitário salta o teste de leitura/escrita se o sistema de ficheiros estiver montado para não o danificar; esta opção permite-lhe continuar a realizar estes testes mesmo para sistemas montados;-o
- escreve blocos de bits detectados no ficheiro especificado;-p
- número de varreduras, por padrão apenas uma;-s
- mostra o progresso do scan da partição;-v
- modo máximo detalhado;-i
- permite-lhe transferir a lista de sectores de bits previamente encontrados para que não tenha de os verificar novamente;-n
- utiliza o teste de leitura e escrita segura, durante este teste os dados não são apagados;-w
- permite efetuar um teste de escrita, uma determinada sequência de bytes é escrita em cada bloco, o que apaga os dados que estavam previamente armazenados.Para efeitos de um teste normal, utilize este comando:
$ sudo badblocks -v /dev/sda2 -o ~/bad_sectors.txt
Pode executar este comando no disco do sistema operativo, não há nada de errado com ele - não pode causar nenhum dano. É permitido executar num sistema de ficheiros montado, embora seja melhor não o fazer Se o sistema de ficheiros estiver desmontado, recomendamos que faça um teste de escrita com a opção -n
:
$ sudo badblocks -vn /dev/sda2 -o ~/bad_sectors.txt
Após a conclusão do teste, o sistema deve receber as informações sobre os sectores de bits para que não aceda aos mesmos. Para o fazer, pode utilizar o utilitário fsck e a opção -l
:
$ fsck -l ~/bad_sectors.txt /dev/sda1
Se estiver a utilizar o sistema de ficheiros da família Ext, utilize o comando e2fsck
para procurar blocos de bits e registá-los automaticamente no sistema de ficheiros:
$ sudo e2fsck -cfpv /dev/sda1
Com a opção -c
, é fácil procurar blocos de bits e adicioná-los à lista, -f
verifica o sistema de ficheiros, -p
recupera dados corrompidos e -v
mostra tudo em pormenor.
Agora já sabe como verificar o seu disco rígido e encontrar sectores de bits.