Lvm+unexpected inconsistency

Bonjour,

Après manipulation sur mes volumes lvm j’ai un drôle de message au démarrage :

[quote]/dev/mapper/WD_1To-Donnees_famille:unexpected inconsistency : run fsck manually
/dev/mapper/WD_1To-sauvegardes : clean 15/32309248 files, 2097390/129228800 blocs
fsck died with exit status 4
filed system check failed. A log is being saved…
repair the file system manually …failed
maintenance shell will now be started./quote]

Help :005 :005

Je pense que je vais refaire les volumes ; ils viennent d’être créés et je n’ai encore rien dessus.

J’ai decommenté les lignes concernant WD-1To dans le fstab.

A y regarder de près, j’aimerais bien savoir ce qui s’est passé ??

A priori c’est une incohérence du système de fichiers qui est dans le volume logique, pas de la structure du volume logique lui-même.
Dans le shell de maintenance tu lances une vérification/réparation du système de fichiers incriminé

et tu vois ce qui se passe.

J’ai pu redémarrer du coup je suis en ssh sur mon serveur sur un portable et pas dans la console de maintenance.

[quote]fsck /dev/mapper/WD_1To-Donnees_famille
fsck de util-linux 2.20.1
fsck: Attention : mauvais format à la ligne 25 sur /etc/fstab
fsck: Attention : mauvais format à la ligne 27 sur /etc/fstab
e2fsck 1.42.5 (29-Jul-2012)
La taille du système de fichiers (selon le superbloc) est de 52428800 blocs
La taille physique du périphérique est de 52272128 blocs
Le superbloc ou la table des partitions est peut-être corrompue !
Arrêter?[/quote]

[quote]La taille du système de fichiers (selon le superbloc) est de 52428800 blocs
La taille physique du périphérique est de 52272128 blocs[/quote]
Si je comprends bien, je dois agrandir le volume physique ou réduire le système de fichier.

Avant de réduire un volume logique, il faut réduire le système de fichiers qu’il contient (avec [mono]resize2fs[/mono] si ext2, ext3 ou ext4). Il faut impérativement que la taille du système de fichiers soit inférieure ou égale à celle de son contenant. Tu peux essayer d’agrandir à nouveau le volume logique à une taille supérieure ou égale à celle du système de fichiers, mais rien ne garantit que les mêmes blocs seront alloués et il se peut donc que les données se trouvant dans la partie tronquée soient corrompues.

M’en fiche, ya rien dans les volumes ; j’ai pas encore transférer mon disque usb.
Le plus simple et le plus propre serait d’effacer ce volume pour le refaire, non ?

Si la taille actuelle du volume te convient, tu peux te contenter de recréer le système de fichiers avec [mono]mkfs[/mono].

[quote]mkfs -t ext4 /dev/WD_1To/Donnees_famille
mke2fs 1.42.5 (29-Jul-2012)
Étiquette de système de fichiers=
Type de système d’exploitation : Linux
Taille de bloc=4096 (log=2)
Taille de fragment=4096 (log=2)
« Stride » = 0 blocs, « Stripe width » = 0 blocs
13074432 i-noeuds, 52272128 blocs
2613606 blocs (5.00%) réservés pour le super utilisateur
Premier bloc de données=0
Nombre maximum de blocs du système de fichiers=0
1596 groupes de blocs
32768 blocs par groupe, 32768 fragments par groupe
8192 i-noeuds par groupe
Superblocs de secours stockés sur les blocs :
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872

Allocation des tables de groupe : complété
Écriture des tables d’i-noeuds : complété
Création du journal (32768 blocs) : complété
Écriture des superblocs et de l’information de comptabilité du système de
fichiers : complété[/quote]

[quote]# e2fsck -f /dev/WD_1To/Donnees_famille
e2fsck 1.42.5 (29-Jul-2012)
Passe 1 : vérification des i-noeuds, des blocs et des tailles
Passe 2 : vérification de la structure des répertoires
Passe 3 : vérification de la connectivité des répertoires
Passe 4 : vérification des compteurs de référence
Passe 5 : vérification de l’information du sommaire de groupe
/dev/WD_1To/Donnees_famille : 11/13074432 fichiers (0.0% non contigüs), 868493/52272128 blocs[/quote]

[quote]# lvscan
ACTIVE ‘/dev/serveur-debian/root’ [332,00 MiB] inherit
ACTIVE ‘/dev/serveur-debian/usr’ [8,38 GiB] inherit
ACTIVE ‘/dev/serveur-debian/var’ [2,79 GiB] inherit
ACTIVE ‘/dev/serveur-debian/swap_1’ [2,00 GiB] inherit
ACTIVE ‘/dev/serveur-debian/tmp’ [380,00 MiB] inherit
ACTIVE ‘/dev/serveur-debian/home’ [23,15 GiB] inherit
ACTIVE ‘/dev/WD_1To/Donnees_famille’ [199,40 GiB] inherit
ACTIVE ‘/dev/WD_1To/Sauvegardes’ [492,97 GiB] inherit[/quote]
C’est pas que la taille du volume logique ne me convient pas mais tant que j’y suis je pourrais le passer à une taille ronde : 200 Go par exemple pour l’un et 5oo pour l’autre.

