18Aug

Πώς να διαχειριστείτε και να χρησιμοποιήσετε LVM( Logical Volume Management) στο Ubuntu

Στο προηγούμενο άρθρο σας, σας είπαμε τι είναι το LVM και τι μπορεί να θέλετε να το χρησιμοποιήσετε και σήμερα θα σας οδηγήσουμε σε μερικά από τα βασικά εργαλεία διαχείρισης της LVM, ώστε να είστε βέβαιοι κατά τη δημιουργία ή την επέκταση της εγκατάστασής σας.

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

Για να διαχειριστείτε το LVM υπάρχουν διαθέσιμα εργαλεία GUI, αλλά για να καταλάβετε πραγματικά τι συμβαίνει με τη διαμόρφωση LVM σας είναι πιθανότατα καλύτερα να γνωρίζετε ποια είναι τα εργαλεία της γραμμής εντολών.Αυτό θα είναι ιδιαίτερα χρήσιμο αν διαχειρίζεστε LVM σε διακομιστή ή διανομή που δεν προσφέρει εργαλεία GUI.

Οι περισσότερες από τις εντολές στο LVM είναι πολύ παρόμοιες μεταξύ τους.Κάθε έγκυρη εντολή προηγείται από ένα από τα ακόλουθα:

  • Physical Volume = pv
  • Όγκος ομάδας = vg
  • Λογική ένταση = lv

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

Φυλλάδιο εξαπατήσεως LVM

Για να σας βοηθήσει να καταλάβετε ποιες εντολές είναι διαθέσιμες για κάθε πρόθεμα, δημιουργήσαμε ένα φύλλο εξαπατήσεως LVM.Θα καλύψουμε μερικές από τις εντολές σε αυτό το άρθρο, αλλά υπάρχουν ακόμα πολλά που μπορείτε να κάνετε ότι δεν θα καλυφθούν εδώ.

Όλες οι εντολές αυτής της λίστας θα πρέπει να εκτελούνται ως root επειδή αλλάζετε τις ρυθμίσεις ολόκληρου του συστήματος που θα επηρεάσουν ολόκληρο το μηχάνημα.

( Κάντε κλικ στη μικρογραφία για μια εικόνα πλήρους μεγέθους)

Τρόπος προβολής τρέχουσας πληροφορίας LVM

Το πρώτο πράγμα που μπορεί να χρειαστεί να κάνετε είναι να ελέγξετε τον τρόπο ρύθμισης του LVM σας.Οι εντολές s και της οθόνης λειτουργούν με φυσικούς όγκους( pv), ομάδες όγκου( vg) και λογικούς τόμους( lv), ώστε να είναι ένα καλό μέρος για να ξεκινήσετε όταν προσπαθείτε να καταλάβετε τις τρέχουσες ρυθμίσεις.

Η εντολή εμφάνισης θα διαμορφώσει τις πληροφορίες ώστε να είναι πιο εύκολη η κατανόησή τους από την εντολή s.Για κάθε εντολή θα δείτε το όνομα και τη διαδρομή του pv / vg και θα πρέπει επίσης να δώσετε πληροφορίες σχετικά με τον ελεύθερο και χρησιμοποιημένο χώρο.

Οι πιο σημαντικές πληροφορίες θα είναι το όνομα PV και το όνομα VG.Με αυτές τις δύο πληροφορίες μπορούμε να συνεχίσουμε να εργαζόμαστε για τη ρύθμιση LVM.

Δημιουργία λογικού τόμου

Οι λογικοί τόμοι είναι τα κατατμήματα που χρησιμοποιεί το λειτουργικό σας σύστημα σε LVM.Για να δημιουργήσετε έναν λογικό τόμο, πρέπει πρώτα να έχουμε μια ομάδα φυσικού όγκου και όγκου.Ακολουθούν όλα τα απαραίτητα βήματα για τη δημιουργία ενός νέου λογικού τόμου.

Δημιουργία φυσικού όγκου

Θα ξεκινήσουμε από το μηδέν με ένα ολοκαίνουργιο σκληρό δίσκο χωρίς χωρίσματα ή πληροφορίες σχετικά με αυτό.Ξεκινήστε εντοπίζοντας τον δίσκο με τον οποίο θα εργαστείτε.(/dev/ sda, sdb κ.λπ.)

Σημείωση: Να θυμάστε ότι όλες οι εντολές θα πρέπει να εκτελούνται ως root ή προσθέτοντας 'sudo' στην αρχή της εντολής.

fdisk -l

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

