Page 43 - Linux_7

Basic HTML Version

Linux Inside
43
Linux Boot Process
σκων και κατατμήσεων, καθώς και πώς βρίσκουμε τις ετικέτες
των κατατμήσεών μας.
Ονοματολογία Δίσκων
Η ονοματολογία των δίσκων σε ένα Linux λειτουργικό σύ-
στημα είναι σχετικά απλή και διέπεται από κανόνες. Όλοι οι
IDE δίσκοι ονομάζονται Hard Disks και βρίσκονται κάτω από
τον κατάλογο /dev/ (από το devices). Η αρίθμηση των δίσκων
ξεκινά από το a. Έτσι, ο πρώτος IDE δίσκος είναι ο /dev/hda,
ο δεύτερος /dev/hdb και ούτω καθεξής. Οι κατατμήσεις κάθε
δίσκου αριθμούνται με βάση το δεκαδικό σύστημα. Έτσι, η
πρώτη κατάτμηση του πρώτου δίσκου είναι το /dev/hda1, η
δεύτερη κατάτμηση του πρώτου δίσκου /dev/hda2 κ.ο.κ.
/dev/hda1
/dev/hda2
/dev/hda3
/dev/hda4
/dev/hdb1
/dev/hdb2
/dev/hdc1
Μετά τους IDE δίσκους, δημιουργήθηκαν οι SCSI δίσκοι.
Για να διαχωρίζονται από τους IDE δίσκους, οι SCSI δίσκοι
ονομάζονται SD. Η ονοματολογία και η αρίθμηση είναι παρό-
μοιες με εκείνες των IDE δίσκων.
/dev/sda1
/dev/sda2
/dev/sda3
/dev/sda4
/dev/sdb1
/dev/sdb2
/dev/sdc1
Μετά τους SCSI δίσκους, βγήκαν οι USB δίσκοι, οι SATA δί-
σκοι και διάφορα άλλα.
Οι kernel developers σκέφτηκαν ότι οι βασικές εργασίες σε
όλα τα block devices (όπως οι δίσκοι) είναι δύο, ανάγνωση
και εγγραφή, και έτσι, για να μην μπερδεύονται οι χρήστες,
όλες οι συσκευές που δεν είναι IDE, ονομάζονται SD. Στις τε-
λευταίες εκδόσεις του Linux και σε ορισμένες διανομές, όλοι
οι δίσκοι (ανεξαρτήτως πρωτοκόλλου) ονομάζονται SD, χάριν
ευκολίας.
Ονοματολογία Κατατμήσεων
Οι πρωτεύουσες κατατμήσεις σε ένα σύγχρονο σύστημα
Linux είναι οι εξής:
/dev/sda1
/dev/sda2
/dev/sda3
/dev/sda4
Οι λογικές κατατμήσεις μας ξεκινούν πάντα από το 5. Ακό-
μη και αν δεν έχουμε τέσσερις κατατμήσεις, αλλά μόνο δύο
(μία primary για τα Windows και μία extended για να μπουν οι
λογικές κατατμήσεις μας), πάντα οι λογικές κατατμήσεις μας
θα ξεκινούν από το 5.
Έστω, λοιπόν, ότι έχουμε την εξής δομή:
• Windows (c:) primary partition
• extended partition
• swap logical partition
• rootfs logical partition
Οι κατατμήσεις μας θα είναι οι εξής:
/dev/sda1 HPFS/NTFS/exFAT
/dev/sda2 Extended
/dev/sda5 Linux swap
/dev/sda6 Linux
Ετικέτες & Universally unique identifier
Επειδή τόσα χρόνια η ονοματολογία των δίσκων και των κα-
τατμήσεων φαίνεται να μπερδεύει τους χρήστες, τον τελευ-
ταίο καιρό έχουμε τη δυνατότητα να προσαρτούμε τους δί-
σκους με βάση την ετικέτα τους ή τον παγκόσμιο μοναδικό
αριθμό τους (Universally Unique Identifier ή UUID) [7].
Για να καταλάβουμε λίγο το πρόβλημα, ας παρουσιάσουμε
ένα παράδειγμα: Τοποθετούμε το USB flash disk1 στον υπο-
λογιστή μας. Θα αναγνωριστεί ως /dev/sdb. Τοποθετούμε
έπειτα το USB flash disk2. Αυτό θα αναγνωριστεί ως
/dev/sdc. Εάν προσαρτήσουμε τα USB σε καταλόγους με βά-
ση το device name τους, τότε θα πρέπει να θυμόμαστε τη σει-
ρά με τα οποία τα έχουμε εισαγάγει, καθώς κάθε φορά ο
υπολογιστής μας θα προσπαθεί να τα αναγνωρίσει ως
/dev/sdb και /dev/sdc αντίστοιχα.
Γι’ αυτό είναι προτιμότερο η προσάρτηση τέτοιων συσκευ-
ών (block devices) να γίνεται με βάση την ετικέτα τόμου τους
ή με τον UUID αριθμό τους.
Προσάρτηση με Ετικέτα Tόμου
Η ετικέτα είναι κάτι που μπορούμε να βάζουμε σε μία κατά-
τμηση ώστε να τη θυμόμαστε με βάση αυτή και όχι με το
device name. Είναι αρκετά σύνηθες και ακόμη πιο εύκολο να
προσαρτούμε συσκευές δεδομένων σε αντίστοιχους καταλό-
γους με βάση την ετικέτα τους και όχι το device name τους
Μάλιστα μπορούμε να αντικαταστήσουμε το device στο μενού
του GRUB με το LABEL του rootfs.
Υπάρχουν αρκετές εντολές με τις οποίες μπορούμε να κα-
ταχωρίσουμε μία ετικέτα τόμου, ξεκινώντας από την fdisk,
tune2fs, mkfs, e2label.
Ορίστε και ένα παράδειγμα:
# tune2fs -l /dev/sda1 | grep -i volume
Filesystem volume name: root
Μπορούμε να τροποποιήσουμε το /boot/grub/menu.lst
ώστε να δείχνει ως εξής:
kernel /boot/vmlinuz root=LABEL=root ro
Προσάρτηση με UUID
Οι ετικέτες στις συσκευές δίσκων είναι χωρίς καμία αμφιβο-
λία η πιο ανθρώπινη προσέγγιση, εύκολη και λειτουργική.
Όμως, και με αυτή τη λύση μπορεί να προκύψει πρόβλημα
στην προσάρτηση των δίσκων. Εάν έχουμε δύο USB συσκευ-
ές με το ίδιο όνομα, τότε το λειτουργικό μας δεν γνωρίζει
ποια θα πρέπει να προσαρτήσει σε ποιον κατάλογο. Μάλιστα
σε αυτή την περίπτωση θα προσαρτήσει την πρώτη εισαχθεί-
σα συσκευή.
Οι kernel developers σκέφτηκαν ότι οι βασικές
εργασίες σε όλα τα block devices (όπως οι
δίσκοι) είναι δύο, ανάγνωση και εγγραφή, και
έτσι, για να μην μπερδεύονται οι χρήστες, όλες
οι συσκευές που δεν είναι IDE, ονομάζονται SD.