Folosind lvm, linuxoid

Mai devreme sau mai târziu se va întâmpla. Într-o zi frumoasă însorită când vrei să stai pe plajă, prin introducerea comenzii df, constată că pe server nu mai rămâne nimic absolut. Și indiferent de cât de greu încercați să rupeți corect discul când instalați sistemul, ci să vă precizați care din partiții va necesita mai mult spațiu și care este mai puțin probabil să fie foarte rar. Dacă partiția rădăcină, / usr și / opt nu aduc surprize în majoritatea surprizelor. Software-ul instalat este controlat de sysadmin și, de obicei, aici este folosit un set standard de aplicații. Directorul / tmp este dat de obicei tmpfs - sistemului de fișiere din memoria RAM. Asta cu / var și / home este, de obicei, mult mai mult. Rezultatele în această situație pot fi mai multe.







În primul rând. Simplu.
Răsfoiți toate cerințele și continuați cu instalarea este simplă.

# parted / dev / hda mkpartfs linux-swap primar 0 256 parted / dev / hda mkpartfs primar ext2 256

și anume utilizați numai două secțiuni ale swap-ului și luați restul spațiului sub rădăcină. Ce pot spune, atâta timp cât discul nu se umple complet, nu puteți gândi deloc la prezența spațiului liber / ocupat în secțiuni. Dar aceasta este o parte pozitivă. Și pe de altă parte. Performanța discului în acest caz nu va fi la înălțime, mai ales cu o umplutură mare. În plus, trebuie să existe cineva acasă care să aibă o mulțime de filme pe discuri și într-o zi decide să-i aducă pe toți să lucreze pentru o demonstrație. Sau cineva "bun" va scrie un fișier mare în / tmp. După aceea, tot ceea ce necesită spațiu, cum ar fi un server de poștă electronică sau syslog, se va opri. care pur și simplu nu are unde să scrie date pe disc.

În al doilea rând. Fascistă.
E simplu aici. Dacă aveți nevoie de puțin spațiu pentru ao șterge.

# găsi / home (-atime +365 -o -name '* .avi') -exec rm <>\;

și anume în cazul în care utilizatorul nu deranjează să se uite în fișierul pentru un an, atunci este în mod clar de prisos (va țipa, atunci există întotdeauna în rezervă), plus pentru a acoperi și filme, este necesar să se lucreze la locul de muncă (aici, șefii pot chiar lauda).

# find / home -size 200> coș de gunoi; pisica de pisica | mai puțin

/ dev / hda1 swap swap implicite, pri = 1 0 0 / dev / hdc1 swap swap implicit, pri = 1 0 0

Acum, tot spațiul de utilizator va consta din două sisteme de fișiere și va avea tot timpul să ne amintim că, pe care discul conține date și să monitorizeze conținutul lor, dar, în plus față de tot ceea ce nu mai este posibil de a crea legături puternice la datele localizate pe un alt sistem de fișiere. Sunt de acord că este oarecum incomod, mult mai bine că ar părea un singur întreg, chiar dacă nu. Și așa ...
Opțiunea de șase - prevăd nu corespunde cu dimensiunea și posibila reeșalonarea a funcționării spațiului, care, în viitor, o etapă suplimentară de partiționare, sau în cazul în care există de asemenea, utilizarea confortabilă și tehnologiilor moderne. Pentru a rezolva această problemă, cea mai populară tehnologie va fi LVM (Logical Volume Manager) sau un manager de volum logic, care este pe deplin susținut de kernelul de la versiunea 2.4.

Prin concepte

hda1 hdc1 (PV: s pe partiții sau discuri întregi) \ / \ / diskvg (VG) / | \ / | \ usrlv rootlv varlv (LV: s) | | | | ext2 reiserfs xfs (sisteme de fișiere)