Ο καινούργιος δίσκος βρίσκεται στο /dev/ sdb, ώστε να μπορείτε να χρησιμοποιήσετε το fdisk για να δημιουργήσετε ένα νέο διαμέρισμα στη μονάδα δίσκου.

Υπάρχει μια πληθώρα εργαλείων που μπορούν να δημιουργήσουν ένα νέο διαμέρισμα με ένα GUI, συμπεριλαμβανομένου του Gparted, αλλά δεδομένου ότι έχουμε ήδη το τερματικό ανοιχτό, θα χρησιμοποιήσουμε το fdisk για να δημιουργήσουμε το απαιτούμενο διαμέρισμα.

Από έναν τύπο τερματικού, οι ακόλουθες εντολές:

fdisk /dev/ sdb

Αυτό θα σας βάλει σε μια ειδική εντολή fdisk.

Εισάγετε τις εντολές με τη σειρά που δίνεται για να δημιουργήσετε ένα νέο πρωτεύον διαμέρισμα που χρησιμοποιεί το 100% του νέου σκληρού δίσκου και είναι έτοιμο για LVM.Εάν πρέπει να αλλάξετε το μέγεθος του διαμερίσματος ή θέλετε πολλαπλά τμήματα προτείνω να χρησιμοποιήσετε το GParted ή να διαβάσετε σχετικά με το fdisk μόνοι σας.

Προειδοποίηση: Τα παρακάτω βήματα θα διαμορφώσουν το σκληρό σας δίσκο.Βεβαιωθείτε ότι δεν έχετε καμία πληροφορία σχετικά με αυτό το σκληρό δίσκο πριν ακολουθήσετε αυτά τα βήματα.

  • n = δημιουργεί νέο διαμέρισμα
  • p = δημιουργεί το πρωτεύον διαμέρισμα
  • 1 = κάνει το διαμέρισμα το πρώτο στο δίσκο

Πατήστε το enter δύο φορές για να αποδεχθείτε τον προεπιλεγμένο πρώτο κύλινδρο και τον τελευταίο κύλινδρο.

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

  • t = αλλαγή τύπου διαμερίσματος
  • 8e = αλλαγές σε τύπο διαμερίσματος LVM

Επαληθεύστε και γράψτε τις πληροφορίες στον σκληρό δίσκο.

  • p = προβολή ρύθμισης διαμερίσματος έτσι ώστε να μπορέσουμε να την ελέγξουμε πριν γράψουμε αλλαγές στο δίσκο
  • w = να γράψουμε αλλαγές στο δίσκο

Μετά από αυτές τις εντολές, η προτροπή fdisk θα πρέπει να βγει και θα επιστρέψετε στην εντολή bash του τερματικού σας.

Εισαγάγετε pvcreate /dev/ sdb1 για να δημιουργήσετε έναν φυσικό όγκο LVM στο διαμέρισμα που μόλις δημιουργήσαμε.

Μπορεί να σας ρωτάμε γιατί δεν μορφοποιήσαμε το διαμέρισμα με ένα σύστημα αρχείων αλλά μην ανησυχείτε, το βήμα αυτό έρχεται αργότερα.


Δημιουργία τόμου Ομάδα

Τώρα που έχουμε ένα τμήμα που έχει οριστεί και έχει δημιουργηθεί φυσικός τόμος πρέπει να δημιουργήσουμε την ομάδα τόμων.Ευτυχώς αυτό χρειάζεται μόνο μία εντολή.

vgcreate vgpool /dev/ sdb1

Το Vgpool είναι το όνομα της νέας ομάδας τόμων που δημιουργήσαμε.Μπορείτε να το ονομάσετε ό, τι θέλετε, αλλά συνιστάται να βάλτε vg στο μπροστινό μέρος της ετικέτας, οπότε αν το αναφέρετε αργότερα, θα ξέρετε ότι είναι μια ομάδα τόμων.

Δημιουργία λογικής έντασης

Για να δημιουργήσετε τον λογικό τόμο που θα χρησιμοποιήσει το LVM:

lvcreate -L 3G -n lvstuff vgpool

Η εντολή -L ορίζει το μέγεθος του λογικού τόμου, στην περίπτωση αυτή 3 GB και τα -Ν εντολή ονόματαΕνταση ΗΧΟΥ.Το Vgpool παραπέμπεται έτσι ώστε η εντολή lvcreate να γνωρίζει τον όγκο για να πάρει το χώρο από.

Διαμόρφωση και τοποθέτηση της λογικής έντασης

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

mkfs -t ext3 /dev/vgpool/ lvstuff

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

