Bonjour à tous,
Je suis nouveau et débutant Linux.
On m'a demandé de cloner un disque (DiskOnModule: mémoire flash sur un port spécifique de la carte mère. Différent de l'IDE classique)
contenant DEBIAN et de le recopier sur des disques classiques (type SSD 2,5", brancher à l'issu sur un slot IDE classique).
J'ai utilisé les commandes suivantes pour duppliquer le DiskOnModule vers mon SSD:
DD IF=/DEV/HDC OF /DEV/HDB
DD IF=/DEV/HDC OF/DEV/HDB BS=512 COUNT=1
Mon disque a cloner est donc nommé HDC (HDC1 et HDC2 pour le swap)
Mon disque destination est donc nommé HDB (HDB1 et HDB2 pour le swap)
Le souci, c'est qu'en tentant de faire booter le nouveau disque sur HDB (pas de souci), jusqu'au moment ou il cherche HDC2 (hors le nouveau swap se nomme HDB2).
A partir de là, je lui indique le nouveau chemin /DEV/HDC2
mais il m'affiche une erreur un peu plus bas: "/BIN/SH : CAN'T ACCESS TTY; JOB CONTROL TURNED OFF"
Je suis une buse en LINUX, malgré tout j'ai tenté de modifier depuis un livecd Kaella "/ETC/FSTAB" (par miracle j'ai réussi), mais impossible de modifier "/BOOT/GRUB/MENU.LST" (problème de droit). Alors que je suis ROOT sur le livecd.
Auriez-vous la solution ? sachant que j'ignore si je me dirige dans la bonne direction !!!
Alexandre
# l'idée est bonne
Posté par NeoX . Évalué à 3.
mais tu va devoir faire à la main ce que certains outils semblent en mesure de faire eux meme.
j'ai deja passé un disque entier vers un autre avec clonezilla,
toutes les partitions ont bougés puisqu'en lors du clonage c'etait sda -> sdb
mais qu'apres le reboot sdb etait devenu sda
et ca s'est bien passé pour toutes les partitions presentes (windows, linux).
si tu peux, eviter les references en dur /dev/hdXY
prefere les UUID ou les LABEL
l'UUID d'un disque s'obtient avec la commande
blkid
et dans fstab suffit de remplacer le /dev/hdXY par UUID=xyztutodp
(xyztutodp etant l'UUID trouvé avec blkid)
mais en admettant qu'il faille quand meme le faire à la main, depuis un livecd/liveusb/bootpxe, voici comment je procede
il faut etre sur qu'il n'y ait que / et swap comme partition sur le disque
sinon il faut mounter d'abord / de destination
mount /dev/hdb1 /mnt
puis si elles existent les autres partitions dans leur dossier respectif ( sdXY -> /boot)
par ex
mount /dev/hdb3 /mnt/boot
mais d'apres ce que tu dis, il n'y a que 2 partitions sur le disk, le / hdb1 et le swap hdb2
enfin, idealement, il faut mounter /dev en bind dans la partition de destination
mount --bind /dev /mnt/dev
peut-etre /proc aussi
mount -t proc /proc /mnt/proc
et finalement entrer dans le systeme de destination pour faire les dernieres commandes :
chroot /mnt
qui devrait te placer sur le nouveau disque, comme si tu etais sur le system final
te permettant de lancer les commandes shell classiques comme grub-install, update-grub
une fois toutes les mises à jour necessaires faites :
* se deconnecter du chroot (
exit
ou Ctrl+D)* demonter proc, dev, boot et finalement /mnt
* redemarrer la machine
# bienvenue
Posté par zyprexa . Évalué à 3.
Bonjour,
Alors comme c'est pas caps lock day je précise que bien des commandes (sinon toutes…) dans le monde gnu / linux prennent compte de la casse.
Ta deuxième commande ne sert à rien car la première a déjà copié l'intégralité de hdc sur hdb (et ça comprend les segments de départ - table de partoches et mbr). La première suffit donc à faire ce que tu souhaites. Je te recommande d'être prudent dans le maniement de ce genre de commandes car on a vite fait de s'emmêler les pinceaux en inversant les disques … écrasant de facto les précieuses données.
Ce genre de transplantation peut effectivement nécessiter des petites retouches sur grub et fstab, mais j'ai du mal à cerner le contexte dans lequel tu te trouves lorsque tu tapes tes commandes.
Avec le live-cd, tu es sur un linux "virtuel", dont les fichiers et toute l'arborescence se trouve en ram -donc volatile.
on va lui créer un répertoire :
mkdir /mnt/arbo
on va le monter :
mount /dev/hdb1 /mnt/arbo
(je précise que c'est à adapter à ton système, cela implique que le disque visé est toujours hdb (ça peut changer suivant les live-cd) et que tu utilises un plan de partitionnement simple (genre mettre la swap en premier puis le root puis le boot N'EST PAS ce qu'on fait d'habitude, mais cela dépend de la fantaisie de l'utilisateur)
et voila pour la 'prep'. Le système de ton disque dur est dispo via /mnt/arbo. Si tu veux donc éditer un fichier par exemple fstab tu fais : nano /mnt/arbo/etc/fstab
En principe, il faut modifier grub.conf, fstab et éventuellement réinstaller le mbr.
Ces étapes peuvent nécessiter pas mal de temps. Je te recommanderais plutôt de récupérer tes données et de repartir de zero avec un live-cd.
# .
Posté par alexandre_b . Évalué à 1.
Merci pour tout vos bons conseils. Je vais tenter vos manipulations dès lundi.
Pour la petite histoire, il s'agit de matériels spécifiques (transmission radio géré par un système Debian). L'entreprise qui a développé cette unité a fait le choix de placer des DiskOnModule (à la place des disques classique). Malheureusement des problèmes de fiabilité apparaissent de temps à autre au niveau du stockage. D’où l'idée de cloner "brute de décoffrage" ces disques.
L'idée de partir de zéro, en installant un OS et replaquant les programmes m'a traversé l'esprit. Mais ne connaissant pas le fonctionnement du système et plus précisément du programme, cela ne m'a pas paru judicieux.
Sachant également qu'il s'agit pour le moment de test afin d'intervenir le jour venu en urgence afin de remettre en état de marche le système (en un minimum de temps).
Vu les circonstances, j'ai une crainte à l'idée de commencer a modifier les données du disque d'origine, au risque de remettre en cause le fonctionnement complet de la machine.
Malgré tout, je vais tenter ce que vous m'expliquer. En espérant que cela fonctionne.
Je vous tient au courant.
Merci.
[^] # Re: .
Posté par totof2000 . Évalué à 3.
ATTENTION !!! Personne ne t'a suggéré de modifier les données d'origine. Toutes les manips suggérées sont à faire sur la copie de destination.
# Autre solution...
Posté par zipe31 . Évalué à -3.
Salut,
Une autre solution consisterait à créer une image ISO de ton disque, puis de monter la partition qui t'intéresse, et de modifier les fichiers adéquats.
[^] # Re: Autre solution...
Posté par zipe31 . Évalué à -1.
Pourrai-je savoir ce qui me vaut ses moinsoiements ?
J'ai dit une c*nnerie ?
Peut-être est-ce le terme ISO ? Il est vrai que j'aurai du parler d'image et non d'image ISO ;-\
Merci d'éclairer ma lanterne.
[^] # Re: Autre solution...
Posté par NeoX . Évalué à 2.
parce que c'est deja ce qu'il fait donc ton commentaire n'apporte strictement rien
il fait un
dd
du diskonmodule vers un vrai disque duret il travaille sur le disque dur
[^] # Re: Autre solution...
Posté par zipe31 . Évalué à 0.
Merci pour cette réponse.
Par contre, si on s'en réfère au message initial que je cite :
N'est-il pas plus aisé de faire une image, de modifier ladite image et ensuite de recopier cette image sur les disques, plutôt que de modifier chaque disque un par un ?
[^] # Re: Autre solution...
Posté par NeoX . Évalué à 2.
si tu le fais une fois, ensuite tu clones le premier clone plutot que l'original
ca revient au meme
toutefois l'avantage de l'image disque sous forme d'un fichier monté en loop,
c'est que tu peux l'utiliser dans une machine virtuelle.
# .
Posté par alexandre_b . Évalué à 0.
Bonjour,
j'ai tapé les commandes suivantes depuis un livecd:
mount /dev/hdb1 /mnt
mount --bind /dev /mnt/dev
chroot /mnt
A partir de là, j'ai pu, sans difficulté modifier /boot/grub/menu.lst et /etc/fstab
J'ai modifié chaque ligne en remplaçant hbc1 par hdb1.
update-grub
update-initramfs -u
vim /etc/initramfs-tools/conf.d/resume
j'ai modifié hdc2 en hdb2
Désormais au redémarrage du système, j'ai une nouvelle erreur (j'ai régressé):
kernel panic-not syncing : VFS :unable to mount root fs on unknown-block
Je suis perdu!
[^] # Re: .
Posté par NeoX . Évalué à 2.
tu fais les commandes dans le desordre,
ton
update-grub
va mettre ton /boot/grub/menu.lst à jour tout seulton
update-initramfs
met à jour le initramfsmais tu modifies les options APRES
et du coup
dit que visiblement il ne connait pas hdb
comme dit precedement essaye de ne pas utiliser les peripheriques blocks
prefere les UUID que tu obtiens avec la commande
blkid
dans ton chroot.et ton fstab doit ressembler à :
[^] # Re: .
Posté par alexandre_b . Évalué à 0.
J'ai suivi les instructions.
A savoir :
J'ai recommencé de zéro:
dd if=/dev/hdc of/dev/hdb
J'ai débranché mon disque d'origine par mesure de précaution.
mount /dev/hdb1 /mnt
mount --bind /dev /mnt/dev
chroot /mnt
/sbin/blkid
J'ai modifié le fstab:
/dev/hdc1 par UUID=id de la partition
/dev/hdc2 par UUID=id du swap
J'ai modifié /boot/grub/menu.lst:
# kopt=root=UUID=id de la partition ro
update-grub
J'ai remplacé RESUME=/dev/hdc2 par UUID=id du swap :
nano /etc/initramfs-tools/conf.d/resume
J'ai remplacé RESUME DEVICE=/dev/hdc2 par UUID=id du swap :
nano /etc/uswsusp.conf
update-initramfs -u car update-initramfs -u -k $(uname -r) me renvoie une erreur …init non trouvé.
Je dois louper une commande: car toujours l'erreur
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(22,1).
[^] # Re: .
Posté par NeoX . Évalué à 2.
presque bien.
sur debian lenny (oui c'est pas tout jeune)
c'est grub 0.97
tu as l'option kroot, mais aussi l'option groot
chez moi groot=(hd0,0)
puis plus bas, placée par update-grub, et reprenant certaines options
on voit ici qu'il utilise le kroot
mais il installe aussi une ligne initrd.
pour cela il faut surement que l'initrd/initramfs existe
dans ton cas le update-initramfs -u -k $(uname -r) se vautre car tu lui demande un upgrade d'un initrd qui n'existe pas
pour cela il faut le creer avec
update-initramfs -c -k $(uname -r)
et tu dois le voir dans /boot
ensuite seulement tu peux lancer le
update-grub
[^] # Re: .
Posté par alexandre_b . Évalué à -1.
Bonjour,
Après plusieurs tentatives, quelques prises de tête, rien n'y fait.
Je me suis aperçu, lors de la commande update-initramfs -c -k $(uname -r) qu'il me renvoit une erreur update-initramfs: failed for /boot/initrd.img-2…
Je vais finir par croire que c'est impossible de cloner 1 disque!!
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.