Κλωνοποίηση δίσκου UEFI

Ξεκίνησε από ktsiaras, 03 Σεπ 2021, 04:35:06 ΜΜ

« προηγούμενο - επόμενο »

ktsiaras

Άλκη καλησπέρα,
καλή αρχή σε όλους εύχομαι και καλή δύναμη!

Έκανα clone τον παλιό δίσκο μου (250GB) σε ένα μεγαλύτερο για να δώσω λίγο περισσότερο χώρο σε ubuntu αλλά κ Windows...
Ο νέος δίσκος, bootarei κανονικά στο ubuntu αλλά όχι στα Windows. Διάβασα πως μάλλον φταίει οτι δεν τον αναγνωρίζει σαν bootable partition το UEFI.

Υπάρχει τρόπος να το αλλάξουμε μέσα από το ubuntu αυτό; Η' θα πρέπει να ξανακάνω cloning με κάποιο άλλο τρόπο ίσως;
Ευχαριστώ!

alkisg

Καλησπέρα Κώστα,

με ποιον τρόπο έκανες την κλωνοποίηση;

Ένας τρόπος είναι ο παρακάτω:

Μπουτάρουμε από live USB. Βλέπουμε τους δίσκους με `sudo lsblk --fs`. Ας υποθέσουμε ότι ο /dev/sda είναι η πηγή και ο /dev/sdb είναι ο προορισμός.
Αποπροσαρτούμε τα πάντα με: sudo umount /dev/sda? /dev/sdb?
Απενεργοποιούμε και τα swap partitions, αν υπάρχουν, με: sudo swapoff -a
Αντιγράφουμε το sda στο sdb: sudo dd if=/dev/sda of=/dev/sdb bs=1M status=progress

ΑΝ ο δίσκος είναι UEFI, και ΑΝ ο δεύτερος δίσκος έχει διαφορετικό μέγεθος από τον πρώτο, ανοίγουμε τον sdb με το gparted, μας ρωτάει να διορθώσει το GPT table και του λέμε ναι. Αυτό συμβαίνει επειδή το GPT αποθηκεύεται και στην αρχή και στο τέλος του δίσκου, και έτσι με το dd πήγε σε λάθος θέση.

Reboot και έτοιμο, θα πρέπει να παίζουν οποιαδήποτε λειτουργικά κι αν είχε επάνω.

ktsiaras

Ευχαριστώ Άλκη,

Για την κλωνοποίηση  κατέβασα το Macrium Reflect.

Άλλαξα το μέγεθος του partition των Windows και "μετέφερα" κατά το cloning το partition των ubuntu
στο τέλος για να είναι δίπλα από το unallocated κομμάτι.  Έπειτα με το gparted έδωσα τα έξτρα GBs στο ubuntu partition.

Προς το παρόν χρησιμοποιώ τον νέο, κλωνοποιημένο δίσκο εφόσον bootarei κανονικά στα ubuntu...

alkisg

Δεν το ξέρω καθόλου αυτό το πρόγραμμα οπότε δεν ξέρω αν αντιγράφει σωστά τα Windows ή όχι.
Αν δεν τα έχει αντιγράψει σωστά, θα πρέπει να χρησιμοποιήσεις άλλο πρόγραμμα, όπως το dd, το gparted, το partimage κλπ.

ktsiaras

Τελικά το πρόβλημα επιλύθηκε χρησιμοποιώντας την εντολή bootrec στο cmd. Τα βήματα τα βρήκα σε κάποιο site... (δεν το θυμάμαι)
Τώρα bootarei όπως παλιά και σε ubuntu και σε windows...

Ευχαριστώ Άλκη!
Καλή συνέχεια!

happiness

Άλκη ακολούθησα τις οδηγίες σου για να κλωνοποιήσω partition με ltsp σε εξωτερικό δίσκο. Μετά την αντιγραφή, άνοιξα τον εξωτερικό με gparted αλλά δεν μου προσφέρει φτιάξιμο του GPT και ο δίσκος δεν μπουτάρει (δεν εμφανίζεται στο μενού συσκευών για να επιλέξω).

alkisg

@happiness για ποιες οδηγίες λες;
Αυτές που αναφέρω στο παρόν θέμα είναι για κλωνοποίηση δίσκου, όχι partition...

vovos

Χθες έκανα κλωνοποίηση στον υπολογιστή μου στο σπίτι που είναι UEFI. Ανακάλυψα ότι το Gparted κάνει πολύ εύκολα κλωνοποίηση με copy-paste! Κάνεις copy το partition που θες και paste στον δίσκο που θες. Το καλό είναι πως τα αντιγράφει όλα, αντιγράφει μέχρι και το UUID οπότε δεν χρειάζονται και αλλαγές στο fstab ή σε paths που το χρησιμοποιούν!
Το μόνο που χρειάστηκε μετά ήταν να περάσω στον καινούριο δίσκο πάλι το GRUB EFI με chroot. Έχω σημειώσει τα βήματα για αυτό αλλά τα έχω στο σπίτι. Θα τα γράψω αργότερα εδώ.

vovos

Οι οδηγίες για επανεγκατάσταση του Grub σε EFI σύστημα:

List all partitions and look for Linux root partition:
sudo fdisk -l

Then mount it (replace sda2 with the proper one):
sudo mount /dev/sda2 /mnt

Then mount the EFI boot partition (replace sda1 with the proper one):
sudo mount /dev/sda1 /mnt/boot/efi

Then run:
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt

