web-dev-qa-db-fra.com

système de fichiers racine en lecture seule

D'une certaine manière, ma Debian est allée lire uniquement dans le système de fichiers racine. Je ne sais pas comment cela a pu arriver.
Par exemple, lorsque je suis en /root dossier et tapez la commande nano et ensuite appuyez sur Tab pour lister le fichier possible dans ce dossier, je reçois le message:

root@debian:~# nano -bash: cannot create temp file for here-document: Read-only file system

De même pour la commande cd lorsque je tape cd /home et appuyez sur Tab pour lister les chemins, j'ai ceci:

root@debian:~# cd /home -bash: cannot create temp file for here-document: Read-only file system

J'ai également des problèmes avec des logiciels comme apt et d'autres. Impossible même de mettre à jour apt-get. J'ai beaucoup d'erreurs comme celle-ci:

Err http ://ftp.de.debian.org wheezy-updates/main Sources
406  Not Acceptable
W: Not using locking for read only lock file /var/lib/apt/lists/lock
W: Failed to fetch http ://ftp.de.debian.org/debian/dists/wheezy/Release  rename failed, Read-only file system (/var/lib/apt/lists/ftp.de.debian.org_debian_dists_wheezy_Release -> /var/lib/apt/lists/ftp.de.debian.org_debian_dists_wheezy_Release).
W: Failed to fetch http ://security.debian.org/dists/wheezy/updates/main/source/Sources  404  Not Found
W: Failed to fetch http ://security.debian.org/dists/wheezy/updates/main/binary-AMD64/Packages  404  Not Found
W: Failed to fetch http ://ftp.de.debian.org/debian/dists/wheezy-updates/main/source/Sources  406  Not Acceptable
E: Some index files failed to download. They have been ignored, or old ones used instead.
W: Not using locking for read only lock file /var/lib/dpkg/lock

J'ai beaucoup de problèmes avec le système. Est-il possible de résoudre ce problème? Comment puis-je vérifier ce qui s'est passé? Que dois-je rechercher dans les journaux?

Je sais que cela pourrait être dû à la ligne dans /etc/fstab fichier:

/dev/mapper/debian-root /               ext4    errors=remount-ro 0       1

mais quel est le problème? Je ne trouve rien ou je ne sais pas où chercher.

Éditer:

J'ai fait des recherches dans les journaux de messages et n'ai trouvé que ceci:

kernel: [    5.709326] EXT4-fs (dm-0): re-mounted. Opts: (null)
kernel: [    5.977131] EXT4-fs (dm-0): re-mounted. Opts: errors=remount-ro
kernel: [    7.174856] EXT4-fs (dm-2): mounted filesystem with ordered data mode. Opts: (null)

Je suppose que c'est correct, car j'ai les mêmes entrées sur d'autres machines Debian.

J'ai trouvé quelque chose dans dmesg (j'ai coupé un peu cette sortie car c'était beaucoup de choses ext4 standard)

root@gs3-svn:/# dmesg |grep ext4
EXT4-fs error (device dm-0) in ext4_reserve_inode_write:4507: Journal has aborted
EXT4-fs error (device dm-0) in ext4_reserve_inode_write:4507: Journal has aborted
EXT4-fs error (device dm-0) in ext4_dirty_inode:4634: Journal has aborted
EXT4-fs error (device dm-0): ext4_discard_preallocations:3894: comm rsyslogd: Error loading buddy information for 1
EXT4-fs warning (device dm-0): ext4_end_bio:250: I/O error -5 writing to inode 133130 (offset 132726784 size 8192 starting block 159380)
EXT4-fs error (device dm-0): ext4_journal_start_sb:327: Detected aborted journal

5 erreurs et 1 avertissement. Des idées? Est-il sûr d'utiliser mount -o remount, rw /?

25
s1c

Le comportement par défaut de la plupart des systèmes de fichiers Linux consiste à protéger vos données. Lorsque le noyau détecte une erreur dans le sous-système de stockage, il rend le système de fichiers en lecture seule pour éviter (plus) la corruption des données.

Vous pouvez régler cela quelque peu avec l'option de montage errors={continue|remount-ro|panic} qui sont documentés dans le manuel du système (man mount).

Lorsque votre système de fichiers racine rencontre une telle erreur, la plupart du temps, l'erreur ne sera pas enregistrée dans vos fichiers journaux, car ils seront désormais également en lecture seule. Heureusement, puisqu'il s'agit d'une action du noyau, le message d'erreur d'origine est d'abord enregistré dans la mémoire, dans le tampon d'anneau du noyau. À moins qu'il n'ait déjà été vidé de la mémoire, vous pouvez afficher le contenu du tampon en anneau avec la commande dmesg. .

La plupart des disques durs réels prennent en charge SMART et vous pouvez utiliser smartctl pour essayer de diagnostiquer la santé du disque.

Selon les messages d'erreur, vous pouvez décider qu'il est toujours sûr d'utiliser le système de fichiers et de le renvoyer en lecture-écriture avec mount -o remount,rw /

En général cependant, les erreurs de disque sont un précurseur pour terminer la défaillance du disque. Il est maintenant temps de créer une sauvegarde de vos données ou de confirmer l'état de vos sauvegardes existantes.

30
HBruijn