mkdir /mnt/ stuff
mount -t ext3 /dev/vgpool/ lvstuff /mnt/ stuff

Αλλαγή μεγέθους ενός λογικού τόμου

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

Υπάρχουν τρία βασικά εργαλεία για την πραγματοποίηση φυσικών τόμων, ομάδων όγκου και λογικών μεγεθών μεγαλύτερων ή μικρότερων.

Σημείωση: Κάθε μία από αυτές τις εντολές θα πρέπει να προηγείται από pv, vg ή lv ανάλογα με το τι δουλεύετε.

  • μέγεθος - μπορεί να συρρικνώσει ή να επεκτείνει τους φυσικούς τόμους και τους λογικούς τόμους αλλά όχι τις ομάδες όγκων
  • extend - μπορεί να κάνει ομάδες όγκου και λογικούς όγκους μεγαλύτερους αλλά όχι μικρότερες
  • μείωση - μπορεί να κάνει ομάδες όγκου και λογικούς όγκους μικρότεροι αλλά όχι μεγαλύτεροι

Ας περάσουμε από ένα παράδειγμαπώς να προσθέσετε ένα νέο σκληρό δίσκο στον λογικό τόμο "lvstuff" που μόλις δημιουργήσαμε.

Εγκατάσταση και διαμόρφωση νέου σκληρού δίσκου

Για να εγκαταστήσετε έναν καινούργιο σκληρό δίσκο, ακολουθήστε τα παραπάνω βήματα για να δημιουργήσετε ένα νέο διαμέρισμα και να προσθέσετε τον τύπο του διαμερίσματος σε LVM( 8e).Στη συνέχεια, χρησιμοποιήστε το pvcreate για να δημιουργήσετε έναν φυσικό όγκο που μπορεί να αναγνωρίσει η LVM.

Προσθήκη νέου σκληρού δίσκου σε ομάδα έντασης

Για να προσθέσετε τον νέο σκληρό δίσκο σε μια ομάδα τόμων, απλά πρέπει να ξέρετε τι είναι το νέο σας διαμέρισμα, το /dev/ sdc1 στην περίπτωσή μας και το όνομα της ομάδας τόμων που θέλετε να την προσθέσετε.

Αυτό θα προσθέσει τη νέα φυσική ένταση στην υπάρχουσα ομάδα τόμων.

vgextend vgpool /dev/ sdc1

Επέκταση λογικής έντασης

Για να αλλάξουμε το μέγεθος του λογικού τόμου, πρέπει να πούμε πόσο θέλουμε να επεκταθεί ανάλογα με το μέγεθος αντί για τη συσκευή.Στο παράδειγμά μας προσθέσαμε έναν σκληρό δίσκο 8 GB στο vgpool των 3 GB.Για να μπορέσουμε να χρησιμοποιήσουμε αυτόν τον χώρο μπορούμε να χρησιμοποιήσουμε το lvextend ή το lvresize.

lvextend -L8G /dev/vgpool/ lvstuff

Παρόλο που αυτή η εντολή θα λειτουργήσει, θα δείτε ότι στην πραγματικότητα θα αλλάξει τον λογικό όγκο σε 8 GB αντί να προσθέσει 8 GB στον υπάρχοντα τόμο όπως θέλαμε.Για να προσθέσετε τα τελευταία 3 διαθέσιμα gigabytes, πρέπει να χρησιμοποιήσετε την ακόλουθη εντολή.

lvextend -L + 3G /dev/vgpool/ lvstuff

Τώρα ο λογικός μας όγκος είναι 11 GB σε μέγεθος.

Επέκταση συστήματος αρχείων

Ο λογικός τόμος είναι 11 GB, αλλά το σύστημα αρχείων σε αυτόν τον τόμο εξακολουθεί να είναι μόνο 3 GB.Για να χρησιμοποιήσετε το σύστημα αρχείων το σύνολο των διαθέσιμων 11 GB, πρέπει να χρησιμοποιήσετε την εντολή resize2fs.Ακριβώς σημείο resize2fs στη λογική ένταση 11 GB και θα κάνει τη μαγεία για σας.

resize2fs /dev/vgpool/ lvstuff

Σημείωση: Εάν χρησιμοποιείτε διαφορετικό σύστημα αρχείων εκτός από το ext3 / 4, δείτε τα εργαλεία αλλαγής μεγέθους των συστημάτων αρχείων.

Συρρίκνωση λογικού τόμου

