Plus d'accès à un disque sur dual boot

Salut,

J’ai installé wheezy en dual boot avec Ubuntu LTS (deux fois à cause d’un problème persistant), et je crois que j’ai fait des bêtises :whistle:
Le problème est simple: je n’arrive plus à accéder au disque qui contient Ubuntu, ni a lancer ce système:

Error mounting: mount exited with exit code 1: helper failed with: mount: wrong fs type, bad option, bad superblock on /dev/sda1, missing codepage or helper program, or other error In some cases useful info is found in syslog - try dmesg | tail or so
Et dmesg | tail donne:

dmesg | tail [ 25.599442] wlan0: authenticate with 00:24:d4:e5:d4:c8 (try 1) [ 25.601610] wlan0: authenticated [ 25.632406] wlan0: associate with 00:24:d4:e5:d4:c8 (try 1) [ 25.636153] wlan0: RX AssocResp from 00:24:d4:e5:d4:c8 (capab=0x411 status=0 aid=1) [ 25.636163] wlan0: associated [ 25.643433] ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready [ 76.943561] gnome-settings-[3412]: segfault at 40 ip ae0f46e0 sp bfbaeeec error 4 in libmouse.so[ae0f2000+9000] [ 77.800156] gnome-settings-[3454]: segfault at 40 ip ae0e06e0 sp bfee536c error 4 in libmouse.so[ae0de000+9000] [ 293.506260] EXT4-fs (sda1): bad geometry: block count 24414062 exceeds size of device (24413696 blocks) [ 701.140956] EXT4-fs (sda1): bad geometry: block count 24414062 exceeds size of device (24413696 blocks)

Pour info:

[code]fdisk -l

Disque /dev/sda : 250.1 Go, 250059350016 octets
255 têtes, 63 secteurs/piste, 30401 cylindres, total 488397168 secteurs
Unités = secteurs de 1 * 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d’E/S (minimale / optimale) : 512 octets / 512 octets
Identifiant de disque : 0x00016044

Périphérique Amorce Début Fin Blocs Id Système
/dev/sda1 * 2048 195311615 97654784 83 Linux
/dev/sda2 195313662 488396799 146541569 5 Étendue
/dev/sda5 195313664 480051199 142368768 83 Linux
/dev/sda6 480053248 488396799 4171776 82 partition d’échange Linux / Solaris
[/code]

Merci d’avance pour votre aide, c’est un peu la panique là :violin:

En substance, le message d’erreur indique que la taille définie dans le système de fichiers ext4 contenu dans /dev/sda1 est (légèrement) supérieure à la taille de la partition, ce qui évidemment pose un gros problème. D’autre part on voit qu’il y a un espace vide entre la fin de sda1 et le début de sda2, mais il est inférieur à la différence de tailles : même si on agrandissait sda1 jusqu’au début de sda2, cela ne suffirait pas.
Tu as redimensionné des partitions ?

merci pour ta réponse.
Oui j’ai redimensionné les partitions pour pouvoir installer debian (j’en ai fait une de 100GB).
J’ai fait la même chose que lors de la première installation mais là je remarque également qu’il n’y a plus de swap pour ubuntu.

Désolé mais tu t’es loupé, ou les outils que tu as utilisés n’ont pas bien fait leur boulot. Il aurait fallu réduire le système de fichiers à une taille inférieure ou égale à la nouvelle taille désirée de la partition. Il ne manque pas grand-chose, mais ce genre d’opération ne supporte pas l’approximation.

Tu peux commencer par agrandir sda1 au maximum avec l’espace qui reste avant sda2, mais comme je l’ai déjà écrit cela ne suffira pas à tout récupérer. Il faudra ensuite réparer le système de fichiers avec fsck.ext4, mais les données qui étaient situées après le début de sda2 sont définitivement hors d’atteinte et perdues, elles ont été écrasées.

Concernant le swap, c’est une question très secondaire, et les deux systèmes peuvent très bien partager la même partition de swap si tu n’utilises pas l’hibernation.

Merci.
Il est fort probable que je me soi loupé oui.
Pour ce qui est d’agrandir sda1 avec l’espace libre je ne sais pas trop comment faire. J’ai regardé dans gparted mais on ne peut que réduire visiblement. Y a-t-il une autre solution?

À propos des données: ce n’est pas le plus important, j’ai fait une sauvegarde de mon /home avant de commencer tout ça donc c’est surtout pour ne pas avoir à réinstaller les deux système et tous les paquets qui m’intéressent…

En examinant la table de partition, je vois qu’il y a un espace de 2048 secteurs entre toutes les partitions, pas seulement après sda1. Je suppose donc que c’est gparted qui insiste pour que ce soit ainsi. De toute façon cela ne représente que 1 Mio, c’est minime en comparaison avec la taille du volume.

Bref, tu peux essayer la réparation de sda1 avec fsck et constater les dégâts. Au mieux les blocs situés après la nouvelle fin n’étaient pas utilisés et tu n’auras rien perdu, au pire il y aura des fichiers qui seront perdus ou tronqués, il faudra déterminer s’ils étaient indispensables.

Apparemment fsck n’est pas capable de corriger la taille du système de fichier, mais on peut le faire avec debugfs (dangereux !), avec la commande set_super_value blocks_count <nouveau_nombre_blocs>. Ensuite fsck pourra corriger les “erreurs” des fichiers situés après la fin.

Bon j’ai refait une install complète avec uniquement debian pour l’instant.
Merci pour ton aide, j’aurais au moins appris des choses au passage!