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

partition scheme σε linux


warlock9_0

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

@imithee

Έχω μια απορία:

Κάπου διάβασα οτι εφόσον έχεις διαφορετικού τύπου filesystem σε διάφορα partition (π.χ fat32=/boot/"efi κατι" ) και τα άλλα τα κάνεις btrfs δε μπορείς να δημιουργήσεις snapshots μέσω subvolumes. Τι κάνω σε αυτη τη περιπτωση για να έχω snapshots?

Θέλω να φορμάρω ένα δίσκο με gpt ως εξής:

/boot/esp (vfat για uefi boot)

/ (btrfs)

/tmp (btrfs ή tmpfs)

Δεν καταλαβαίνω τι εννοείς ότι δεν μπορείς να δημιουργήσεις snapshots. Το /boot/efi που είναι fat32 εννοείται πως δεν μπορείς να το κάνεις snapshot γιατί δεν είναι btrfs. Τα / και /tmp θα μπορείς να τα κάνεις κανονικά όσες snapshots θέλεις (ξεχωριστές snapshots για το καθένα).

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

Δεν καταλαβαίνω τι εννοείς ότι δεν μπορείς να δημιουργήσεις snapshots. Το /boot/efi που είναι fat32 εννοείται πως δεν μπορείς να το κάνεις snapshot γιατί δεν είναι btrfs. Τα / και /tmp θα μπορείς να τα κάνεις κανονικά όσες snapshots θέλεις (ξεχωριστές snapshots για το καθένα).

 

Επειδή βλέπω έχεις ασχοληθεί πολύ με το luks/initramfs κλπ, έχω μια απορία.

Έχω 2 λειτουργικά στο μηχάνημά μου. Έστω windows και linux.

Θέλω να κάνω το εξής setup:

Όταν bootάρω κανονικά , bootάρει το windows.

Το linux θα είναι όλο κρυπτογραφημένο, και θα γίνεται boot με κάποιο removable, π.χ flashάκι, το οποίο φαντάζομαι θα περιέχει έναν bootloader κλπ.

 

Θέλω να ρωτήσω:

1. Γίνεται εύκολα;

2. Αν περάσω τον grub κατά την εγκατάσταση στο flashάκι, θα δουλεύει;

3. Αν όχι έχεις ιδέα πως αυτό το πράμα γίνεται;

 

Σόρρυ για το thread bombing, αν θέλεις και μέσω pm.

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

μόλις πέρασα στο laptop arch, σε dual boot με grub σε EFΙ με κρυπτογραφημένο όλο το root

τελικά ήτανε ευκολότερο από ό,τι νόμιζα αν και είχε μερικές fuck my life στιγμές

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

μόλις πέρασα στο laptop arch, σε dual boot με grub σε EFΙ με κρυπτογραφημένο όλο το root

τελικά ήτανε ευκολότερο από ό,τι νόμιζα αν και είχε μερικές fuck my life στιγμές

 

Το έγραψα και πριν αλλα δεν ξέρω μήπως υπήρχε λόγος που έβαλες grub? To systemd έχει ήδη το systemd-boot

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

το είδα που το είχες γράψει

συγκεκριμένος λόγος δεν υπάρχει απλά αρνούμαι να μάθω αυτή την αηδία το efi οπότε βάζω το grub που τα κάνει αυτόματα :P

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

Το linux θα είναι όλο κρυπτογραφημένο, και θα γίνεται boot με κάποιο removable, π.χ flashάκι, το οποίο φαντάζομαι θα περιέχει έναν bootloader κλπ.

 

Θέλω να ρωτήσω:

1. Γίνεται εύκολα;

2. Αν περάσω τον grub κατά την εγκατάσταση στο flashάκι, θα δουλεύει;

3. Αν όχι έχεις ιδέα πως αυτό το πράμα γίνεται;

 

Σόρρυ για το thread bombing, αν θέλεις και μέσω pm.

Μπορείς να έχεις στο flashάκι τον πυρήνα και το initramfs και να εκκινείς από αυτό και να ξεκλειδώνεις με κωδικό ή μπορείς να έχεις και κάποιο keyfile στο flashάκι οπότε με όταν βάζεις το flashάκι και εκκινείς να μπαίνεις κατευθείαν στο σύστημά σου.

 