Αν θέλετε να αφαιρέσετε έναν σκληρό δίσκο από μια ομάδα τόμων θα χρειαστεί να ακολουθήσετε τα παραπάνω βήματα με αντίστροφη σειρά και να χρησιμοποιήσετε lvreduce και vgreduce αντ 'αυτού.

  • μειώστε τον λογικό όγκο( αντί για να επεκτείνετε μπορείτε επίσης να χρησιμοποιήσετε - για να μειώσετε κατά μέγεθος)
  • αφαιρέστε το σκληρό δίσκο από την ομάδα όγκου με vgreduce( αν θέλετε να μετακινήσετε τα αρχεία σε μια ασφαλή περιοχή του σκληρού δίσκου πριν την αλλαγή μεγέθους)
  • Δημιουργία αντιγράφων ασφαλείας ενός λογικού τόμου

    Τα στιγμιότυπα είναι ένα χαρακτηριστικό που έρχονται με μερικά νεότερα προηγμένα συστήματα αρχείων, αλλά το ext3 / 4 δεν έχει τη δυνατότητα να κάνει στιγμιότυπα όταν πετάει.Ένα από τα πιο cool πράγματα σχετικά με τα στιγμιότυπα LVM είναι ότι το σύστημα αρχείων σας δεν γίνεται ποτέ εκτός σύνδεσης και μπορείτε να έχετε όσα θέλετε χωρίς να καταλάβετε επιπλέον χώρο στον σκληρό δίσκο.

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

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

    Δημιουργία νέου στιγμιότυπου

    Για να δημιουργήσετε ένα στιγμιότυπο του lvstuff χρησιμοποιήστε την εντολή lvcreate όπως πριν, αλλά χρησιμοποιήστε τη σημαία -s.

    lvcreate -L512M -s -n lststuffbackup /dev/vgpool/ lvstuff

    Εδώ δημιουργήσαμε έναν λογικό τόμο με μόνο 512 MB επειδή η μονάδα δεν χρησιμοποιείται ενεργά.Τα 512 MB θα αποθηκεύουν τυχόν νέα γράμματα ενώ θα δημιουργούμε αντίγραφα ασφαλείας.

    Προσθήκη νέου στιγμιότυπου

    Όπως ακριβώς πριν χρειαστεί να δημιουργήσουμε ένα σημείο προσάρτησης και να τοποθετήσουμε το νέο στιγμιότυπο ώστε να μπορέσουμε να αντιγράψουμε αρχεία από αυτό.

    mkdir /mnt/ lvstuffbackup
    mount /dev/vgpool/ lvstuffbackup /mnt/ lvstuffbackup

    Αντιγραφή στιγμιότυπου και διαγραφή λογικού τόμου

    Το μόνο που έχετε αφήσει να κάνετε είναι να αντιγράψετε όλα τα αρχεία από το /mnt/lvstuffbackup/ σε έναν εξωτερικό σκληρό δίσκο ή να τα αναπαράγετε ώστε να είναι όλα σε ένα αρχείο.

    Σημείωση: Το tar -c θα δημιουργήσει ένα αρχείο και -f θα πει την τοποθεσία και το όνομα αρχείου του αρχείου.Για βοήθεια με την εντολή tar χρησιμοποιήστε man tar στον τερματικό σταθμό.

    tar -cf /home/rothgar/Backup/ lvstuff-ss /mnt/lvstuffbackup/

    Να θυμάστε ότι ενώ το backup γίνεται όλα τα αρχεία που θα γράφονταν στο lvstuff παρακολουθούνται στον προσωρινό λογικό τόμο που δημιουργήσαμε νωρίτερα.Βεβαιωθείτε ότι έχετε αρκετό ελεύθερο χώρο ενώ το backup γίνεται.

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

    umount /mnt/ lvstuffbackup
    lvremove /dev/vgpool/lvstuffbackup/

    Διαγραφή λογικού τόμου

    Για να διαγράψετε έναν λογικό τόμο, θα πρέπει πρώτα να βεβαιωθείτε ότι η ένταση είναι αποσυναρμολογημένη και, στη συνέχεια, μπορείτε να χρησιμοποιήσετε το lvremove για να το διαγράψετε.Μπορείτε επίσης να καταργήσετε μια ομάδα τόμων μόλις έχουν διαγραφεί οι λογικοί τόμοι και έχει διαγραφεί μια φυσική ένταση μετά την ομάδα τόμων.

    Εδώ είναι όλες οι εντολές που χρησιμοποιούν τους τόμους και τις ομάδες που έχουμε δημιουργήσει.

    umount /mnt/ lvstuff
    lvremove /dev/vgpool/ lvstuff
    vgremove vgpool
    pvremove /dev/ sdb1 /dev/ sdc1

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