[quote]# lvresize -L +1,6G /dev/WD_1To/Donnees_famille
Rounding up size to full physical extent 1,60 GiB
/etc/lvm/archive/.lvm_serveur-debian_3530_338860323: fclose failed: Aucun espace disponible sur le périphérique
Volume group “WD_1To” metadata archive failed.
[/quote]

[quote]— Volume group —
VG Name WD_1To
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 5
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 0
Max PV 0
Cur PV 1
Act PV 1
VG Size 931,51 GiB
PE Size 4,00 MiB
Total PE 238466
Alloc PE / Size 177247 / 692,37 GiB
Free PE / Size 61219 / 239,14 GiB
VG UUID iTxoQN-sAzi-bwPf-2wTT-LlX3-hNdb-lQa6XO[/quote]
???

A mon avis ce n’est pas la peine de t’embêter avec des tailles rondes. Et si tu ajoutes 1,6 Gio à 199,40 Gio, ça va faire 201 Gio. Pas très rond.

L’erreur “Aucun espace disponible sur le périphérique” ne porte pas sur le VG mais sur la racine, lors de la sauvegarde des méta-données LVM dans /etc/lvm/archive/. Vérifie l’espace libre et les inodes sur la racine.

df -h / df -i /
Si la racine est pleine, tu vas avoir d’autres ennuis. 330 Mio, c’est vite rempli. Mais comme tu as utilisé LVM, j’ai une bonne nouvelle : c’est très facile à agrandir à chaud, sans redémarrer, sans système live… Par contre si tous les inodes sont consommés, l’agrandissement n’augmente pas leur nombre.

[quote]df -h /
Sys. fich. Taille Util. Dispo Uti% Monté sur
/dev/mapper/serveur–debian-root 322M 322M 0 100% /[/quote]

[quote]n# df -i /
Sys. fich. Inodes IUtil. ILibre IUti% Monté sur
/dev/mapper/serveur–debian-root 85008 7314 77694 9% /[/quote]
Mince , je fais comment :confused: Agrandir / ?

[quote]# lvscan
ACTIVE ‘/dev/serveur-debian/root’ [332,00 MiB] inherit
ACTIVE ‘/dev/serveur-debian/usr’ [8,38 GiB] inherit
ACTIVE ‘/dev/serveur-debian/var’ [2,79 GiB] inherit
ACTIVE ‘/dev/serveur-debian/swap_1’ [2,00 GiB] inherit
ACTIVE ‘/dev/serveur-debian/tmp’ [380,00 MiB] inherit
ACTIVE ‘/dev/serveur-debian/home’ [23,15 GiB] inherit[/quote]

[quote]df -h /home
Sys. fich. Taille Util. Dispo Uti% Monté sur
/dev/mapper/serveur–debian-home 23G 2,7G 19G 13% /home[/quote]
Je pourrais prendre 10G sur /dev/serveur-debian/home :115
Tu peux m’aider car c’est mon système qui est sur ce vg. J’ai pas envie de tout planter d’autant que j’ai pas de sauvegarde :unamused:

Il n’y a pas d’espace libre dans le VG “serveur-debian” ? Il ne fait que 40 Go ? Aurais-tu laissé l’installateur Debian définir automatiquement les tailles des volumes (grave erreur) ?

Dans ce cas, ne reste-il pas de la place sur le disque système pour créer un PV et agrandir le VG ? (créer le PV sur l’autre disque ne serait pas très sage)

La première chose à essayer, c’est de faire de la place sur la racine en supprimant des fichiers ou paquets inutiles, un vieux noyau…

Sinon, il va falloir effectivement réduire un volume pour pouvoir agrandir la racine. home est généralement le meilleur candidat car c’est le plus gros et on peut le démonter assez facilement (autre possibilité : le swap). Par contre tu n’as pas besoin de prendre 10 Go. 1 Go suffira amplement, voire moins.

L’ordre des opérations est important :

  • fermer toutes les sessions utilisateur non root
  • ouvrir une session root en console ou par SSH directement (sans passer par une session utilisateur)
  • démonter /home
  • exécuter [mono]fsck[/mono] sur le LV home
  • réduire le système de fichiers du LV home avec [mono]resize2fs[/mono]
  • réduire le LV home (à une taille pas inférieure au système de fichiers) avec [mono]lvreduce[/mono] ou [mono]lvresize[/mono]
  • remonter /home
  • agrandir le LV root avec [mono]lvextend[/mono] ou [mono]lvresize[/mono]
  • agrandir le système de fichiers du LV root avec [mono]resize2fs[/mono]

[quote]Aurais-tu laissé l’installateur Debian définir automatiquement les tailles des volumes (grave erreur) ?[/quote] Il me semble que oui.

