Meilleure façon de cloner une installation (copie sur un matériel identique)


53

Un peu comme cette question, mais légèrement différente (je pense), en ce sens que j'ai 6 machines identiques Acer Aspire Revo R3610. L'une est (presque) configurée selon mes besoins - une fois ma préparation terminée, j'aimerais que les cinq autres machines soient absolument identiques. Je suis très nouveau chez Ubuntu. Quel est le moyen le plus simple de le faire?

Les machines vivront sur des réseaux différents si cela pouvait poser problème (par exemple, avec Windows, vous pouvez cloner des disques, mais vous devez ensuite modifier le registre pour pouvoir les utiliser sur le même réseau, etc.). Le matériel des 6 machines est, je le répète, le même!

Comment puis-je efficacement cloner une image source sur ces machines identiques?

Veuillez limiter un logiciel / solution par réponse

Réponses:


31

Clonezilla semble correspondre à vos besoins


1
Totalement le bon outil pour le travail. Ma mère utilise 'Mumbuntu' et je prends un instantané de son Acer Revo à l'aide de clonezilla et le ramène à la maison pour restaurer sur un Revo que je possède en tant que sauvegarde. Fonctionne un régal.
Popey

7
L'utilisation d'outils tels que partimage et ntfsclone (utilisé par Clonezilla pour créer l'image disque) présente l'avantage de comprendre le système de fichiers sous-jacent de chaque partition, ce qui leur permet de copier uniquement les blocs utilisés. Dd ne disposant pas de cette fonctionnalité, il doit copier chaque octet de la partition, qu’elle soit utilisée ou non.
Evan

1
Ça craint. Échec de la copie après deux jours de travail. Se bloque sur le calcul bitmap ... Utilisez Windows et Acronis Trueimage
Olcay Ertaş le

DD ne créera-t-il pas le CD de sauvegarde amorçable? Est-ce la raison d'utiliser CloneZilla?

@YumYumYum: ddcrée des copies d'un fichier / partition / lecteur. Donc, si vous clonez un CD amorçable ( .isoimage ou CDFSpartition), le résultat sera également amorçable. Mais ddva pas « convertir » un ensemble de dossiers / fichiers à une image de démarrage.
MestreLion

17

jj

Une copie de bas niveau utilisant dd ferait l'affaire!

Méfiez-vous des adresses IP et des noms d'hôte en conflit.

En gros, placez le lecteur source et le lecteur de destination sur le même ordinateur, démarrez dans un cd en direct. Et exécutez quelque chose comme ce qui suit où /dev/sdaest la source et /dev/sdbla destination:

dd if=/dev/sda of=/dev/sdb bs=4096

Je me souviens des opérandes de:

if -> fichier d'entrée

of -> fichier de sortie

bs -> taille de bloc (combien d'octets à lire à la fois)


3
Bien sûr, pourquoi pas? = / J'ai vu des gens faire ça et j'ai vu des gens ne pas le faire. Y a-t-il un guide de style quelque part pour y répondre?
Derek

si vous avez activé IP dynamique, temporaire avant de créer ce CD / USB de démarrage / de sauvegarde. Je crois qu’il ne devrait y avoir aucun problème de conflit de propriété intellectuelle. Tant que la sauvegarde est de A à Z, cela compte vraiment pour moi, à cause de mon grand nombre de pilotes.

2
A quel point est-ce sûr, étant donné que toutes les clés publiques / privées utilisées par exemple par OpenSSH seraient identiques? Que devrions-nous changer pour assurer la sécurité du système (différent là où nous ne le serions pas)?
du

Qu'entendez-vous par exécuter "quelque chose comme ceci? Je suis positif pour sda et sdb mais je ne comprends pas pourquoi vous avez choisi ce bs.
SDsolar

3

Créez une image à l'aide de Remastersys , transférez-la sur une clé USB à l'aide de l' utilitaire Startup Disk Creator et installez-la sur un autre système.


3

Le moyen le plus simple de procéder consiste à exécuter une installation Ubuntu sans système d'exploitation sur votre disque dur, à installer VirtualBox et à configurer une machine virtuelle Ubuntu. Exécutez votre machine virtuelle et configurez cette installation comme vous le souhaitez, avec tous les éléments que vous souhaitez. Travaillez et jouez sur l’ordinateur virtuel.

VirtualBox conserve la machine virtuelle en tant que fichier image de disque volumineux (.vdi) avec quelques autres fichiers de configuration beaucoup plus petits. Chaque fois que vous souhaitez sauvegarder votre machine virtuelle, fermez-la et copiez son répertoire dans votre emplacement de sauvegarde. J'utilise un lecteur externe Passport à cette fin.

À l'heure actuelle, il existe une machine virtuelle Windows 7 et une machine virtuelle Ubuntu 12 sur ce lecteur externe. Toutes les mises à jour du système, programmes, fichiers personnels, images, peu importe, sont enregistrés dans ces machines virtuelles. Une sauvegarde de ce type est très rapide, car un gros fichier image disque sera transféré beaucoup plus rapidement que ne le ferait un groupe de fichiers individuels. Puisque VirtualBox conserve les fichiers dans ce format tout le temps, la machine virtuelle est toujours configurée pour être sauvegardée.

Un des avantages de cette configuration est que je peux exécuter ces machines virtuelles à partir du lecteur externe sur n’importe quel ordinateur sur lequel VirtualBox est installé. Désormais, au lieu de traîner mon ordinateur tout autour, j’apporte simplement mon lecteur externe avec Windows et Ubuntu, installez VirtualBox sur quel que soit l'ordinateur que je prévois d'utiliser (tous les fichiers d'installation de VirtualBox se trouvent également sur mon disque dur externe (ils sont disponibles pour tous les principaux systèmes d'exploitation)), et je suis prêt à partir. Je peux soit copier ma machine virtuelle sur l'ordinateur que j'utilise, ou simplement l'exécuter à partir du lecteur externe.

Si votre ordinateur tombe en panne et qu'il meurt à un moment ou à un autre, cela ne fait rien, il vous suffit de récupérer votre disque d'installation Ubuntu, de l'installer sur votre ordinateur neuf ou réparé, de brancher votre disque externe, d'installer VirtualBox et de copier vos machines virtuelles sur votre ordinateur - problème résolu avec un minimum de stress, de perte de temps et de données. La quantité de données que vous perdez dépend de la dernière sauvegarde. Pour ma part, je fais une nouvelle sauvegarde chaque fois que je fais un changement majeur ou que je rajoute un programme difficile à obtenir. Assurez-vous simplement que votre machine virtuelle fonctionne normalement lorsque vous le faites. Vous ne voudriez pas copier une machine corrompue sur une bonne.

Et non, je ne travaille pas pour VirtualBox.


Aimer. Upvote. Je pourrais juste faire ceci sur ma prochaine machine.
SDsolar


2

Je voudrais obtenir un ordinateur comme vous le souhaitez et installer le paquet openssh-server. Générez une paire de clés ssh avec ssh-keygen -t rsa. Ajoutez la clé publique à /root/.ssh/authorized_keys2. Ensuite, je démarrerais les nouveaux ordinateurs avec un cd en direct et brancher une clé USB avec la clé privée ssh. Utilisez gparted pour créer une nouvelle partition. Puis montez la nouvelle partition et lancez quelque chose commesudo rsync -avzx -e "ssh -i /media/disk/path/to/privatekey" --exclude=".gvfs" root@<ImageComputerIP>:/ /path/to/new/partition/

Utilisez la blkidcommande pour trouver l'UUID du système de fichiers que vous venez de créer. Editez le /path/to/new/partition/etc/fstabpour refléter le nouvel UUID (et le type de système de fichiers si vous avez utilisé un système de fichiers différent.)

Ensuite, je suivrais les instructions sur https://help.ubuntu.com/community/Grub2/Installing#via_ChRoot pour savoir comment installer à partir d'un chroot.

Une version simplifiée de cette page (qui ne tient pas compte de LVM, du raid logiciel ou de bcache, ni de / boot séparé comme le fait la page wiki):

Montez les systèmes de fichiers virtuels critiques. Exécutez les commandes suivantes en une seule commande:

for i in /dev /dev/pts /proc /sys /run; do sudo mount -B $i /mnt$i; done

Chroot dans votre périphérique système normal:

sudo chroot /mnt

Réinstallez GRUB 2 (remplacez sda, sdb, etc. par le périphérique approprié. Ne spécifiez pas de numéro de partition):

grub-install /dev/sdX

Recréer le fichier de menu GRUB 2 (grub.cfg)

update-grub

Quitter chroot: CTRL-D sur le clavier

À propos, cela fonctionne aussi bien pour la sauvegarde. Ubuntu, contrairement à Windows, ne semble pas avoir de problèmes à être transplanté sur un matériel différent. J'ai mis des disques durs d'un ordinateur sur un autre et tout s'est bien passé. J'ai également copié les installations sur différents matériels et tout s'est bien passé.


Merci pour cela - j'en ai un autre bientôt, je vais essayer. Cheers
Robsoft

Le lien référencé ne mentionne actuellement ni chroot ni aucune méthode. C'est pourquoi il est judicieux de citer des parties pertinentes de vos sources.
Henno

@ Henno La page wiki a été déplacée. Le problème avec l'inclusion de la page est que le wiki se met à jour avec de nouvelles choses comme bcache et que le simple fait de copier le contenu de la page manquera ces mises à jour, mais l'inconvénient de simplement lier des liens peut vous déplacer. Quoi qu'il en soit, le lien a été mis à jour et une version simplifiée incluse.
Azendale


1

G4L

Ghost pour Linux

Ghost for Linux est un outil de création d'image et de clonage de disque dur et de partition similaire à Norton Ghost (c) et (tm) de Symantec. Les images créées sont éventuellement compressées et peuvent être stockées sur un disque dur local ou transférées sur un serveur FTP anonyme. Un lecteur peut être cloné à l'aide de la fonction Click'n'Clone. g4l prend en charge le fractionnement de fichiers si le système de fichiers local ne prend pas en charge l'écriture de fichiers> 2 Go. Le noyau inclus prend en charge les lecteurs ATA, série-ATA et SCSI. Les cartes réseau communes sont prises en charge. Il est présenté sous forme d'image CD amorçable avec une interface graphique ncurses pour une utilisation facile.


OMG. C'est précisément ce que je voulais depuis des lustres. Même pour Windows. TNX pour le post. Je vais vérifier tout de suite.
SDsolar

1

Fsarchiver

Je ne sais pas pourquoi personne n'en a parlé. Cela s'avère particulièrement utile lorsque vous souhaitez restaurer le contenu de la partition sur un autre type de système de fichiers (par exemple, restaurer le contenu ext4 vers ext2 ou reiserfs) ou que vous souhaitez restaurer une partition plus petite.

Je l'ai utilisé et c'est très facile. Par exemple, pour cloner une partition, /dev/sda1utilisez une commande comme celle-ci.

fsarchiver -A -j 2 -z 1 savefs /media/anwar/USB_Drive/myrootpartition /dev/sda1

L' -Aoption vous permet de copier une partition même si elle est utilisée! Grande fonctionnalité!

-j 2dit d'utiliser 2 cœurs de processeur pour la compression. Utile pour les processeurs multicœurs et si vous utilisez la compression

-z 1 définit le niveau de compression.

Pour restaurer le système de fichiers que vous avez utilisé

fsarchiver restfs /data/myrootpartition.fsa id=0,dest=/dev/sda2

Cela id=0signifie que vous restaurez le premier système de fichiers à partir de l'archive (même si vous n'avez pas enregistré plusieurs partitions sur une seule archive, vous devez le spécifier). Et dest=/dev/sda2définit la destination de la restauration.


