Προς το περιεχόμενο

Αντιγραφή συστήματος σε άλλο partition


myle

Προτεινόμενες αναρτήσεις

Χαίρετε,

έχω dual boot σύστημα με Ubuntu και Debian. Το Debian το έχω σε ένα μικρότερο partition από το Ubuntu. Επειδή πλέον δεν χρειάζομαι το Ubuntu και θέλω να δοκιμάσω κάτι σε BSD, μήπως ξέρετε πως μπορώ να αντιγράψω τα πάντα από το / του Debian στο / στου Ubuntu έτσι ώστε να εξαφανιστεί το Ubuntu και για το Debian να έχω περισσότερο χώρο.

Επίσης, τι πρέπει να κάνω μετά στον grub για να κάνει mount το σωστό partition (αν και νομίζω αυτό είναι αλλαγή ενός αριθμού στο config file).

Στην συνέχεια σκοπεύω να κάνω format στο μικρό partition και εκεί να περάσω το FreeBSD μάλλον.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Αν το κανεις αυτο που λες, να αντιγραψεις το / του debian στο / του ubuntu, θα γινει τρελο μπερδεμα, θα σπασουν τα παντα και θα τρεχεις και δεν θα φτανεις.

 

Για να εισαι οκ θα κανεις τα παρακατω:

1) Aπο ενα live cd, θα παρεις ολο το partition του debian σε ενα .tar.gz και θα το σωσεις καπου.

2) Aφου το εχεις σε ασφαλες μερος, κανεις φορματ και το μεγαλο και το μικρο partition σε ext3 και κανεις και ενα swap κοινο αν δεν το εχεις κανει ηδη.

3) Eπαναφερεις το debian κανοντας το extract στο partition που θες.

4) Aλλαζεις με το χερι το /boot/grub/menu.list να δειχνει τα περι debian και κανεις ενα update-grub στο τελος,

5) Βαζεις το freebsd.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Χαίρετε,

έχω dual boot σύστημα με Ubuntu και Debian. Το Debian το έχω σε ένα μικρότερο partition από το Ubuntu. Επειδή πλέον δεν χρειάζομαι το Ubuntu και θέλω να δοκιμάσω κάτι σε BSD, μήπως ξέρετε πως μπορώ να αντιγράψω τα πάντα από το / του Debian στο / στου Ubuntu έτσι ώστε να εξαφανιστεί το Ubuntu και για το Debian να έχω περισσότερο χώρο.

Επίσης, τι πρέπει να κάνω μετά στον grub για να κάνει mount το σωστό partition (αν και νομίζω αυτό είναι αλλαγή ενός αριθμού στο config file).

Στην συνέχεια σκοπεύω να κάνω format στο μικρό partition και εκεί να περάσω το FreeBSD μάλλον.

 

Αν δε θες να μείνει τίποτα από το ubuntu, τότε θα κάνεις τα εξής:

>
mkfs.ext3 /dev/<to-root-tou-ubuntu>

Μετά απ' αυτό θα κάνεις ένα reboot με ένα liveCD, θα κάνεις κάπου mount το debian και το άδειο partition του ubuntu, και θα αντιγράψεις με cp -a τα περιεχόμενα του ενός στο άλλο.

 

Στη συνέχεια θα αλλάξεις το /etc/fstab και το /boot/grub/menu.lst, ώστε να δείχνουν τα σωστά partitions.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Αν το κανεις αυτο που λες, να αντιγραψεις το / του debian στο / του ubuntu, θα γινει τρελο μπερδεμα, θα σπασουν τα παντα και θα τρεχεις και δεν θα φτανεις.

 

Γιατί να σπάσουν; Σε αρχεία δεν υπάρχουν όλα; Άρα αν αντιγραφούν όλα τα αρχεία είμαστε καλά.

 

 

με resize το μέγεθος των partitions, δεν γίνεται;

 

Επειδή τώρα στο / του debian χρησιμοποιούνται μόνο 5 gb περίπου σκέφθηκα δεν θα είναι πολύ κόπος. Επιπρόσθετα, το να κάνω format και resize είναι μια απλά σχετικά λύση, αλλά ας δοκιμάσουμε και κάτι διαφορετικό να έχουμε και λίγο suspense.

Θα ακολουθήσω τον τρόπο του apoikos και θα δούμε. Ευχαριστώ για τις συμβουλές.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Θα σπασουν γιατι αν το debian εχει την εκδοση x και το ubuntu την y ενος binary executable, μιας βιβλιοθηκης ή ακομα και ενος αρχειου ρυθμισεων στο /etc, θα γινει το χαος μεσα στο /. Οσα γινουν overwrite θα ειναι τα τυχερα.

 

