Como encontrar a causa do sistema de arquivos principal indo para o modo somente leitura

8

Ubuntu 12.04

O sistema de arquivos vai para o modo somente leitura com freqüência. Primeiro de tudo eu li esta questão sistema de arquivos está entrando em leitura somente modo freqüentemente já. Mas eu tenho que saber se não é causado por algo diferente de dying hard drive . Este é o servidor fornecido pelo meu cliente e estou executando apenas alguns node.js workers + um node.js server e estou usando mongodb .

De tempos em tempos (a cada 20-50h) o sistema repentinamente torna o sistema de arquivos somente leitura, o processo mongodb falha (devido a fs somente leitura) e meus servidores / servidores do nó (que são iniciados por forever ) são simplesmente mortos. / p>

Aqui está o log do dmesg - Eu posso ver alguns erros e mensagens que o FS vai ler somente, e há também alguns erros do JOURNAL, mas eu gostaria de encontrar a causa desses erros ..

link

editar

smartctl -t long /dev/sda
smartctl 5.41 2011-06-09 r3365 [x86_64-linux-3.5.0-23-generic] (local build)
Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net

SMART support is: Unavailable - device lacks SMART capability.
A mandatory SMART command failed: exiting. To continue, add one or more '-T permissive' options.

O que estou fazendo errado? O mesmo é para sda2 .

Morover agora quando eu digito qualquer comando que não existe no shell eu recebo isso:

Sorry, command-not-found has crashed! Please file a bug report at:
https://bugs.launchpad.net/command-not-found/+filebug
Please include the following information with the report:

edit2

Acabei de receber informações que este servidor é realmente VPS e eles me disseram que os discos rígidos estão OK e eles estão no RAID 10. E eles me disseram que "forçar fsck no fstab deve ajudar" ...

edit3

aqui é a saída do comando mount :

/dev/sda2 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
none on /media/psf type prl_fs (rw,nosuid,nodev,sync,noatime,share,_netdev)

Portanto, não há drive sda de fato? Apenas sda2?

edit4

Saída do comando fsck -N :

root@ubuntu:~# fsck -N sda
fsck from util-linux 2.20.1
[/sbin/fsck.ext4 (1) -- /] fsck.ext4 sda /dev/sda2 
    
por user606521 22.10.2013 / 09:59

3 respostas

6

[26729.124569] Write(10): 2a 00 03 96 5a b0 00 00 08 00
[26729.124576] end_request: I/O error, dev sda, sector 60185264
[26729.125298] Buffer I/O error on device sda2, logical block 4593494
[26729.125986] lost page write due to I/O error on sda2

Para mim, isso é uma evidência bastante strong de que o seu /dev/sda está saindo. Você poderia executar um teste smartctl para confirmação ( smartctl -t long /dev/sda ), mas eu estaria inclinado a substituí-lo o mais rápido possível.

Editar : o comando smartctl que dei está correto como está escrito. Obrigado por mostrar o modo de falha na sua pergunta; isso parece que você tem hardware muito antigo, ou há algum tipo de camada de tradução no caminho: virtualização ou um controlador RAID de hardware. Você pode esclarecer?

Posso repetir minha afirmação de que seu HDD está saindo? O teste está muito bom, mas a substituição do hardware antes que o sistema seja empacotado e seus dados sejam perdidos deve ser sua prioridade agora. Por favor, no mínimo, certifique-se de que seus backups estejam completamente atualizados antes de perder mais tempo em smartctl .

Editar 2 : certamente vale a pena tentar o que eles sugeriram - fscking o sistema de arquivos - mas tenho pouca esperança de que isso conserte o problema porque o seu FS não está caindo para o modo ro porque das inconsistências do FS, ele está caindo para o modo ro devido a problemas em falar com o hardware subjacente.

Se eles tiverem certeza de que o hardware subjacente está bem, então é um problema entre o kernel e o hardware, isto é, a camada de virtualização. Você provavelmente deve obter o seu provedor de VPS para confirmar que a distro e a versão exata do kernel que você está executando são totalmente suportadas em seu sistema VPS.

    
por 22.10.2013 / 10:06
2

A maneira mais perfeita de encontrar o erro exato pode ser durante o período de somente leitura e executar o comando dmesg para quaisquer erros / problemas. Você também pode tentar executar o fsck no modo dry para descobrir qual é o problema. (desculpe, devido à restrição de acesso, não consigo ver seu anexo. Se estiver durante o período de emissão, eu verificarei mais tarde)

    
por 22.10.2013 / 13:42
0

Eu também havia enfrentado o mesmo problema, no qual o servidor FS estava entrando em somente leitura. Faça uma verificação de inode, eles provavelmente podem estar cheios:

df -i

    
por 17.05.2018 / 06:08