Then install GRUB to the device (replace sda with the proper one):
grub-install /dev/sda

exit

sudo umount /mnt/dev
sudo umount /mnt/proc
sudo umount /mnt/sys
sudo umount /mnt/boot/efi
sudo umount /mnt

happiness

vovos αυτή τη στιγμή έχω το σύστημα το οποίο κλωνοποίησα (partition) και το αντίγραφό του (σε ενιαίο δίσκο) . Ποιο είναι το "linux boot partition"και ποιο το "EFI boot partition" ;

vovos

#10
Αρχικά θα πρέπει να έχεις αντιγράψει με το Gparted και το EFI partition αλλά και το Linux Root Partition. Από το Gparted φαίνεται ποιο partition είναι το EFI και ποιο το Linux root partition.

Εναλλακτικά μπορείς να τα βρεις βλέποντας το αποτέλεσμα της εντολής "sudo fdisk -l"

Π.χ. στο δικό μου σύστημα το αποτέλεσμα είναι:
Παράθεσηsudo fdisk -l
Disk /dev/nvme0n1: 238,49 GiB, 256060514304 bytes, 500118192 sectors
Disk model: SAMSUNG MZVLB256HAHQ-00000             
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: D716C9B0-E249-4814-87EF-D231F7FAC1BE

Device          Start      End  Sectors  Size Type
/dev/nvme0n1p1    2048  1050623  1048576  512M EFI System
/dev/nvme0n1p2 1050624 500117503 499066880  238G Linux filesystem


Disk /dev/sda: 1,84 TiB, 2000398934016 bytes, 3907029168 sectors
Disk model: TOSHIBA DT01ACA2
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 60671B41-9CEA-4B8C-9491-9A78415DB48D

Device    Start        End    Sectors  Size Type
/dev/sda1  2048 3907028991 3907026944  1,8T Linux filesystem

Βλέπω παραπάνω την γραμμή:
Παράθεση/dev/nvme0n1p1    2048  1050623  1048576  512M EFI System
Άρα το EFI partition στον δικό μου υπολογιστή είναι το /dev/nvme0n1p1.

Επίσης βλέπω την γραμμή:
Παράθεση/dev/nvme0n1p2 1050624 500117503 499066880  238G Linux filesystem
Άρα το Linux root partition στον δικό μου υπολογιστή είναι το /dev/nvme0n1p2.

happiness

Παράθεση από: vovos στις 11 Απρ 2022, 08:56:56 ΠΜΑρχικά θα πρέπει να έχεις αντιγράψει με το Gparted και το EFI partition αλλά και το Linux Root Partition. Από το Gparted φαίνεται ποιο partition είναι το EFI και ποιο το Linux root partition.
Είχα ακολουθήσει τις οδηγίες του Άλκη οπότε μάλλον μου λείπουν αυτά από τον εξωτερικό δίσκο. Να ξανακάνω αντιγραφή από το Gparted τώρα όλων των partitions  που χρειάζομαι (filesystem και boot) ή να πάρω μόνο το boot;

vovos

Το EFI partition (που είναι FAT32) θα πρέπει να είναι πάντα το πρώτο partition στον δίσκο. Αν μπορείς να μετακινήσεις τα partitions που ήδη έχεις γράψει και να το βάλεις πρώτο τότε μπορείς να το δοκιμάσεις. Πάντως πιο απλό και ίσως πιο γρήγορο (αφού η μετακίνηση partitions είναι πολλές φορές πιο αργή από την απλή αντιγραφή) είναι να τα σβήσεις όλα στον νέο δίσκο και να κάνεις copy-paste από το Gparted όλα τα partitions που θες από τον παλιό, πάντα με την ίδια σειρά που είναι και στον παλιό.

happiness

Έχω μία ερώτηση κρίσεως. Το σύστημα που προσπαθώ να κλωνοποιήσω είναι dual boot με windows. Ο κλώνος δίσκος (ο οποίος περιέχει μόνο το linux) όταν μπουτάρει θα με βγάζει πάλι στο boot selection ; Ή προχωράει κανονικά στο linux που είναι το μοναδικό στον συγκεκριμένο δίσκο;

vovos

Παράθεση από: happiness στις 20 Απρ 2022, 10:04:17 ΜΜΈχω μία ερώτηση κρίσεως. Το σύστημα που προσπαθώ να κλωνοποιήσω είναι dual boot με windows. Ο κλώνος δίσκος (ο οποίος περιέχει μόνο το linux) όταν μπουτάρει θα με βγάζει πάλι στο boot selection ; Ή προχωράει κανονικά στο linux που είναι το μοναδικό στον συγκεκριμένο δίσκο;
Αν έχεις κάνει τα βήματα σωστά, ναι, θα σε βγάλει στο boot selection. Αν υπάρχει ή όχι boot selection δεν έχει να κάνει με το περιεχόμενο και το πλήθος των partitions αλλά με μια παράμετρο στο αρχείο grub. Συγκεκριμένα με:
sudo pluma /etc/default/grub

Ανοίγουμε το αρχείο. Στη συνέχεια αν δεν θέλουμε να εμφανίζεται μενού τότε βάζουμε:
GRUB_TIMEOUT_STYLE=hidden

Αν θέλουμε μενού βάζουμε:
GRUB_TIMEOUT_STYLE=menu

Αφού κάνουμε αποθήκευση πρέπει οπωσδήποτε να τρέξουμε την παρακάτω εντολή για να περαστούν οι αλλαγές:
sudo update-grub