Αναφερω σαν παραδειγμα οτι το debian εχει την alsa v1.0.17 ενω το ubuntu την v1.0.16.

Το alsa μονο του περιλαμβανει εναν daemon τουλαχιστον, δεκαδες βιβλιοθηκες που σχετιζονται αμεσα με τον πυρηνα προκειμενου να εχεις ηχο, αρχεια ρυθμισεων για να λειτουργει η καρτα ηχου οπως προβλεπεται και, κερασακι στην τουρτα, το alsaconf που υπαρχει στο debian μονο και στο ubuntu οχι (δεν ειναι θεμα εκδοσης του alsa, ειναι θεμα της διανομης.

 

Μετα απο ολα αυτα που ειπα, και αφορουν ενα και μονο προγραμμα, δεν νομιζω να το ρισκαρεις.

 

PS Kανονικα θα επρεπε να πω και κατι κακο για το ubuntu και την επιλογη των developers του να μην βαλουν στη διανομη ενα εξαιρετικο εργαλειο σαν το alsaconf. Δεν εχω δει αλλη διανομη που να μην το εχει εγνωσμενα.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Υπάρχει και το gparted που από live cd κάνει copy partition to partition.

 

Apoikos, έχω δει να προτείνουν και το

tar -p -m cf - / | (cd /mnt/point; tar xf - )

αντί του cp -a

 

Κανένας λόγος να προτιμούμε το ένα από το άλλο; (προφανώς για λόγους απλότητας το cp -a είναι καλύτερο!)

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Γενικά σε ένα system mirror σε ενδιαφέρουν τα εξής:

  • Να διατηρούνται τα permissions και ο ιδιοκτήτης
  • Να διατηρούνται τα links
  • Να διατηρούνται τα timestamps
  • Να διατηρούνται τα «ειδικά» αρχεία (devices, pipes, sockets)

Αυτά συμβαίνουν και με την tar και με τη cp -a.

 

Ο μόνος λόγος που μπορώ να σκεφτώ είναι τα symbolic links. Κατά πάσα πιθανότητα η αρχική cp του UNIX και των παλιών BSD όταν καλείται να αντιγράψει symbolic links, αντιγράφει πάντα το περιεχόμενο, σπάζοντας το link στον προορισμό, ενώ η tar αποκαθιστά τα links στον προορισμό. Ωστόσο, η GNU cp υποστηρίζει (μέσω του -d switch, το οποίο υπονοείται από το -a == -dpR) την αντιγραφή των links ως links και όχι ως αρχεία. Ένας επιπρόσθετος λόγος, ο οποίος όμως δε συναντάται σε ένα full system backup, είναι ότι η tar αποθηκεύει συμβολικά το όνομα του χρήστη. Π.χ. ο χρήστης apoikos μπορεί να έχει uid 1000 στο desktop μου και 1001 στο laptop μου. Ένα tar archive από το ένα σύστημα στο άλλο, θα έχει το σωστό apoikos ως owner (δηλαδή το uid του apoikos στο κάθε σύστημα). Αντίθετα, η cp αντιγράφει πάντα το numeric uid. Αυτή η περίπτωση όμως, όπως είπα, μας απασχολεί μόνο όταν μεταφέρουμε (με κάποιον τρόπο) αρχεία από ένα σύστημα σε ένα άλλο.

 

Αυτό που ούτε η tar, ούτε η cp υποστηρίζουν, είναι η αντιγραφή ACLs και extended attributes, οπότε σε αυτές τις περιπτώσεις προτείνεται η χρήση του ενός, μοναδικού και υπέρτατου εργαλείου αντιγραφής δεδομένων, του rsync. Ωστόσο δεν έχω δει ακόμα διανομή που να χρησιμοποιεί by default ACLs ή/και extended attributes (αν και είναι χρήσιμα και τα δύο).

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Extended attributes είναι αυτά που βλέπουμε μέσω lsattr;

Αν ναι, υπάρχουν ακόμα και filesystems που δεν τα υποστηρίζουν (xfs).

 

Επίσης, μήπως ξέρει κανείς τι κάνει το όρισμα -x στην cp(1), γιατί μου πρότειναν να το χρησιμοποιήσω όμως από τα man pages δεν μπόρεσα να καταλάβω τι ακριβώς κάνει.

 

Θα σπασουν γιατι αν το debian εχει την εκδοση x και το ubuntu την y ενος binary executable, μιας βιβλιοθηκης ή ακομα και ενος αρχειου ρυθμισεων στο /etc, θα γινει το χαος μεσα στο /. Οσα γινουν overwrite θα ειναι τα τυχερα.

 

Αναφερω σαν παραδειγμα οτι το debian εχει την alsa v1.0.17 ενω το ubuntu την v1.0.16.

Το alsa μονο του περιλαμβανει εναν daemon τουλαχιστον, δεκαδες βιβλιοθηκες που σχετιζονται αμεσα με τον πυρηνα προκειμενου να εχεις ηχο, αρχεια ρυθμισεων για να λειτουργει η καρτα ηχου οπως προβλεπεται και, κερασακι στην τουρτα, το alsaconf που υπαρχει στο debian μονο και στο ubuntu οχι (δεν ειναι θεμα εκδοσης του alsa, ειναι θεμα της διανομης.

 

Μετα απο ολα αυτα που ειπα, και αφορουν ενα και μονο προγραμμα, δεν νομιζω να το ρισκαρεις.

 

PS Kανονικα θα επρεπε να πω και κατι κακο για το ubuntu και την επιλογη των developers του να μην βαλουν στη διανομη ενα εξαιρετικο εργαλειο σαν το alsaconf. Δεν εχω δει αλλη διανομη που να μην το εχει εγνωσμενα.

 

Δεν θα μείνει τίποτα από ubuntu. Θα γίνει πρώτα mkfs στο partition του Ubuntu.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Extended attributes είναι αυτά που βλέπουμε μέσω lsattr;

Αν ναι, υπάρχουν ακόμα και filesystems που δεν τα υποστηρίζουν (xfs).

Ναι, αλλά υπάρχουν και εφαρμογές για τις οποίες ενδείκνυνται. Π.χ. στα extended attributes αποθηκεύονται τα filesystem-based capabilities που είναι ένας (νέος μεν, αλλά) ωραίος μηχανισμός ασφαλείας.

 

Όσο για το XFS, καλό χρυσό και άγιο, αλλά για πολύ συγκεκριμένες εφαρμογές και υπό πολύ ελεγχόμενες συνθήκες (κυρίως τροφοδοσίας του μηχανήματος - όχι, ένα μόνο UPS δε φτάνει).

 

Επίσης, μήπως ξέρει κανείς τι κάνει το όρισμα -x στην cp(1), γιατί μου πρότειναν να το χρησιμοποιήσω όμως από τα man pages δεν μπόρεσα να καταλάβω τι ακριβώς κάνει.

Το -x επιβάλλει στη cp να αντιγράψει μόνο τα πράγματα που υπάρχουν στο ίδιο filesystem. Δηλαδή, αν έχεις το /home mounted σε άλλο partition, τότε ένα cp -x από το / δε θα αντιγράψει τα περιεχόμενα του /home. Επειδή όμως σου είπα ότι θα το κάνεις μέσα από liveCD, δε χρειάζεται το -x γιατί δε θα είναι τίποτα mounted πάνω στο tree του debian ούτως ή άλλως.

 

Δεν θα μείνει τίποτα από ubuntu. Θα γίνει πρώτα mkfs στο partition του Ubuntu.

Αυτό δεν ήταν ξεκάθαρο από το πρώτο σου μήνυμα ;-)

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Όντως, δεν το έγραψα και με τον καλύτερο δυνατό τρόπο.

Στο partition του Ubuntu θα γίνει mkfs, θα εξαφανιστούν τα πάντα, μετά θα αντιγραφεί το / του debian εκεί και τέλος θα αλλαχθούν τα κατάλληλα σε grub και fstab ώστε να βλέπει τις σωστές κατατμήσεις σύμφωνα με τις αλλαγές.

 

Σύμφωνα με αυτά, τελικά καταλήγω:

 

mkfs.ext3 στο partition του ubuntu

 

Μπαίνω με live cd (υποθέτω μπορεί να γίνει και χωρίς αν χρησιμοποιηθεί το -x switch; ) και κάνω

 

>cp -ax * target_partition

 

Πειράζω /etc/fstab και /boot/grub/menu.lst στο "φρέσκο" partition.

 

Το θέμα είναι, μετά το τελευταίο βήμα, κάνοντας reboot, ουσιαστικά θα έχω την ίδια εγκατάσταση debian σε δύο μέρη. Που θα bootάρει το σύστημα; Ο grub που θα κοιτάξει; Πρέπει να τον αλλάξω και στα δύο partitions μήπως;

update-grub χρειάζεται;

 

Σημείωση: Δεν έχω κοινό (ή έστω ξεχωριστό) /boot.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Ο grub θα κοιτάξει εκεί που κοίταζε πάντα. Για να το μεταφέρεις πλήρως, θα πρέπει να κάνεις 2 πράγματα:

 

1ον, να ανοίξεις το /boot/grub/menu.lst και να αλλάξεις όλες τις αναφορές του παλιού partition, τόσο αυτές της μορφής (hd0,x) όσο και το root=/dev/κάτι που δίνει στον πυρήνα.

 

2ον, αφού τελειώσεις τα παραπάνω, να γράψεις grub-install /dev/sda (ή όποιος είναι ο δίσκος σου)

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Σημείωση: Δεν έχω κοινό (ή έστω ξεχωριστό) /boot.

 

δηλαδή ;;;;

 

πως μπορώ να αντιγράψω τα πάντα από το / του Debian στο / στου Ubuntu έτσι ώστε να εξαφανιστεί το Ubuntu και για το Debian να έχω περισσότερο χώρο.

 

μάλλον ξεκάθαρο :mrgreen:

.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

δηλαδή ;;;;

 

Ο κατάλογος /boot είναι στο partition του Ubuntu (...ή του Debian), όχι σε δικό του ξεχωριστό partition.

 

Sorry για την παρεμβολή: αν τον grub στον έχει βάλει το Ubuntu, τότε βρίσκει τους δίσκους με βάση το UUID τους. Και στο menu.lst και στο fstab.

Επομένως αντί να πειράξεις αυτά τα αρχεία, μπορείς να εναλλάξεις το UUID των δίσκων με tune2fs -U.

Με το gparted αντιγράφεται και το UUID, επομένως δεν θα χρειαστεί αλλαγή σε fstab κτλ...

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Ο κατάλογος /boot είναι στο partition του Ubuntu (...ή του Debian), όχι σε δικό του ξεχωριστό partition.

 

γιατί να μην ξαναεγκαταστήσει τον grub ;

http://www.insomnia.gr/forum/showthread.php?t=204039

GRUB

 

Εκτελούμε την εντολή mount και βλέπουμε πιο partition αντιστοιχεί στο /boot. Αν δεν υπάρχει εγγραφή για το /boot, τότε το partition είναι το ίδιο με το /. Σημειώνουμε το partition number κάπου γιατί θα το χρειαστούμε.

 

Αφού κάνουμε τις κατάλληλες ρυθμίσεις στο /boot/grub/menu.lst (ή /boot/grub/grub.conf στις νεότερες διανομές), εκτελούμε: 'grub'.

Μόλις φορτώσει ο grub θα μας βγάλει σε ένα shell της παρακάτω μορφής:

 

Κώδικας:

 

GNU GRUB version 0.96 (640K lower / 3072K upper memory)

 

[ Minimal BASH-like line editing is supported. For the first word, TAB

lists possible command completions. Anywhere else TAB lists the possible

completions of a device/filename. ]

 

grub>

 

Ξεθάβουμε το partition number του /boot ή του / αν το /boot είναι απλά υποκατάλογος:

Το partition είναι συνήθως της μορφής hdxy ή sdxy, όπου x είναι a,b,c ή d (σπανιότερα e κλπ) και y είναι 1,2,3...

O GRUB περιμένει το partition σε μορφή hdx-1,y-1. Δηλαδή το hda1 γίνεται hd0,0, το hda2 γίνεται hd0,1, το hda8 γίνεται hd0,7 και το hdb5 γίνεται hd1,4.

Αφού λοιπόν βρούμε πως πρέπει να γράψουμε το partition number, δίνουμε:

 

'root (hd0,0)'

 

(εδώ για /boot στο hda1 ή αναλόγως με το partition που θέλουμε)

 

και δίνουμε

 

'setup (hd0)'

 

για να εγκατασταθεί ο grub στο MBR ή

 

'setup(hd0,8 )'

 

για να εγκατασταθεί στον bootrecord του root partition (εδώ hda9, αλλά σε εσάς κατά πάσα πιθανότητα κάτι άλλο)

 

 

How to restore Grub from a live Ubuntu cd.

http://ubuntuforums.org/showthread.php?t=224351

.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...