Egy kis kitérő: ez az LR szintetikus.
Az itt leírt feladatok egy része sokkal egyszerűbben megoldható, de mivel az l/r feladata a megismerés
raid és lvm funkciókkal bizonyos műveletek mesterségesen bonyolultak.
Az LR végrehajtásához szükséges eszközökre vonatkozó követelmények:
Virtualizációs eszközök, mint például a Virtualbox
Linux telepítési kép például Debian 9
Internet elérhetősége több csomag letöltéséhez
Csatlakozás ssh-n keresztül a telepített virtuális géphez (opcionális)
VIGYÁZAT
Ez a laboratóriumi munka egy olyan finom témához kapcsolódik, mint az adatbiztonság – ez az a terület, ahol
amely lehetővé teszi az összes adat elvesztését a legkisebb hiba miatt - egy plusz betű vagy szám.
Mivel Ön laboratóriumi munkát végez, nincs veszélyben, kivéve, hogy elölről kell kezdenie az egészet.
A való életben minden sokkal komolyabb, ezért nagyon óvatosan, megértéssel adja meg a meghajtóneveket
pontosan mit csinál az aktuális paranccsal és milyen lemezekkel dolgozik.
A második fontos pont a lemezek és partíciók elnevezése: a helyzettől függően a lemezszámok eltérőek lehetnek
azokból az értékekből, amelyeket a labormunka parancsaiban közölnek.
Tehát például, ha eltávolítja az sda lemezt a tömbből, majd hozzáad egy új lemezt, akkor az új lemez jelenik meg
sda nevű rendszeren. Ha újraindítja az új lemez hozzáadása előtt, akkor az új
a lemez neve sdb, a régi pedig sda lesz
A labort szuperfelhasználóként (root) kell futtatni, ahogy a legtöbb parancs megköveteli
emelt jogosultságokkal, és nincs értelme a jogosultságokat sudo-n keresztül folyamatosan fokozni
Tananyagok
RAID
LVM
Lemez elnevezése Linux operációs rendszerben
Mi az a szakasz
Mi az a partíciós tábla, és hol tárolják?
Mi az a grub
Használt közművek
1) megtekintheti a lemez adatait
lsblk -o NÉV,MÉRET,FSTYPE,TYPE,MOUNTPOINT
fdisk -l
2) információk megtekintése és LVM-mel való munka
pvs
pvextend
pvcreate
pvresize
stb.
vgreduce
lvs
lvextend
3) információk megtekintése és RAID-del való munka
cat /proc/mdstat
mdadm
4) rögzítési pontok
felmászik
umount
cat /etc/fstab
cat /etc/mtab
5) lemez újrapartíció
fdisk /dev/XXX
6) partíciók másolása
dd if=/dev/xxx of=/dev/yyy
7) a partíciós táblával való munka
partx
sfdisk
mkfs ext4 paranccsal
8) a rendszerbetöltővel való munka
grub-install /dev/XXX
update-grub
9) egyéb
lsof
hajlamos
rsync
A laboratóriumi munka 3 részből áll:
működő rendszer beállítása lvm segítségével, raid
az egyik lemezhiba emulációja
lemezek cseréje menet közben, új lemezek hozzáadása és partíciók mozgatása.
1. feladat (OS telepítése és LVM, RAID konfigurálása)
1) Hozzon létre egy új virtuális gépet a következő jellemzőkkel:
1 gb ram
1 cpu
2 hdd (nevezd el őket ssd1, ssd2 és azonos méreteket rendelj hozzá, ellenőrizze a hot swap és az ssd mezőket)
SATA vezérlő 4 portra konfigurálva
2) Kezdje el a Linux telepítését, és amikor a merevlemezek kiválasztásához ér, tegye a következőket:
Particionálási módszer: kézi, ami után látnia kell ezt a képet:
Külön partíció beállítása a /boot számára: Válassza ki az első lemezt, és hozzon létre rajta egy új partíciós táblát
Partíció mérete: 512M
Csatlakozási pont: /boot
Ismételje meg a beállításokat a második lemezen is, de mivel nem tudja egyszerre kétszer felcsatolni a /boot-ot, válassza ki a beillesztési pontot: none, ami végül a következőt kapja (a kép egy jamb-el, lusta megismételni):
RAID beállítása:
Válassza ki a szabad területet az első lemezen, és konfigurálja a partíció típusát fizikai kötetként a RAID számára
Válassza a "Partíció beállítása kész" lehetőséget
Ismételje meg pontosan ugyanazokat a beállításokat a második lemezen, ami a következőt eredményezi:
Válassza a "Szoftver RAID konfigurálása" lehetőséget
Hozzon létre MD-eszközt
Szoftver RAID eszköztípus: Válasszon ki egy tükrözött tömböt
Aktív eszközök a RAID XXXX tömbhöz: Válassza ki mindkét meghajtót
Tartalék eszközök: Hagyja meg a 0-t alapértelmezettként
Aktív eszközök a RAID XX tömbhöz: válassza ki a raid alatt létrehozott partíciókat
befejez
Ennek eredményeként egy ilyen képet kell kapnia:
LVM konfigurálása: Válassza a Logikai kötetkezelő konfigurálása lehetőséget
A partíció jelenlegi elrendezésének megtartása és LVM konfigurálása: Igen
Kötetcsoport létrehozása
Kötetcsoport neve: rendszer
Eszközök az új kötetcsoporthoz: Válassza ki a létrehozott RAID-t
Logikai kötet létrehozása
logikai kötet neve: gyökér
logikai kötet mérete: 25 a lemez méretéből
Logikai kötet létrehozása
logikai kötet neve: var
logikai kötet mérete: 25 a lemez méretéből
Logikai kötet létrehozása
logikai kötet neve: log
logikai kötet mérete: 15 a lemez méretéből
A Kijelző konfigurációs részleteit választva a következő képet kapja:
Miután befejezte az LVM beállítását, a következőket kell látnia:
Partíció elrendezése: egyenként válassza ki az LVM-ben létrehozott köteteket, és helyezze el őket, például a gyökér számára így:
Használja: ext4
hegy csucs: /
A gyökérpartíció megjelölésének eredményének így kell kinéznie:
ismételje meg a particionálási műveletet a var és a log esetében, kiválasztva a megfelelő csatolási pontokat (/var és /var/log manuálisan beírva), és a következő eredményt kapja:
Válassza a Particionálás befejezése lehetőséget
Számos kérdést fognak feltenni azzal kapcsolatban, hogy még mindig van egy leválasztatlan partíció, és a swap nincs konfigurálva. Mindkét kérdésre nemleges választ kell adni.
A végeredménynek így kell kinéznie:
3) Fejezze be az operációs rendszer telepítését a grub telepítésével az első eszközre (sda), és indítsa el a rendszert.
4) Másolja át a /boot partíció tartalmát az sda meghajtóról (ssd1) az sdb meghajtóra (ssd2)
Sorolja fel az összes lemezt, amelyet az előző parancs adott, és írja le, hogy milyen lemezről van szó
Keresse meg azt a meghajtót, amelyre a grub nem volt telepítve, és hajtsa végre a következő telepítést: grub-install /dev/sdb
megtekintheti az aktuális raid információit a cat /proc/mdstat paranccsal, és írja le, amit lát.
nézd meg a parancsok kimenetét: pvs, vgs, lvs, mount és írd le, hogy pontosan mit láttál
Írd le saját szavaiddal, hogy mit csináltál és milyen eredményt értél el a feladattal.
A feladat elvégzése után ajánlatos biztonsági másolatot készíteni a virtuális gép mappájáról vagy gyártmányáról
csavargó doboz: https://t.me/bykvaadm/191
Eredmény: Virtuális gép ssd1, ssd2 lemezekkel
2. feladat (Az egyik lemez meghibásodásának emulálása)
1) Ha bejelölte a hot swap négyzetet, akkor menet közben törölheti a lemezeket
Törölje az ssd1 lemezt a gép tulajdonságaiból
Keresse meg a könyvtárat, ahol a virtuális gép fájljait tárolja, és törölje az ssd1.vmdk fájlt
2) Győződjön meg arról, hogy a virtuális gépe továbbra is fut
3) Indítsa újra a virtuális gépet, és ellenőrizze, hogy továbbra is fut-e
4) ellenőrizze a RAID tömb állapotát: cat /proc/mdstat
5) adjon hozzá egy azonos méretű új lemezt a virtuális gép felületén, és nevezze el ssd3-nak
6) hajtsa végre a következő műveleteket:
ellenőrizze, hogy az új lemez megérkezett-e a rendszerbe az fdisk -l használatával
másolja a partíciós táblát a régi lemezről az újra: sfdisk -d /dev/XXXX | sfdisk /dev/YYY
nézd meg az eredményt az fdisk -l használatával
Új lemez hozzáadása a raid tömbhöz: mdadm —manage /dev/md0 —add /dev/YYY
Nézd meg az eredményt: cat /proc/mdstat. Látnia kell, hogy a szinkronizálás elindult
7) Most manuálisan kell szinkronizálnia azokat a partíciókat, amelyek nem részei a RAID-nek.
Ehhez a dd segédprogramot használjuk, amely az „élő” lemezről a nemrég telepített új lemezre másol.
dd if=/dev/XXX of=/dev/YYY
8) A szinkronizálás befejezése után telepítse a grub-ot az új meghajtóra
9) Indítsa újra a virtuális gépet, hogy megbizonyosodjon arról, hogy minden működik
Írd le saját szavaiddal, hogy mit csináltál és milyen eredményt értél el a feladattal.
Eredmény: Az ssd1 lemezt eltávolították, az ssd2 lemezt elmentették, az ssd3 lemezt hozzáadta.
3. feladat (Új lemezek hozzáadása és partíció áthelyezése)
Ez a bemutatott feladatok közül a legösszetettebb és legterjedelmesebb feladat.
Nagyon alaposan ellenőrizze, hogy mit csinál, és milyen lemezekkel és partíciókkal.
A futtatás előtt ajánlott másolatot készíteni.
Ez a feladat független a 2. feladattól, az 1. feladat után hajtható végre, lemeznevekhez igazítva.
A laboratóriumi feladat második részének pontosan ugyanabba az állapotba kell vezetnie, mint az első rész elvégzése után.
A munka megkönnyítése érdekében azt tudom ajánlani, hogy ne fizikailag távolítsa el a lemezeket a gazdagépről, hanem csak
válassza le őket a gép tulajdonságainál. A virtuális gép operációs rendszere szempontjából pontosan ugyanúgy fog kinézni, de megteheti
ha valami történik, csatlakoztassa vissza a lemezt, és folytassa a munkát néhány pont visszagörgetésével, ha
problémáid vannak. Például előfordulhat, hogy rosszul tette, vagy elfelejtette átmásolni a /boot partíciót az új lemezre.
Csak azt tudom tanácsolni, hogy ellenőrizze többször, vagy még jobb, hogy melyik lemezekkel és partíciókkal dolgozik
Írja fel egy papírra a lemezek, partíciók és a „fizikai” lemezszám közötti megfelelést. Szép és tiszta fa
csapat sorsol lsblk, használja minél gyakrabban, hogy elemezze, mit tett és mit kell tennie.
A történethez...
Képzelje el, hogy a szervere hosszú ideje fut 2 SSD meghajtón, amikor hirtelen...
1) Szimulálja az ssd2 lemezhibát úgy, hogy eltávolítja a lemezt a virtuális gép tulajdonságai közül, és újraindítja
2) Tekintse meg a lemezek és a RAID aktuális állapotát:
5) Először is, ügyeljen a régi lemezen lévő adatok biztonságára.
Ezúttal LVM-en keresztül továbbítjuk az adatokat:
Először is át kell másolnia a fájltáblázatot a régi lemezről az újra:
sfdisk -d /dev/XXX | sfdisk /dev/YYY
Cserélje ki a megfelelő lemezeket az x,y helyekre, és derítse ki, mit csinál ez a parancs.
Futtassa az lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT parancsot, és hasonlítsa össze a kimenetét az előző hívással.
Mi változott?
a dd paranccsal másolja a /boot adatokat az új lemezre
dd if=/dev/XXX of=/dev/YYY
ha a /boot a régi lemezen maradt, akkor újra fel kell szerelni az élő lemezre:
mount | grep boot # смотрим куда смонтирован диск
lsblk # смотрим какие диски есть в системе и смотрим есть ли диск, полученный из предыдущего пункта
umount /boot # отмонтируем /boot
mount -a # выполним монтирование всех точек согласно /etc/fstab.
# Поскольку там указана точка монтирования /dev/sda, то будет выполнено корректное перемонтирование на живой диск
Telepítse a rendszerbetöltőt az új ssd meghajtóra
grub-install /dev/YYY
Miért végezzük ezt a műveletet?
hozzon létre egy új raid tömböt, amely csak egy új ssd lemezt tartalmaz:
A fenti parancs nem működik speciális kulcs megadása nélkül.
Olvassa el a súgót, és adja hozzá ezt a kulcsot a parancshoz.
A cat /proc/mdstat paranccsal ellenőrizze a művelet eredményét. Mi változott?
Futtassa az lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT parancsot, és hasonlítsa össze a kimenetét az előző hívással.
Mi változott?
6) A következő lépés az LVM konfigurálása
futtassa a pv parancsot az aktuális fizikai kötetek információinak megtekintéséhez
hozzon létre egy új fizikai kötetet, amely tartalmazza a korábban létrehozott RAID-tömböt:
pvcreate /dev/md63
Futtassa az lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT parancsot, és hasonlítsa össze a kimenetét az előző hívással.
Mi változott?
Futtassa újra a pv parancsot. Mi változott?
Növeljük a Kötetcsoport rendszer méretét a következő paranccsal:
vgextend system /dev/md63
Futtassa a parancsokat, és írja le, mit látott, és mi változott.
vgdisplay system -v
pvs
vgs
lvs -a -o+devices
Melyik fizikai lemezen található jelenleg az LV var,log,root?
Helyezze át az adatokat a régi meghajtóról az újra a megfelelő eszköznevek használatával.
Ismételje meg a műveletet az összes logikai kötetre
Futtassa a parancsokat, és írja le, mit látott, és mi változott.
vgdisplay system -v
pvs
vgs
lvs -a -o+devices
lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
Cseréljük ki a VG-nket úgy, hogy eltávolítjuk róla a régi raid lemezt. Cserélje ki a megfelelő raid nevet.
vgreduce system /dev/md0
Futtassa a parancsokat, és írja le, mit látott, és mi változott.
lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
pvs
vgs
A kép szebbé tételéhez csatolja újra a /boot fájlt a második ssd lemezre (ssd4), és futtassa az lsblk parancsot. Ennek eredményeként az ssd3 lemez nem
semmit sem szabad felszerelni. Gondosan ellenőrizze, hogy a /boot partíció nem üres-e! ls /boot meg kell mutatnia
több fájl és mappa. Tanulmányozza, hogy mi van ebben a részben tárolva, és írja le, hogy melyik fájlkönyvtár miért felelős.
7) távolítsa el az ssd3 lemezt, és adja hozzá az ssd5, hdd1, hdd2 fájlt a fent leírt műszaki előírásoknak megfelelően, ami a következőket eredményezi:
ssd4 - az első új ssd
ssd5 - második új ssd
hdd1 – az első új hdd
hdd2 - második új hdd
8) Ellenőrizze, mi történt a lemezek hozzáadása után:
másolja a partíciós táblát, cserélje ki a megfelelő lemezeket:
sfdisk -d /dev/XXX | sfdisk /dev/YYY
Kérjük, vegye figyelembe, hogy amikor a partíciós táblát a régi lemezről másoltuk, úgy tűnt, hogy az új méret
nem használja ki a merevlemez teljes kapacitását.
Ezért hamarosan át kell méreteznünk ezt a partíciót és ki kell terjesztenünk a raidet.
Győződjön meg saját szemével a parancs futtatásával:
lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
10) másolja át a /boot rendszerindító partíciót ssd4-ről ssd5-re
dd if=/dev/XXX of=/dev/YYY
11) Telepítse a grub-ot az új meghajtóra (ssd5)
12) méretezze át az ssd5 lemez második partícióját
futtassa a lemezparticionáló segédprogramot:
fdisk /dev/XXX
Írja be a d billentyűt egy meglévő partíció törléséhez (válasszon 2-t)
írja be az n kulcsot egy új partíció létrehozásához
írja be a p billentyűt, hogy jelezze, hogy a partíció típusa „elsődleges”
írja be a 2-es kulcsot, hogy az új partíció a második számot kapja
Első szektor: nyomja meg az entert a partíció elejének automatikusan kiszámított méretének elfogadásához
Utolsó szektor: nyomja meg az entert a partíció végének automatikusan kiszámított méretének elfogadásához
írja be az l billentyűt, hogy megtekinthesse az összes lehetséges partíciótípus listáját, és megtalálja benne a Linux raid autot
írja be a t billentyűt a létrehozott partíció típusának megváltoztatásához (2), és írja be az előző lépésben talált számot.
írja be a w billentyűt a változtatás lemezre írásához.
12) olvassa el újra a partíciós táblát, és ellenőrizze az eredményt
új lemez hozzáadása az aktuális raid tömbhöz (ne felejtse el lecserélni a megfelelő lemezeket)
mdadm --manage /dev/md63 --add /dev/sda2
Bővítsük a tömbben lévő lemezek számát 2-re:
mdadm --grow /dev/md63 --raid-devices=2
Nézze meg az eredményt: 2 tömböt jelöltünk meg, de ebben a tömbben mindkét szakasz eltérő méretű
lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
13) növelje meg a partíció méretét az ssd4 lemezen
futtassa a lemezparticionáló segédprogramot:
fdisk /dev/XXX
Írja be a d billentyűt egy meglévő partíció törléséhez (válasszon 2-t)
írja be az n kulcsot egy új partíció létrehozásához
írja be a p billentyűt, hogy jelezze, hogy a partíció típusa „elsődleges”
írja be a 2-es kulcsot, hogy az új partíció a második számot kapja
Első szektor: nyomja meg az entert a partíció elejének automatikusan kiszámított méretének elfogadásához
Utolsó szektor: nyomja meg az entert a partíció végének automatikusan kiszámított méretének elfogadásához
A jelölés végén válassza a Nem lehetőséget, hogy a partíció tagságának aláírását a tömbben hagyja.
írja be a w billentyűt a változtatás lemezre írásához.
12) olvassa el újra a partíciós táblát, és ellenőrizze az eredményt
hozzunk létre egy új PV-t a raiden nagy lemezekből
pvcreate data /dev/md127
Hozzunk létre egy adat nevű csoportot ebben a PV-ben
vgcreate data /dev/md127
Hozzunk létre egy logikai kötetet az összes szabad terület méretével, és nevezzük val_lognak
lvcreate -l 100%FREE -n var_log data # lvs # посмотрим результат
formázza a létrehozott partíciót ext4-ben
mkfs.ext4 /dev/mapper/data-var_log
lássuk az eredményt
lsblk
17) naplóadatok átvitele a régi partícióról az újra
ideiglenesen telepítsen egy új naplótárolót
mount /dev/mapper/data-var_log /mnt
szinkronizáljuk a partíciókat
apt install rsync
rsync -avzr /var/log/ /mnt/
Nézzük meg, mely folyamatok futnak jelenleg a /var/log fájlban
apt install lsof
lsof | grep '/var/log'
állítsa le ezeket a folyamatokat
systemctl stop rsyslog.service syslog.socket
hajtsa végre a partíciók végső szinkronizálását (az adatok, amelyek megváltozhattak a legutóbbi szinkronizálás óta)
rsync -avzr /var/log/ /mnt/
cserélje ki a szakaszokat
umount /mnt
umount /var/log
mount /dev/mapper/data-var_log /var/log
nézzük mi történt
lsblk
18) Szerkessze az /etc/fstab fájlt
fstab - egy fájl, amely rögzíti azokat a szabályokat, amelyek alapján a partíciók rendszerindításkor fel lesznek csatolva
a feladatunk az, hogy megtaláljuk a sort, ahová a /var/log fel van szerelve, és megjavítjuk az eszközt system-log on data-var_log
19) Ebben a szakaszban a legfontosabb, hogy ne felejtsük el megváltoztatni a radela táblát (például ext4). Mert hiába változtatunk bármilyen raidet, lvm-t, amíg a partíción lévő FS nem értesíti, hogy a partíció mérete megváltozott, addig nem tudjuk használni az új területet. Használja a parancsot resize2fs az FS megváltoztatásához.
20) Záróakkord
Indítsuk újra. Ha mindent helyesen csinált, akkor visszakerül az operációs rendszerébe (erre azért van szükség, hogy megbizonyosodjon arról, hogy minden működik. Ennek a lépésnek nincs más értelme, mint az önteszt)
ellenőrizze, hogy minden, amit szerettünk volna, valóban megtörtént-e:
pvs
lvs
vgs
lsblk
cat /proc/mdstat
21) [OPCIONÁLIS] Kövesse a lépéseket
indítsa újra az F12 billentyű lenyomásával, hogy különböző meghajtókat adjon meg indításkor, hogy megbizonyosodjon a rendszerindításról
bármelyik ssd meghajtóról, hogy ne féljünk valamelyik meghibásodásától
most szükségtelen LV naplód van a VG rendszerben. Rendelje el ezt a helyet a gyökér vagy a var között, de használata helyett
designs 100% FREE adja meg a méretet kézzel az -L billentyűvel:
-L 500M
javítsa ki azt a problémát, hogy a /boot két partíción található szinkronizálás nélkül, ezt nem kell megfelelően megtenni,
példaként felkerült ide. Ne felejtsd el először másolni valahova a /boot tartalmát.
hozzon létre egy új raidet, és tegye bele az sda1,sda2-t
vegye be ezeket a partíciókat a meglévő raidbe, és állítsa vissza a /boot-ot a fő raidre, de felcsatolás nélkül.