[quote]Dans ce cas, ne reste-il pas de la place sur le disque système pour créer un PV et agrandir le VG ? (créer le PV sur l’autre disque ne serait pas très sage)[/quote]Je ne crois pas, j’avais sélectionné le disque entier à l’installation. Il fait 40 Go

J’ai fait un [ul]apt-get autoclean[/ul] mais rien n’a changé.

[quote]# du -sh /*
6,4M /bin
19M /boot
0 /dev
95M /etc
2,5G /home
0 /initrd.img
97M /lib
12K /lost+found
472G /media
1,0K /mnt
1,0K /opt
du: impossible d’accéder à « /proc/3579/task/3579/fd/3 »: Aucun fichier ou dossier de ce type
du: impossible d’accéder à « /proc/3579/task/3579/fdinfo/3 »: Aucun fichier ou dossier de ce type
du: impossible d’accéder à « /proc/3579/fd/3 »: Aucun fichier ou dossier de ce type
du: impossible d’accéder à « /proc/3579/fdinfo/3 »: Aucun fichier ou dossier de ce type
0 /proc
49K /root
1,6M /run
6,9M /sbin
1,0K /selinux
1,0K /srv
0 /sys
16K /tmp
713M /usr
1,8G /var
0 /vmlinuz
[/quote]
Il semble que /var occupe beaucoup de place…Les logs sont dedans. Je les consulte rarement. Ce sont sûrement les logs de Squid, Dansguardian,…
Je peux les supprimer mais je ne connais pas la commande .

[quote]du -m /var | sort -g
9 /var/lib/sarg/Daily/2015Jul05-2015Jul05/tristan
9 /var/spool/squid3/00/07
10 /var/lib/sarg/Daily/2015Jul05-2015Jul05
10 /var/spool/squid3/00/27
10 /var/spool/squid3/00/64
10 /var/spool/squid3/00/C8
11 /var/cache/cups
11 /var/spool/squid3/00/1A
11 /var/spool/squid3/00/23
11 /var/spool/squid3/00/FC
12 /var/spool/squid3/00/22
12 /var/spool/squid3/00/5C
13 /var/spool/squid3/00/D4
14 /var/log/installer/cdebconf
14 /var/spool/squid3/00/24
15 /var/log/installer
17 /var/lib/aspell
17 /var/spool/squid3/00/53
18 /var/lib/sarg
18 /var/lib/sarg/Daily
18 /var/spool/squid3/00/17
19 /var/lib/dpkg/info
20 /var/cache
22 /var/lib/dpkg
24 /var/spool/squid3/00/18
25 /var/spool/squid3/00/14
29 /var/spool/squid3/00/71
30 /var/log
77 /var/lib/apt
77 /var/lib/apt/lists
172 /var/lib/clamav
315 /var/lib
924 /var/spool/squid3/00
1180 /var/spool
1180 /var/spool/squid3
1553 /var
[/quote]
vider ces trois là suffirait largement.

[quote]echo >/var/spool/squid3[/quote]??

Inutile, les archives d’apt sont dans /var qui est dans un LV distinct de la racine. Idem pour les logs.

C’est quand même curieux car si j’additionne les répertoires de la racine, je n’obtiens que 225 Mio.

6,4M /bin 19M /boot 95M /etc 97M /lib 12K /lost+found 1,0K /mnt 1,0K /opt 49K /root 6,9M /sbin 1,0K /selinux 1,0K /srv
Je trouve que /etc est quand même un peu gros.
Vérifie aussi dans /media après avoir tout démonté.

Comment je démonte tout çà ?
Un simple umount /etc ??

Non, tu démontes ce qui est monté dans /media.

Alternative : tu montes la racines en bind pour l’examiner sans aucun montage au cas où des fichiers seraient cachés sous un montage :

mount --bind / /mnt du -hsc /mnt/*

[quote]# mount --bind / mnt
mount : le point de montage mnt n’existe pas[/quote]

j’ai démonté ce qu’il y a dans /media : diskexterne (montage usb).

[quote]# du -sh /*
6,4M /bin
19M /boot
0 /dev
95M /etc
2,5G /home
0 /initrd.img
97M /lib
12K /lost+found
107M /media
1,0K /mnt
1,0K /opt
du: impossible d’accéder à « /proc/3821/task/3821/fd/3 »: Aucun fichier ou dossier de ce type
du: impossible d’accéder à « /proc/3821/task/3821/fdinfo/3 »: Aucun fichier ou dossier de ce type
du: impossible d’accéder à « /proc/3821/fd/3 »: Aucun fichier ou dossier de ce type
du: impossible d’accéder à « /proc/3821/fdinfo/3 »: Aucun fichier ou dossier de ce type
0 /proc
49K /root
1,6M /run
6,9M /sbin
1,0K /selinux
1,0K /srv
0 /sys
16K /tmp
713M /usr
1,6G /var
0 /vmlinuz[/quote]