Volumul logic în sine constă, de asemenea, din granule numite LE (extensie logică), care sunt comparate cu realitățile fizice fizice reale. Dacă mai târziu trebuie să modificați mărimea volumului logic, puteți face acest lucru doar după numărul de extensii fizice multiple. Această relație între extinderea fizică și logică este indicată de maparea termenului. Și totuși, de vreme ce, de fapt, nu există nici o diferență în ceea ce privește PE pentru a contracara cu LE, se poate face prin două opțiuni - maparea liniară și cartografierea cu dungi. În primul caz, o secvență pură continuă de expansiuni fizice este pusă în corespondență cu o secvență de grade logice la fel de continuă. În al doilea rând, o secvență continuă de extindere logică este asociată cu alternanțe între diferiți purtători fizici. Această schemă seamănă cu o matrice RAID zero (dungi). În acest caz, dacă plasați două discuri pe diferite canale IDE, puteți obține o creștere a performanței operațiilor pe disc. Dar fiabilitatea în acest caz este mai mică. în caz de plecare a unui disc, puteți pierde totul. Prin urmare, salvarea în ultimul caz nu este ultima. Și nu ar trebui să amestecați ambele metode în aceeași VG, dacă este nevoie, atunci pentru cartografie dungi creați un grup de volum separat. După cum unul dintre profesorii mei a spus: "Nu puteți înșela natura, trebuie să plătiți pentru tot." Firește, pentru comoditate, trebuie să plătiți, în cazul nostru, aceasta este de 10-15% din capacitatea procesorului. În acest caz, transferul de sisteme de fișiere de la nivelul fizic la cel logic la viteza operațiunilor de disc nu a fost afectat în cazul liniar.







De la teorie la practică

Acum, să încercăm să creăm un volum logic și să îl conectăm ca sistem de fișiere obișnuit. Mai întâi, să definim că nu trebuie să mergeți la LV. Deci, nu are rost să puneți directorul / boot acolo care conține kernelul și Grub. Acesta ar trebui să fie plasat într-o secțiune separată cu un cadru de 50MB (cu o marjă) și în fișierul / etc / fstab scrie astfel de linii, astfel încât să nu fie montat automat la momentul încărcării.

/ dev / hda1 / boot ext2 noauto 1 2

În acest caz, nu există niciun sens în utilizarea sistemelor de fișiere jurnalizate, iar atunci când se schimbă nucleul (o ocupație destul de rară), acest director poate fi întotdeauna montat manual. De asemenea, probabil, nu merită să acolo și următoarele directoare / etc, / proc, / lib, / mnt, / bin, / sbin, / dev, / rădăcină, swap și / tmp (deși totul e relativ). De obicei, compoziția lor mai mult sau mai puțin statice și nu ocupă mult spațiu, astfel încât partiția rădăcină în CRUX această compoziție sa dovedit că pur și simplu 300 MB, restul este în / usr, / var și / home. Cu un număr mare de software non-sistemice ar trebui să facă, de asemenea, un director separat, și / usr / local / opt (am face, de obicei, o legătură simbolică ln -s / usr / local / opt. Pentru a rupe capul mai puțin). În plus față de tot ceea ce veți avea întotdeauna posibilitatea de a vă conecta de la root'a în caz de urgență. LVM poate fi folosit dacă există un singur hard disk în sistem, dar această tehnologie oferă cea mai mare flexibilitate atunci când se utilizează două sau mai multe discuri în sistem. Pentru experiment, luați cele două partiții / dev / hda4 și / dev / hdc2. Distribuția generală a partițiilor pe discuri va fi după cum urmează.

/ Dev / hda1 - / boot / dev / hda2 - swap (conținând și / tmp) / dev / hda3 - root (/ etc, / proc, / lib, / mnt, / bin, / sbin, / dev / rădăcină ) / dev / hda4 - va fi utilizat cu LVM / dev / hds1 - swap pe / dev / hds2 - acesta va fi utilizat cu LVM

Software necesar

În majoritatea distribuțiilor moderne, cu excepția celor care sunt orientați spre utilizator, tot ceea ce este necesar pentru lucru este deja disponibil. Unele instalatoare (Fedora / Red Hat) vă permit să creați LVM (și soft-RAID) în modul grafic, dar pentru a fi sincer, ele nu par intuitive pentru mine. Pentru a sprijini tehnologia kernel-ului, la compilare trebuie incluse următoarele opțiuni. În secțiunea Suport pentru mai multe dispozitive (RAID și LVM), trebuie să activați mai multe dispozitive multiple. și apoi suportul actual al Managerului de volum logic (LVM).
În fișierul /usr/src/linux/.config, trebuie să căutați o secțiune:

# # Suport multi-dispozitiv (RAID și LVM) # CONFIG_MD = y # CONFIG_BLK_DEV_MD nu este setat # CONFIG_MD_LINEAR nu este setat # CONFIG_MD_RAID0 nu este setat # CONFIG_MD_RAID1 nu este setat # CONFIG_MD_RAID5 nu este setat # CONFIG_MD_MULTIPATH nu este setat CONFIG_BLK_DEV_LVM = y

Următorul pas este să instalați software-ul pentru a lucra cu LVM (dacă nu este disponibil, desigur). În Ubuntu este suficient să introduceți:

$ sudo apt-get instala lvm2

