Bonjour à tou(te)s :)
Entrons dans le vif du sujet: mon disque dur est partitionné comme ça:
/dev/hda1 (2 Go): Ancienne partition de restauration de Windows reconvertie en partition de "secours" (en gros, un sysresccd installé sur le disque dur)
/dev/hda2 (500 Mo): swap
/dev/hda3 (16 Go): mon système
/dev/hda4 (20 Go): /home
Je me suis récemment acheté un disque dur externe, j'aimerais donc réduire mon /home à 10 Go et utiliser la place restante pour faire mumuse avec (genre, tester le Hurd, Solaris, OpenBSD, MultiDeskOS...). Mais voilà, pas moyen de créer une nouvelle partition !
J'aimerais donc repartitionner mon disque ainsi:
Laisser /dev/hda1 pour la partition de secours. J'aimerais que si quelque chose foire, celle là reste accessible et intègre (mon lecteur CD étant à motié mort, c'est toujours la merde pour réinstaller, c'est entre autre pour ça que j'ai fait une partition de secours)
Faire une partition étendue Swap (500 Mo) + système (16 Go) + /home (10 Go)
Le reste pour jouer avec.
Ma question: y a t'il moyen de créer la partition étendue pour "envelloper" les 3 autres (cad sans supprimer les 3 partitions, les remplacer par une partition étendue et tout réinstaller). C'est complètement sûr ? sûr ? à peu près sûr ? sûr 0.1 % du temps ?
Si non, comment faire une sauvegarde du système (du /home, un tar suffir pour ce qu'il y a dedans) rapide (cad pas trois jours) et que je puisse de manière fiable restaurer sur un layout des partitions complètement chamboulé. Deux solution me sont venues à l'esprit:
tar:
- me fait peur quant aux fichiers spéciaux (/dev, /proc), les symlinks, les dates, les permissions, les utilisateurs (rien que ça)
+ À part le /etc/fstab, ne sera certainement pas perturbé par le changement de partitionnement
partimage / dd if=/dev/hda3 of=/media/HDD/systeme.hd:
- ext3 va il apprécier d'être ainsi brutalement changé d'une partition primaire à une partition logique ? Quid si la partition est déplacée de quelques cylindres ?
+ Au moins, je suis assuré que ce sera pas la merde avec fichiers spéciaux, liens symboliques, permissions et tout le reste
Pour enfoncer le clou: je n'attends pas de "regarde le manuel, ça dit que tu peux théoriquement le faire". Je sais lire un manuel, merci. J'aimerais plutôt des retours d'expériences, conseils pratiques, etc... Du genre, pas que une fois toutes mes partitions sauvegardées et flinguées, j'aie la mauvaise surprise de voir tar me balancer à la gueule: "ha oui, le mode archive, c'est super, mais il fallait créer les utilisateurs AVANT d'essayer de restaurer les permissions, et de toute manière, j'aime pas les archives de plus de 2 Go, désolé" (j'exagère bien sûr, mais je pense à toute autre connerie à laquelle j'aurais pas pensé avant :p)
Voilà, bonne nuit à tous, et que le forum me porte conseil :)
# dans l'ordre...
Posté par NeoX . Évalué à 3.
2°) tu copie ton hda4 sur le disque externe
3°) tu degages ton hda4 (fdisk est ton ami)
4°) tu crees ta partition etendue
5°) tu crees ta partition logique de 10Go (hda5)
6°) tu crees ta partition logique pour tes tests (hda6)
7°) tu recopies tes données du disque externe sur hda5
8°) tu modifie fstab pour lui dire que c'est hda5 qui est /home
CQFD
[^] # Re: dans l'ordre...
Posté par Moonz . Évalué à 2.
[^] # Re: dans l'ordre...
Posté par NeoX . Évalué à 1.
actuellement
hda1 : rescue 2Go
hda2 : swap 500mo
hda3 : / 16Go
hda4 : /home 20Go
futur
hda1 : rescue 2Go
hda2 swap 500mo
hda3 : / 16Go
hda4 : etendue
--- hda5 : /home 10Go
--- hda6 : pour jouer
il n'y a donc bien que ton /home qui bouge
ensuite comment faire pour deplacer des fichiers et des partitions :
pour les fichiers
- en ligne de commande avec cp
- en mode graphique
pour les partitions
- en ligne de commande avec fdisk
- en mode graphique avec gparted/qtparted
je ne vois pas bien ou est le probleme.
à moins que tu ne veuille un pas à pas detaillé genre, tu lances le soft, tu cliques ici, tu vas là, puis tu coches cette option...
ma premiere reponse n'est pas une simple theorie, c'est comme ca que je l'aurais fait si j'avais eu la machine sous les yeux.
[^] # Re: dans l'ordre...
Posté par Moonz . Évalué à 2.
/, /home, swap, rescue: partitions primaires
après:
rescue: partition primaire,
/, /home, swap: partition étendue
bac à sable: une autre partition étendue
Mon problème est donc que mon / va devoir bouger d'une partition primaire à une partition étendue. Ma première question était "peut on juste créer une partition étendue "autour" des trois autres sans avoir à tout déplacer d'un DD à l'autre ?"
Comme je pense que cette question est vraiment naive (mais ça coute rien de demander ;)), ma deuxième question est: comment déplacer une partition / en toute tranquilité ?
-> avec partimage, ext3 ne sera t'il pas perturbé d'être bougé de quelques blocs sur le disque dur (puisque apparament partimage se contente d'une copie "bloc à bloc") ?
-> avec tar: mon /dev appréciera t'il d'être baladé dans une archive ?
[^] # Re: dans l'ordre...
Posté par NeoX . Évalué à 1.
5 partitions, ben tu les auras toujours (rescue, / , /home, swap et bac à sable)
qu'elles soient en primaire ou en logique (à l'interieur de l'etendue)
au mieux que tu puisse faire c'est copier le /home dans le / et là tu resteras à 4 partitions.
5 partitions n'est pas une fatalité, la limite de 4 c'est 4 partitions primaires
mais on peut faire :
3 primaire
1 etendue
puis dans l'etendue autant (enfin presque mais je ne connais pas la limite) de partitions logiques que necessaire.
deuxiemement
mettre /, /home, swap dans la partition etendue ne changera rien si ce n'est te faire "chier" dans tes manips en augmentant le nombre de manip sans changer fondamentalement les choses.
tu ne peux pas construire de partition etendue "autour" de partitions existantes, au mieux il faut casser et refaire les partitions.
conclusion
donc pour faire ce que tu veux faire et dans la simplicité, voir mon premier post.
si tu veux te "faire chier" à mettre en partition logique (dans la partition etendue)
1°) tu demarres sur un LIVECD
2°) tu reprend mon premier post (encore lui)
en repetant les etapes pour chaque partition qui va etre deplacé
2a°) copie des fichiers contenus dans la partition vers le disque externe (cp ou tar+bzip+cp)
2b°) defaire les partitions primaire qui te gene
2c°) faire la partition etendue APRES ta partition rescue
3°) faire les partitions logiques pour /, /home, swap, et sandbox
4°) recopier depuis le disque externe vers les nouvelles partitions
5°) editer le etc/fstab de la nouvelle / pour qu'il corresponde aux nouveaux rangements.
au final tu auras:
hda1 : rescue 2Go
hda2 : etendue
--- hda5 : / 16Go
--- hda7 : /home 10Go
--- hda8 : swap
--- hda9 : pour jouer 10Go
[^] # Re: dans l'ordre...
Posté par Moonz . Évalué à 2.
En gros, oui, je veux me faire chier, et oui, je sais que je dois faire ces étapes, oui, j'éditerais on fstab, et toussa. Ma question concernait tes étapes 2a et 4: comment copier une partition / sans trop de bobo: partimage ou tar ?
-> tar ne va il pas faire n'importe quoi avec mon /dev (et autres fichiers spéciaux) ? Autrement dit, si je fais tar cpf /media/HDD/root.tar /mnt/hda3 (en étant dans le système de secours avec /dev/hda3 monté sur /mnt/hda3), les fichiers spéciaux vont ils vraiment apprécier ?
-> avec partimage, ext3 ne va t'il pas être perturbé d'être bougé un peu sur le disque ? Autrement dit, si je fais un dd if=/dev/hda3 of=/media/HDD/root.hd, mon système de fichier sera t'il toujours valide après restauration ? (dd if=/media/HDD/root.hd of=/dev/hda5)
[^] # Re: dans l'ordre...
Posté par NeoX . Évalué à 1.
man tar pour savoir s'il sait gerer les fichiers speciaux
2°) partimage/dd
je ne suis pas sur que la restitution
device hda3 -> dump -> device hda5
se passe bien si le device de destination n'a pas la meme taille que le device de départ
à confirmer aussi avec le man de partimage et de dd
3°) depuis qu'on dialogue, enfin qu'on essaie,
A) tu voulais un retour d'experience, chez moi les 2 procedures citées ont toujours fonctionné
B) en lisant les man et les FAQ des logiciels dd, tar, partimage, tu devrais en savoir plus voire meme avoir des reponses à tes questions (ca le fait, ca le fait pas, y compris des gens qui ont essayé de se prendre la tete à faire compliqué quand on peut faire simple et efficace)
mais je suis peut-etre debile...
:-p
[^] # Re: dans l'ordre...
Posté par Moonz . Évalué à 2.
Pour tar:
$ man tar -Pcat | grep -i special
$
Bon, finalement, j'ai sauvegardé des deux manières, ça reste le plus simple. La méthode partimage a fonctionné, je n'ai donc pas essayé avec tar...
...en fait, c'est grub qui n'a pas apprécié, je ne sais pas pourquoi. Au démarrage, il affichait juste "GRUB", et pas de menu. Bon, tout est rentré dans l'ordre (après avoir bataillé pendant 2h avec mon lecteur CD pour qu'il accepte de lire un sysrescuecd), mais là, je suis curieux de savoir ce qui a foiré (j'avais pris toutes mes précautions de ce côté)...
[^] # Re: dans l'ordre...
Posté par NeoX . Évalué à 1.
ben il cherche la zone
/boot/grub
et comme le / a changé, forcement il ne retrouve pas ces petits
j'avais parler de modifier le fstab, j'ai du oublié de parler du /boot/grub/menu.lst
:-/
désolé.
[^] # Re: dans l'ordre...
Posté par Moonz . Évalué à 2.
[^] # Re: dans l'ordre...
Posté par NeoX . Évalué à 1.
dans TA nouvelle config tu as deplacé / (et donc forcement /boot) de hda3 (ancien) à hda5 ou 6 (nouveau)
dans ma config, je ne touchais pas à /
donc normal que grub n'arrive pas à se lancer.
[^] # Re: dans l'ordre...
Posté par Moonz . Évalué à 2.
Mais je viens de comprendre: j'avais laissé un splash (hd0,2)/boot/grub/splash.xpm.gz. Étrange qu'il se soit foiré là dessus (d'habitude, quand il trouve pas le fichier splash, il se contente de pas l'afficher), mais tout à fait excusable :p
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.