Handbook:Alpha/Blocks/Disks/hu
Szeletek
Bár elméletileg lehetséges egy teljes adathordozót felhasználni egy Linux rendszer tárolására, a gyakorlatban ez szinte soha nem történik meg. Ehelyett a teljes adathordozó blokkeszközöket kisebb, kezelhetőbb blokkeszközökre osztják fel. Az Alpha rendszereken ezeket szeleteknek hívják.
A későbbi szakaszokban a telepítési utasítások az ARC/AlphaBIOS beállításhoz tartozó példaparticionálást fogják használni. Kérjük, hogy igazítsa a példákban bemutatottakat a személyes preferenciához!
Partíciós séma megtervezése
Hány partíció és mekkora méretű?
Az adathordozón a partíciók elrendezésének a kialakítása nagymértékben függ a Gentoo operációs rendszer igényeitől és az adathordozón alkalmazott fájlrendszer(ek) igényeitől. Ha sok felhasználó lesz a rendszerben, akkor tanácsos a /home könyvtárat külön partícióra elhelyezni, ami növeli a biztonságot, és megkönnyíti a biztonsági mentéseket és más típusú karbantartásokat. Ha a Gentoo rendszert levelezőszerverként telepítik, akkor a /var könyvtárnak külön partíción kell lennie, mivel minden levél a /var könyvtárban lesz eltárolva. A játékszervereknek lehet külön /opt partíciója, mivel a legtöbb játékszerver-szoftver ebbe a könyvtárba van telepítve. Ezeknek az ajánlásoknak az oka hasonló a /home könyvtárhoz: biztonság, biztonsági mentések és karbantartás.
A legtöbb esetben a Gentoo rendszeren az /usr és a /var könyvtárak viszonylag nagy méretűek szoktak lenni. A /usr könyvtár tárolja a rendszeren elérhető alkalmazások többségét és a Linux kernel forráskódokat (a /usr/src alkönyvtárban). Alapértelmezés szerint a /var tárolja a Gentoo ebuild szoftvertárolót (a /var/db/repos/gentoo alkönyvtárban), amely a fájlrendszertől függően általában körülbelül 650 MiB területet foglal el az adathordozón. Ez a becsült terület nem tartalmazza a /var/cache/distfiles és /var/cache/binpkgs könyvtárakat, amelyek fokozatosan megtelnek forráskódfájlokkal, illetve (opcionálisan) bináris szoftvercsomagokkal, ahogy a rendszergazdák hozzáadják azokat a rendszerhez.
Az, hogy hány partíció és mekkora méretű kell, nagymértékben függ a kompromisszumok mérlegelésétől és az adott körülményekhez képest a legjobb választástól. A különálló partícióknak vagy köteteknek a következő előnyei vannak:
- Kiválasztható a legjobban teljesítő fájlrendszer minden partícióhoz vagy kötethez.
- A teljes rendszer nem fogyhat ki a szabad területből, ha az egyik meghibásodott adathordozó elkezd folyamatosan fájlokat írni egy partícióra vagy kötetre.
- Ha szükséges, akkor a fájlrendszer-ellenőrzések időben lerövidülnek, mivel párhuzamosan több ellenőrzés is elvégezhető (bár ez az előny több adathordozó esetében jobban érvényesül, mint a több partíció esetében).
- A biztonság fokozható az egyes partíciók vagy kötetek írásvédett módban történő felcsatlakoztatása által,
nosuid
(a setuid biteket figyelmen kívül hagyva),noexec
(a végrehajtható biteket figyelmen kívül hagyva) stb.
A több partíciónak azonban vannak bizonyos hátrányai is:
- Ha nincs megfelelően beállítva, akkor előfordulhat, hogy a rendszernek sok szabad területe lesz az egyik partíción, és kevés szabad területe lesz a másikon.
- Az /usr/ könyvtár külön partícióra történő rárakása megkövetelheti a rendszergazdától, hogy az initramfs segítségével indítsa el a rendszert a partíció felcsatlakoztatásának érdekében, még mielőtt más rendszerindító szkriptek elindulnának. Mivel az initramfs generálása és karbantartása túlmutat ennek a kézikönyvnek a hatókörén, javasoljuk, hogy az újonnan érkező felhasználók ne használjanak külön partíciót az /usr/ könyvtárhoz.
- Az SCSI és a SATA esetében létezik a 15 partíciós korlát, kivétel ha az adathordozó GPT típusú táblázatot használ.
Azon Gentoo operációs rendszerek számára, amelyek a systemd-t szolgáltatásként és init rendszerként kívánják használni, az /usr könyvtárnak elérhetőnek kell lennie a rendszerindításkor, vagy a gyökér fájlrendszer részeként, vagy egy initramfs által felcsatlakoztatva.
Mi a helyzet a swap területtel?
RAM mérete | Felfüggesztéstámogatás? | Hibernációtámogatás? |
---|---|---|
2 GB vagy kevesebb | 2 * RAM | 3 * RAM |
2 GB-tól 8 GB-ig | RAM mennyisége | 2 * RAM |
8 GB-tól 64 GB-ig | 8 GB minimum, 16 maximum | 1.5 * RAM |
64 GB vagy nagyobb | 8 GB minimum | Nem javasolt a hibernáció! A hibernálás nem ajánlott nagyon nagy mennyiségű memóriával rendelkező rendszerek esetén, mivel a sikeres hibernáláshoz a memória teljes tartalmát a adathordozóra kell írni. Több tíz gigabájt (vagy még rosszabb!) adathordozóra történő kiírása sok időt vehet igénybe, különösen forgókorongos adathordozó lemezek használata esetén. Ha nagyon sok RAM van a rendszerben, akkor a legjobb döntés az, ha ki van kapcsolva a hibernáció. |
Valójában, nincs egyáltalán előre kőbevésve, hogy pontosan mekkorának kell lennie az adathordozón a swap területnek. A területnek az a célja, hogy az adathordozón helyet biztosítson a kernel számára, amikor a RAM nagyon intenzív szintű használat alatt áll. A swap terület lehetővé teszi a RAM-ban futó kernel számára, hogy azok a RAM-ban található memórialapok ideiglenesen ki legyenek rakva az adathordozóra, amelyekre hamarosan valószínűleg ismét szüksége lesz a kernelnek a RAM-ban (ezt nevezik kiswapolásnak vagy kilapozásnak a memóriából). Ez a művelet felszabadítja a helyet a RAM-ban az éppen aktuális feladathoz. Természetesen, ha a kernelnek hirtelen ismét szüksége lesz az adathordozóra kiswapolt oldalakra, akkor azokat vissza kell tölteni a RAM-ba (lapozás művelete), ami jóval tovább tart, mint ha csak a RAM-ban zajlana az írás/olvasás munkafolyamata (mivel az RAM-on kívüli adathordozók, különösen a HDD-k, nagyon lassúak a RAM-hoz képest).
Ha egy rendszer nem fog memóriaigényes alkalmazásokat futtatni, vagy sok RAM áll rendelkezésére, akkor valószínűleg nincs szüksége sok swap területre. Hibernálás esetén azonban ne feledje, hogy a swap terület a memória teljes tartalmának a tárolására szolgál (valószínűleg asztali számítógépeket és laptopokat érint, nem szerverkörnyezeteket). Ha a rendszernek szüksége van a hibernált állapot támogatására, akkor a memória mennyiségénél nagyobb vagy azzal megegyező swap területre van szükség.
Általános szabály, hogy 4 GB-nál kisebb RAM esetén a swap terület mérete a RAM kétszerese legyen. Több adathordozóval rendelkező operációs rendszerek esetén célszerű minden adathordozón egy swap partíciót létrehozni, hogy párhuzamos olvasási/írási műveletekhez használhatók legyenek. Minél gyorsabban tud "swap"-olni egy adathordozót, annál gyorsabban fog futni a rendszer, amikor a swap területen lévő adatokhoz kell hozzáférni. Amikor a fizikailag forgólemezes és a szilárdtestalapú adathordozók között választunk, akkor a teljesítmény szempontjából jobb, ha a swap-ot a szilárdtestalapú hardverre helyezzük.
Érdemes megjegyezni, hogy a swap fájlok a swap partíciók alternatívájaként használhatók. Ez leginkább a nagyon korlátozott adathordozó területtel rendelkező operációs rendszerek számára hasznos.
Az fdisk használata az fizikai adathordozó particionálásához (csak SRM esetében)
A következő részek bemutatják, hogy miként hozható létre az SRM-hez tartozó példa szelet-elrendezés.
Szelet | Leírás |
---|---|
/dev/sda1 | Swap szelet |
/dev/sda2 | Root szelet |
/dev/sda3 | Teljes adathordozó (szükséges) |
Módosítsa a szelet-elrendezést az Ön személyes preferenciáinak megfelelően.
Elérhető fizikai adathordozók azonosítása
A rendszerben futó adathordozók meghatározásához használja a következő parancsokat:
IDE esetében:
root #
dmesg | grep 'drive$'
SCSI fizikai adathordozók esetében:
root #
dmesg | grep 'scsi'
A kimenet megmutatja, hogy milyen fizikai adathordozókat észlelt a rendszer, valamint azok megfelelő /dev/ bejegyzését. A következő részekben feltételezzük, hogy a fizikai adathordozó egy SCSI fizikai adathordozó amely a /dev/sda helyen található meg.
BSD fizikai adathordozó címke létrehozása
Ha a fizikai adathordozó teljesen üres, akkor először hozzon létre egy BSD fizikai adathordozó címkét. Alphán ezt nem lehet az fdisk segítségével megtenni, ezért itt a parted használata jelenti a megoldást.
Most indítsa el a parted particionáló szoftvert:
root #
parted /dev/sda
Using /dev/sda Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted)
mklabel bsd
Warning: The existing disk label on /dev/sda will be destroyed and all data on this disk will be lost. Do you want to continue? Yes/No? yes (parted) quit Information: You may need to update /etc/fstab.
Most, hogy létrehoztuk a BSD fizikai adathordozó címkét a fizikai adathordozónkon, folytassa a szeletek létrehozását. Ezt a parted segítségével lehet megtenni, vagy ahogyan az alábbi példákban, az fdisk használatával is megtehető:
root #
fdisk /dev/sda
Összes szelet törlése
Ha a fizikai adathordozó teljesen üres, akkor először hozzon létre egy BSD lemezcímkét.
Command (m for help):
b
/dev/sda contains no disklabel. Do you want to create a disklabel? (y/n) y A bunch of drive-specific info will show here 3 partitions: # start end size fstype [fsize bsize cpg] c: 1 5290* 5289* unused 0 0
Kezdjük azzal, hogy törlünk minden szeletet, kivéve a 'c'-szeletet (ez a BSD lemezcímkék használatának előfeltétele). Az alábbiakban bemutatjuk, hogyan lehet törölni egy szeletet (a példában az 'a'-t használjuk). Ismételje meg a folyamatot, hogy törölje az összes többi szeletet (ismételten kivéve a 'c'-szeletet).
Használja a p gombot az összes meglévő szelet megtekintéséhez. A d gombot egy szelet törlésére használják.
BSD lemezcímke parancs (m a súgóhoz):
p
8 partitions: # start end size fstype [fsize bsize cpg] a: 1 235* 234* 4.2BSD 1024 8192 16 b: 235* 469* 234* swap c: 1 5290* 5289* unused 0 0 d: 469* 2076* 1607* unused 0 0 e: 2076* 3683* 1607* unused 0 0 f: 3683* 5290* 1607* unused 0 0 g: 469* 1749* 1280 4.2BSD 1024 8192 16 h: 1749* 5290* 3541* unused 0 0
BSD disklabel command (m for help):
d
Partition (a-h): a
Miután ezt a folyamatot minden szelet esetében megismételte, a listázásnak valami hasonlót kell mutatnia:
BSD lemezcímke parancs (m a súgóhoz):
p
3 partitions: # start end size fstype [fsize bsize cpg] c: 1 5290* 5289* unused 0 0
Swap szelet létrehozása
Alpha alapú rendszereken nincs szükség külön boot szeletre, de ebben a példában létrehozunk egy külön /boot szeletet a kernelfájlok és a boot loader beállításfájlok számára. Az első cilinder azonban nem használható, mivel az aboot képetfájlt oda helyezik.
Létrehozunk egy swap szeletet, amely a harmadik cilindernél kezdődik, és összesen 1 GB méretű lesz. Használja a n billentyűgombot egy új szelet létrehozásához. A szelet létrehozása után változtassa meg annak típusát 1 (egy) típusra, ami swap partíciót jelent.
BSD lemezcímke parancs (m a súgóhoz):
n
Partition (a-p): a First cylinder (1-5290, default 1): 3 Last cylinder or +size or +sizeM or +sizeK (3-5290, default 5290): +1024M
BSD lemezcímke parancs (m a súgóhoz):
t
Partition (a-c): a Hex code (type L to list codes): 1
Ezek után egy elrendezésnek, amely hasonló a következőhöz, kell megjelennie:
BSD lemezcímke parancs (m a súgóhoz):
p
3 partitions: # start end size fstype [fsize bsize cpg] a: 3 1003 1001 swap c: 1 5290* 5289* unused 0 0
Boot szelet létrehozása
Hozzon létre egy boot fájlrendszert, amely tartalmazza a kernel fájlokat és a boot loader beállításfájlt (aboot.conf). Az aboot csak ext2 és ext3 fájlrendszereket támogat. Hozza létre a boot szeletet a swap szelet utáni első cilindertől kezdve. Használja a p parancsot annak megtekintésére, hogy hol ér véget a swap szelet. Példánkban ez 1003-nál van, így a boot szelet 1004-nél kezdődik.
BSD lemezcímke parancs (m a súgóhoz):
n
Partition (a-p): b First cylinder (1-5290, default 1): 1004 Last cylinder or +size or +sizeM or +sizeK (3-5290, default 5290): +1024M
BSD lemezcímke parancs (m a súgóhoz):
t
Partition (a-c): b Hex code (type L to list codes): 08
Ezek után egy olyan elrendezésnek kell megjelennie, amely hasonló az alábbihoz:
BSD lemezcímke parancs (m a súgóhoz):
p
3 partitions: # start end size fstype [fsize bsize cpg] a: 3 1003 1001 swap b: 1004 2005 1001 ext2 c: 1 5290* 5289* unused 0 0
Root szelet létrehozása
Most létrehozzuk a root szeletet, amely a boot szelet utáni első cilindernél kezdődik. Használja a p parancsot annak megtekintésére, hogy hol ér véget a boot szelet. Példánkban ez 2005-nél van, így a root szelet 2006-nál kezdődik.
Egy másik probléma, hogy jelenleg van egy hiba a fdisk programban, amely miatt azt gondolja, hogy a rendelkezésre álló cilinderek száma eggyel több, mint a valós szám. Más szavakkal, amikor az utolsó cilinderről kérdez, akkor csökkentse a cilinderszámot (ebben a példában: 5290) eggyel.
Amikor a szelet létrejön, változtassa meg a típusát 8-ra, ami az ext2 fájlrendszert jelöli.
BSD lemezcímke parancs (m a súgóhoz):
n
Partition (a-p): b First cylinder (1-5290, default 1): 2006 Last cylinder or +size or +sizeM or +sizeK (1004-5290, default 5290): 5289
BSD lemezcímke parancs (m a súgóhoz):
t
Partition (a-c): b Hex code (type L to list codes): 8
Az eredményül kapott szelet elrendezésnek most valami hasonlónak kell lennie:
BSD lemezcímke parancs (m a súgóhoz):
p
3 partitions: # start end size fstype [fsize bsize cpg] a: 3 1003 1001 swap b: 1004 2005 4286 ext2 c: 1 5290* 5289* unused 0 0 d: 2006 5289 3283 ext2
Mentse el a szelet elrendezését és lépjen ki
Lépjen ki a fdisk alkalmazásból a w megadásával. Ez a művelet elmenti a szelet elrendezést is.
Command (m for help):
w
Az fdisk használata a fizikai adathordozó particionálásához (csak ARC/AlphaBIOS esetén)
A következő részek bemutatják, hogy miként kell létrehozni a példában szereplő partíció elrendezést ARC/AlphaBIOS esetén:
Partíció | Leírás |
---|---|
/dev/sda1 | Boot partíció |
/dev/sda2 | Swap partíció |
/dev/sda3 | Root partíció |
Módosítsa a partíció elrendezését személyes preferenciák szerint.
Rendelkezésre álló fizikai adathordozók azonosítása
Az alábbi parancsok segítségével meghatározhatja, hogy mely fizikai adathordozók működnek:
IDE adathordozók számára:
root #
dmesg | grep 'drive$'
SCSI fizikai adathordozók számára:
root #
dmesg | grep 'scsi'
Ebből a kimenetből könnyen látható, hogy mely fizikai adathordozókat észlelte a rendszer, valamint azok megfelelő /dev/ bejegyzéseit. A következő részekben azt feltételezzük, hogy a fizikai adathordozó egy SCSI fizikai adathordozó, amelynek elérési útja az /dev/sda útvonalon található meg.
Most indítsa el az fdisk particionáló szoftvert:
root #
fdisk /dev/sda
Összes partíció törlése
Ha a fizikai adathordozó teljesen üres, akkor először hozzon létre egy DOS adathordozó táblázatot (lemezcímkét).
Parancs (m a súgóhoz):
o
Building a new DOS disklabel.
Kezdjük az összes partíció törlésével. Az alábbiakban bemutatom, hogyan töröljön egy partíciót (a példában az '1'-est használjuk). Ismételje meg a folyamatot, hogy törölje a többi partíciót is.
Használja a p billentyűgombot az összes létező partíció megtekintéséhez. A d billentyűgomb a partíció törlésére szolgál.
command (m for help):
p
Disk /dev/sda: 9150 MB, 9150996480 bytes 64 heads, 32 sectors/track, 8727 cylinders Units = cylinders of 2048 * 512 = 1048576 bytes Device Boot Start End Blocks Id System /dev/sda1 1 478 489456 83 Linux /dev/sda2 479 8727 8446976 5 Extended /dev/sda5 479 1433 977904 83 Linux Swap /dev/sda6 1434 8727 7469040 83 Linux
command (m for help):
d
Partition number (1-6): 1
Boot partíció létrehozása
Az Alpha rendszereken, amelyek MILO-t használnak a bootoláshoz, létre kell hozni egy kis vfat boot partíciót.
Command (m for help):
n
Command action e extended p primary partition (1-4) p Partition number (1-4): 1 First cylinder (1-8727, default 1): 1 Last cylinder or +size or +sizeM or +sizeK (1-8727, default 8727): +16M
Command (m for help):
t
Selected partition 1 Hex code (type L to list codes): 6 Changed system type of partition 1 to 6 (FAT16)
Cserepartíció (swap) létrehozása
Létrehozunk egy cserepartíciót, amelynek teljes mérete 1 GB. Használja a n billentyűgombot egy új partíció létrehozásához.
Command (m for help):
n
Command action e extended p primary partition (1-4) p Partition number (1-4): 2 First cylinder (17-8727, default 17): 17 Last cylinder or +size or +sizeM or +sizeK (17-8727, default 8727): +1000M
Command (m for help):
t
Partition number (1-4): 2 Hex code (type L to list codes): 82 Changed system type of partition 2 to 82 (Linux swap)
A fenti lépések után a következőhöz hasonló elrendezés látható:
Command (m for help):
p
Disk /dev/sda: 9150 MB, 9150996480 bytes 64 heads, 32 sectors/track, 8727 cylinders Units = cylinders of 2048 * 512 = 1048576 bytes Device Boot Start End Blocks Id System /dev/sda1 1 16 16368 6 FAT16 /dev/sda2 17 971 977920 82 Linux swap
Root partíció létrehozása
Most létrehozzuk a root partíciót. Ismét használja a n parancsot.
Command (m for help):
n
Command action e extended p primary partition (1-4) p Partition number (1-4): 3 First cylinder (972-8727, default 972): 972 Last cylinder or +size or +sizeM or +sizeK (972-8727, default 8727): 8727
Ezek után egy a következőhöz hasonló elrendezésnek kell megjelennie:
Command (m for help):
p
Disk /dev/sda: 9150 MB, 9150996480 bytes 64 heads, 32 sectors/track, 8727 cylinders Units = cylinders of 2048 * 512 = 1048576 bytes Device Boot Start End Blocks Id System /dev/sda1 1 16 16368 6 FAT16 /dev/sda2 17 971 977920 82 Linux swap /dev/sda3 972 8727 7942144 83 Linux
Mentse el a partíció elrendezését, majd lépjen ki
Mentse a fdisk programban végrehajtott módosításokat a w billentyűgomb megnyomásával.
Command (m for help):
w
Most, hogy a partíciók létrejöttek, folytassa a Fájlrendszerek létrehozása című rész követésével.