Ανάλογα με την διανομή, ο τρόπος δεν είναι ακριβώς ο ίδιος αλλά δεν είναι κάτι δύσκολο.

 

αν και είχε μερικές fuck my life στιγμές

 

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

 

το είδα που το είχες γράψει

συγκεκριμένος λόγος δεν υπάρχει απλά αρνούμαι να μάθω αυτή την αηδία το efi οπότε βάζω το grub που τα κάνει αυτόματα :P

Και όμως, το uefi παρά από τα εκατοντάδες προβλήματα σχεδίασης και τις κριτικές που θα ακούσεις τον mjg να αναφέρει, ευκόλυνε τον τελικό χρήστη και η εμπειρία των περισσότερων είναι θετική. Εγώ προσωπικά δεν γυρνάω σε CSM που να με χτυπάς κάτω.

 

* Δεν ξανατρέχεις τον lilo κάθε φορά που αλλάζει ο πυρήνας θέση στο δίσκο.

 

* Δεν χρειάζεται να έχεις ένα συγκεκριμένο partitioning scheme που να αφήνει 62 τομείς ή γενικά κάποιο χώρο άχρηστο ώστε να βάλει εκεί τα αρχεία του ο grub1.

 

* Δεν χρειάζεται να γράψεις expecto patronum και τις άλλες μαγικές λέξεις που πρέπει να βρεις για να δουλέψει ο grub2 και να ενώσει τα σωστά modules.

 

Έχεις απλά μια κατάτμηση fat32 και αντιγράφεις εκεί τον boot loader (με ένα συγκεκριμένο όνομα αν η μητρική σου δεν έχει boot manager ή δεν παίζει σωστά ο efibootmgr). Δεν νομίζω να υπάρχει κάποιος που να μην καταλαβαίνει το concept της αντιγραφής. Αντίθετα παλιά έπρεπε να κατανοήσεις ότι ο boot loader πρέπει να "εγκατασταθεί" με κάποιο ειδικό τρόπο που δεν ήταν ακριβώς ίδιος σε όλους τους boot loaders και άλλαζε επίσης με το αν ο δίσκος ήταν πρώτος ή όχι στο bios.

 

Σίγουρα θα θυμάσαι άπειρα μηνύματα σε λίστες και φόρα του στυλ "έτρεξα grub-install αλλά βγάζει δεν παίζει, βγάζει το Χ μήνυμα, κτλ" γιατί ακριβώς ήταν πιο δύσκολη η κατανόηση του "τρόπου εκκίνησης".

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

το είδα που το είχες γράψει

συγκεκριμένος λόγος δεν υπάρχει απλά αρνούμαι να μάθω αυτή την αηδία το efi οπότε βάζω το grub που τα κάνει αυτόματα :P

 

Εγώ με το που είδα ότι το βάλαν στο systemd πήγα και ξήλωσα τον grub. Απλά μου έσπαγε τα νεύρα ο grub, το configuration του, τα μενου του, μέχρι και το beta version που έγραφε πάνω πάνω με εκνεύριζε :P

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

για πείτε λίγο γιατι τα έκαν ώπα όλα :P

είπα να βγάλω το grub να δοκιμάσω

έχω το esp partition sda1

windows sda2 και 3

boot sda4 που έχει μέσα τα initrd

και sda5 που είναι το /

 

άντε και πάω να κάνω εγγραφή με το efibootmgr

υποψιάζομαι οτι το efi δεν βλέπω έξω από το partition του άρα πρέπει να μεταφέρω τα initrd στο partition του esp?

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

άντε και πάω να κάνω εγγραφή με το efibootmgr

υποψιάζομαι οτι το efi δεν βλέπω έξω από το partition του άρα πρέπει να μεταφέρω τα initrd στο partition του esp?

Με το efibootmgr απλά δημιουργείς καταχωρήσεις στο firmware ώστε να ξέρει τι να εκτελεί και από που (κάτι σαν boot menu σκέψου το). Ποιος είναι όμως ο πραγματικός bootloader για τον οποίον έκανες καταχώρηση με το efibootmgr ?

 

Αν μιλάμε για κατευθείαν τον stub πυρήνα τότε ναι θα πρέπει να είναι στην esp (και επίσης νομίζω ότι θα πρέπει να ορίσεις κατά το compile το initramfs και την command line που θέλεις). Αν μιλάμε για απλούς loaders όπως ο elilo, τότε θα πρέπει και ο πυρήνας και το initramfs να είναι στην esp.

 