0

Je le fais souvent en utilisant rsync.

Tout d’abord, vous pouvez lancer rsync pour charger toutes les données sur un disque dur externe (votre disque dur externe doit être au format ext4 - j’utilise cela, donc je sais que cela fonctionne): je suppose que vous avez deux partitions: / dev / sda1 (racine) et / dev / sda2 (swap).

Exécutez sur votre ordinateur d'origine:

sudo rsync -avuorpESHAX /* /your/hard/drive

Après avoir copié les données, démarrez votre ordinateur suivant avec une clé USB et formatez le disque dur interne en tant que disque dur d'origine.

Montez votre lecteur externe sur /mntet copiez les UUID de toutes les partitions. Éditez les UUID des partitions du nouvel ordinateur et insérez les mêmes UUID que vous avez copiés à partir des données d'origine (celles-ci se trouvent dans /mnt/etc/fstab).

Arrêtez l'échange:

sudo swapoff -a

Créez un nouveau swap en utilisant l'UUID d'origine, copié à partir de /mnt/etc/fstab:

sudo mkswap /dev/sda2 -U original-UUID

(Je suppose que votre échange est en /dev/sda2)

Ensuite, changez l’UUID de /dev/sda1: (la partition doit être démontée pour pouvoir changer d’UUID)

sudo umount /mnt
sudo tune2fs /dev/sda1 -U old-UUID

Ceci fait, montez la partition de destination:

sudo mount /dev/sda1 /mnt

Inverser rsync sur la destination:

sudo rsync -avuorpESHAX /media/your-backup /mnt

Réinstallez le grub:

sudo grub-install --root-directory /mnt /dev/sda

Cela fonctionnera. N'oubliez pas de modifier /etc/hostnameet /etc/hostsde changer le nom d'hôte de chaque ordinateur afin d'éviter les conflits réseau.


-1

N'ayant jamais été dans cette situation (je n'ai pas des centaines de serveurs - je n'ai toujours utilisé que des images de base), je ne peux que vous donner mon instinct.

Cela dit, je dirais que netboot est probablement votre meilleur choix. Créez un serveur maître, faites-le à votre guise, puis démarrez et installez toutes vos autres machines. L'écriture de scripts pour que les choses se passent automatiquement (une fois) ne devrait pas être trop difficile. Vous faites toutes les choses secondaires par kickstart.

Plus (bien que ce soit un peu vieux): https://help.ubuntu.com/community/PXEInstallServer

Edit: Il existe une application appelée system-config-kickstartqui devrait faciliter la génération du fichier kickstart un peu plus facilement. YMMV.

texte alternatif


Pour autant que je sache, ceci system-config-kickstartest fait spécialement pour fedora.
Shaharia Azam

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.