Forum Linux.général Déplacer mon linux...

Posté par  .
Étiquettes : aucune
0
10
avr.
2007
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  . Évalué à 3.

    1°) tu demarres en niveau 1
    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  . Évalué à 2.

      Tu devais être fatigué quand tu as lu mon message, ma question n'est pas là du tout. Ma question est, quelle est la meilleure manière de faire 2 et 7 (et pour mon /, pas mon /home). Pour être sûr de me bien faire comprendre, pas "la meilleure manière théoriquement c'est ça selon le manuel", mais des infos pratiques
      • [^] # Re: dans l'ordre...

        Posté par  . Évalué à 1.

        ce que j'ai lu

        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  . Évalué à 2.

          Le problème, c'est que ça, ça fait 5 partitions :). Et tu peux me traiter de maniaque du rangement, je ne protesterais pas, mais j'aimerais regrouper /, /home et swap dans une seule partitions étendue. Donc, avant:
          /, /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  . Évalué à 1.

            premierement
            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  . Évalué à 2.

              Je m'explique vraiment si mal que ça ? :)
              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  . Évalué à 1.

                1°) ta question contenant tar :
                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  . Évalué à 2.

                  Le problème, c'est que le man de partimage dit bien qu'il vaut mieux pas essayer de restituer sur une partition de taille différente de l'originale, mais ne dit rien sur le déplacement de la partition de quelques secteurs sur le disque.

                  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  . Évalué à 1.

                    ce qui a foiré avec GRUB...

                    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  . Évalué à 2.

                      Non, non, j'avais bien pris la peine qu'il cherche le /boot/grub du /dev/hda1 (celui qui a pas bougé, le (hd0,0) de grub), c'est pour ça que je dit que c'est étrange...
                      • [^] # Re: dans l'ordre...

                        Posté par  . Évalué à 1.

                        grub s'install sur (hd0,0) mais necessite les fichiers presents dans /boot/grub pour pouvoir reellement fonctionner.

                        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  . Évalué à 2.

                          Non, je persiste, il utilisait les fichiers dans (hd0,0)/boot/grub, qui eux n'ont (normalement) pas bougés d'un poil

                          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.