Πιο προχωρημένοι boot loaders όπως ο refind έχουν "fs drivers" με τους οποίους μπορούν να διαβάσουν τον πυρήνα και το initramfs μέσα από το filesystem (το ίδιο που έκανε και ο grub τόσα χρόνια δηλαδή) οπότε δεν χρειάζεται να έχεις τίποτα στην esp.

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

είπα αφού θα το ξηλώσω που θα το ξηλώσω να το κάνω μόνο με το efi της μητρικής

αν τα πάω όλα στο partition του esp παίζει έτσι https://wiki.archlinux.org/index.php/EFISTUB#Using_UEFI_directly_.28efibootmgr.29

βάζοντας στα options τα του encryption και γενικά ότι kernel option είχα

επειδή είναι μικρό το esp partition ψάχνω μήπως μπορώ να τα έχω αλλού

άκυρο, έχω χώρο τελικά, όλα μπόμπα

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

γιατι δεν κανεις το /boot σου esp ωστε καθε φορα που γινεται update ο kernel (αρα ξαναχτιζεται και το initramfs) να μην αντιγραφεις?

 

https://wiki.archlinux.org/index.php/Unified_Extensible_Firmware_Interface#EFI_System_Partition

 

(το 4 bullet)

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

είπα αφού θα το ξηλώσω που θα το ξηλώσω να το κάνω μόνο με το efi της μητρικής

αν τα πάω όλα στο partition του esp παίζει έτσι https://wiki.archlinux.org/index.php/EFISTUB#Using_UEFI_directly_.28efibootmgr.29

βάζοντας στα options τα του encryption και γενικά ότι kernel option είχα

επειδή είναι μικρό το esp partition ψάχνω μήπως μπορώ να τα έχω αλλού

άκυρο, έχω χώρο τελικά, όλα μπόμπα

Χαίρομαι που πέτυχε. Μια και πέτυχε ας δούμε κάτι άλλο.

 

Δυστυχώς πολλές φορές σβήνονται οι καταχωρήσεις του firmware (αυτή που έκανες με το efibootmgr). Έτσι μένεις αιχμάλωτος και πρέπει να εκκινήσεις από κάποιο flashάκι ή livecd και να ξανά τρέξεις το efibootmgr. Αντί για αυτό μπορείς να τρέξεις το efi shell ώστε να γίνει η δουλειά σου πιο γρήγορα. Αυτό λοιπόν που πρέπει να βρεις είναι ποιος είναι ο default loader που εκτελεί η μητρική σου. Τρία σενάρια είναι τα πιο συνήθη:

 

* Μερικές μητρικές έχουν μια επιλογή μέσα στο firmware που λέει "load shell from device" ή κάτι παρόμοιο. Αυτή η επιλογή εκτελεί το αρχείο shellx64.efi. Σε πολλές μητρικές όμως δυστυχώς ή δεν υπάρχει ή δεν παίζει σωστά όπως πχ στην δική μου asrock.

 

* Όταν δεν έχει οριστεί καμμία καταχώρηση, υπάρχει σαν fallback η εκτέλεση του αρχείου BOOT/bootx64.efi

 

* Μερικές υλοποιήσεις όμως γράφουν στα @@ τους το compliance και εκτελούν σαν fallback τον loader των windows (τι τυχαίο :P) ο οποίος λέγεται Microsoft/Boot/bootmgfw.efi.

 

Για να είσαι λοιπόν καλυμμένος σε όλα τα σενάρια, μπορείς να κατεβάσεις το shellx64.efi που είναι το uefi shell (την ανάλογη έκδοση ανάλογα με το αν η μητρική σου είναι pre2.3 ή 2.3+) και να το σώσεις στην esp τρεις φορές.

 

Οι θέσεις είναι EFI/shellx64.efi, EFI/boot/boox64.efi και EFI/microsoft/boot/bootmgfw.efi. Όλα τα paths είναι relative μέσα στην esp οπότε αν πχ κάνεις mount την esp στο /boot, η σωστή θέση θα είναι /boot/EFI/boot/bootx64.efi.

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

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα

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