Rezultatul va fi de trei grupuri de instrumente concepute pentru a lucra la „său“ nivel: * PV - funcționează cu volume fizice, LG * cu grupuri logice și volume logice * LV. Toate acestea pot fi găsite utilizând filele. Deci, comenzi precum * crea crea un volum sau un grup, în funcție de primele două litere, * afișează informații complete, etc.
Mai întâi, vom crea partiții fizice cu ID-ul 8e. De exemplu, cel de-al doilea disc este luat.

$ Sudo / sbin / fdisk / dev / HDS Command (m for help): p Disk / dev / HDS: 3243 MB, 3243663360 bytes 128 capete, 63 sectoare / pistă, 785 cilindri Unități = cilindri de 8064 * 512 = 4128768 bytes Dispozitiv Boot Start riglele de capăt Id-ul de sistem / dev / hdb1 20 ianuarie 168682+ 82 Linux swap pe / dev / hdb2 21785 3165088+ b Win95 FAT32 Command (m for help): t cod Hex selectat partiția 2 (tip L pentru lista de coduri): 8e tipul sistemului sa modificat de partiție 2 la 8e (Linux LVM) Command (m for help): p Disk / dev / HDS: 3243 MB, 3243663360 bytes 128 capete, 63 sectoare / pistă, 785 cilindri Unități = cilindri de 8064 * 512 = 4128768 bytes Dispozitiv Boot Start riglele de capăt Id-ul Sistem / dev / hdb1 20 ianuarie 168682+ 82 Linux swap pe / dev / hdb2 21785 3165088+ 8e Linux LVM Command (m for help): w tabela de partiții a fost modificat! Apelarea ioctl () pentru a re-citi tabela de partiții. ATENȚIE: Dacă ați creat sau modificat orice partiții 6.x DOS, vă rugăm să consultați pagina de manual fdisk pentru informații suplimentare. Sincronizarea discurilor.

Și acum am tăiat un VG mare în volume logice de dimensiuni necesare. Ar trebui să se țină seama de faptul că tăierea sistemului de fișiere și apoi volumul logic (exact în două etape) este puțin mai intens decât creșterea muncii. Este mai bine să creați dimensiunea minimă necesară unui volum logic (cu o marjă) și apoi, dacă este necesar, să o măriți doar la volumul dorit. Noi creăm. În acest caz, utilizați opțiunea -L pentru a specifica dimensiunea necesară, iar cu numele -n, iar la sfârșit numele VG. Dacă valoarea în kilobyte după ce este setat la K, în megaocteți M și în gigaocteți G.
$ sudo / sbin / lvcreate -L 1G -n test lvm_usr / sbin / lvcreate -L 1G -n test lvm_home
lvcreate - face backup-ul automat al «test»
lvcreate - volumul logic "/ dev / test / lvm_usr" a fost creat cu succes

lvcreate - face backup-ul automat al «test»
lvcreate - volumul logic "/ dev / test / lvm_home" a fost creat cu succes
Sau pentru bandajare.

$ sudo lvcreate -n stripedlv -i 2 -I 64 mygroup -L 20M

$ df dev / hda3 4032124 2789108 1038188 73%. / dev / test / lvm_home 2097084 32840 2064244 2% / home / test

După cum puteți vedea, dimensiunea este de două ori mai mare.
Reducerea secțiunii se face în această ordine:
- desfaceți sistemul de fișiere
- reducerea sistemului de fișiere cu o marjă
- reduce dimensiunea volumului logic cu lvreduce
extindeți sistemul de fișiere pentru a umple întregul volum
În comenzi pare așa.

$ Sudo umount / dev / test / lvm_home $ sudo resize_reiserfs -s -1.5G / dev / test / lvm_home $ sudo lvreduce -L -1G / dev / test / lvm_home $ sudo resize_reiserfs -f / dev / test / lvm_home

$ Sudo lvcreate -L592M -s home_backup -n / dev / test / lvm_home lvcreate - AVERTISMENT: instantaneul trebuie să fie dezactivate în cazul în care acesta devine plin lvcreate - INFO: folosind dimensiunea implicită instantaneu bucată de 64 KB pentru „/ dev / test / home_backup "lvcreate - face backup automat de" test "lvcreate - volum logic" / dev / test / home_backup „creat cu succes

Rezultatul este un alt volum logic numit / dev / test / home_backup.
Poate fi montat și să vedem ce este acolo.

$ Mkdir / mnt / instantaneele $ sudo mount / dev / testare / home_backup / mnt / instantanee de montare: bloc dispozitiv / dev / ops / dbbackup este protejat la scriere, montare numai în citire

Acum, facem o copie de siguranță a datelor și ștergem instantaneele.







Articole similare

Trimiteți-le prietenilor: