Sellest artiklist saate teada partitsioonide joondamise ja selle tegemise kohta.
Sissejuhatus
“Sektsioonide joondamise” all peame silmas partitsioonide õiget joondamist andmesalvestusseadme (nt kõvaketas, SSD, RAID-maht) füüsilise sektori piiridega. Õige partitsiooni joondamine tagab andmetele juurdepääsu optimaalse jõudluse. Sektsioonide vigane joondamine võib põhjustada jõudluse vähenemist, eriti SSD-de (näiteks 4096 või 8192 baiti sisemiste lehtede suurustega), 4 KB sektoritega (4096 baiti) kõvaketaste ja RAID-mahtude puhul.
Üldine teave
Kui operatsioonisüsteemid installitakse roboti või päästesüsteemi installipildi kaudu, on joondus automaatselt õige joondus.
Abistamata installimiseks kaugkonsooli (KVM-konsool) või VNC kaudu (nt CentOS 6.X) peate joonduse käsitsi konfigureerima. Ligikaudne juhis võib öelda, et mida uuem on installitav operatsioonisüsteem, seda suurem on võimalus, et installiprogramm joondab partitsioonid õigesti. Joondamist saate kontrollida järgmise käsuga:
sfdisk -uS -l
fdisk -u -l /dev/sdX
Iga partitsiooni alglaadimissektor peaks jaguma vähemalt 8-ga (8 * 512 baiti = 4 KB) ja ideaaljuhul 2048-ga (2048 * 512 baiti = 1 MB).
Taust: partitsioonid
Tüüpilised draivid töötavad füüsilise sektori suurusega 512 baiti. Esimene partitsioon algab esimese raja viimasest sektorist (loogilise) ploki aadressiga 63. Sellise (loogilise) sektori suurus on samuti 512 baiti. Kuna loogiline ja füüsiline sektor on võrdse suurusega, siis probleeme pole. Uuemad kettad täiustatud vormingus töötavad füüsilise sektori suurusega 4096 baiti (4 KB). Kuid väliselt jäljendavad nad sektori suurust 512 baiti (Advanced Format 512e). SSD-d töötavad ka lehekülje suurusega 4 KB või 8 KB. “Klassikalise” partitsiooni kasutamine, mis algab LBA-aadressist 63, ei ole enam nende uuemate draivide või SSD-de puhul soovitatav.
Praegused failisüsteemid, nagu ext4 või ntfs, kasutavad ploki suurust 4 KB. Failisüsteemi 4 KB plokid ei mahu otse kõvaketta 4 KB sektoritesse või 4 KB/8 KB SSD lehtedesse. Ühe 4 KB failisüsteemi ploki kirjutamisel tuleb muuta kaks 4 KB suurust sektorit või lehte. Seda muudab veelgi keerulisemaks vajadus säilitada vastavad 512-baidised plokid – mis viib Loe/Muuda/Kirjuta. Selle tulemuseks on jõudluse oluline vähenemine.[/vc_column_text]
Õige partitsioonid
Selle probleemi vältimiseks on soovitatav joondus 1 MB – et see oleks pikas perspektiivis ohutu. Praegune adresseerimine 512 baidi suurustes loogilistes sektorites on 2048 sektorit.
Linux
fdisk (vanemad versioonid)
Vanemate fdiski versioonide puhul saate joonduse teha käsitsi, kasutades parameetreid -S
ja -H
. Konkreetsete Sektorite arvu loo kohta (S) ja Pea arvu (H) jaoks on mitu valikut. Funktsiooniga -S 32 -H 64
on partitsioonid joondatud 1 MB
(32 sektorit raja kohta * 64 pead * 512 baiti = 1 048 576 baiti = 1 MB). Esimese vaheseina seadistamisel alustate teise silindriga. Spetsiaalsete parameetrite mittekasutamine viib fdiskiga joondamiseni.
fdisk päästesüsteemis
Päästesüsteemis sisalduv fdiski versioon kasutab 1 MB joondust seni, kuni DOS-i ühilduvusrežiim on desaktiveeritud.
Uuemate fdiski versioonide puhul on soovitatav:
- kasutage faili fdisk versioonist util-linux-ng >= 2.17.2
- pöörake tähelepanu fdiski hoiatustele
- desaktiveerige DOS-i ühilduvusrežiim (-c valik)
- kasutage sektoreid kuvaühikutena (-u valik)
- kasutage partitsiooni lõpu kuvamiseks +size{M,G}.
Vigase joonduse näide
Järgmine näide näitab vigast joondust pärast CentOS 5.6 VNC installimist.
[root@static ~]# fdisk -v
fdisk (util-linux 2.13-pre7)
[root@static ~]# fdisk -u /dev/hda
Selle ketta silindrite arvuks on seatud 10443.
Selles pole midagi halba, kuid see on suurem kui 1024,
ja võib teatud seadistuste korral põhjustada probleeme:
1) tarkvara, mis töötab alglaadimise ajal (nt LILO vanad versioonid)
2) alglaadimise ja partitsioonide tarkvara teistest OS-idest
(nt DOS FDISK, OS/2 FDISK)
Käsk (m abi saamiseks): lk
Ketas /dev/hda: 85,8 GB, 85899345920 baiti
255 pead, 63 sektorit/rada, 10443 silindrit, kokku 167772160 sektorit
Ühikud = sektorid 1 * 512 = 512 baiti
Seadme alglaadimise alguse lõpp blokeerib ID-süsteemi
/dev/hda1 * 63 208844 104391 83 Linux
/dev/hda2 208845 167766794 83778975 8e Linux LVM
Õige joonduse näide
root@rescue ~ # fdisk -c -u /dev/sda
Käsk (m abi saamiseks): lk
Ketas /dev/sda: 1500,3 GB, 1500301910016 baiti
255 pead, 63 sektorit/rada, 182401 silindrit, kokku 2930277168 sektorit
Ühikud = sektorid 1 * 512 = 512 baiti
Sektori suurus (loogiline/füüsiline): 512 baiti / 4096 baiti
I/O suurus (minimaalne/optimaalne): 4096 baiti / 4096 baiti
Ketta identifikaator: 0x0004dc67
Seadme alglaadimise alguse lõpp blokeerib ID-süsteemi
/dev/sda1 2048 4196351 2097152 fd Linuxi raid autodetect
/dev/sda2 4196352 5244927 524288 fd Linuxi raid autodetect
/dev/sda3 5244928 1465149167 729952120 fd Linuxi raid automaattuvastus
LVM ja tarkvara RAID
Kuigi ka siin tuleb tähelepanu pöörata õigele joondusele, pole see otseselt vajalik, kuna kasutatakse vähemalt 64 KB suuruseid plokke. Uuemad versioonid sisaldavad plaastreid, mis teostavad täiendava joonduse 1 MB piirides.
Windows
Kõik Windowsi versioonid, mis algavad Windows Vistaga, teostavad automaatselt joonduse 1 MB piirides kõikidel andmesalvestusseadmetel, mis on suuremad kui 4 GB. Vanemad versioonid, nagu Windows XP, nõuavad käsitsi joondamist.