Amint azt a múlt héten említettük, az Ubuntu 19.10 hivatalosan is megérkezett, és számos igazán izgalmas funkciót hoz magával. Bár ezeknek az új lehetőségeknek a többsége az asztali felhasználókat célozza meg, van egy különösen izgalmas funkció, amely mind az asztali, mind a szerverfelhasználók számára előnyös lesz. Ez a funkció a ZFS támogatása.
A ZFS, amelyet először a Sun Microsystems fejlesztett ki a Solaris Unix disztróhoz, egy 128 bites fájlrendszer és logikai kötetkezelő kombinációja, amely a következő funkciókat kínálja:
- skálázható.
- Támogatást nyújt nagy tárolókapacitáshoz és hatékonyabb adattömörítéshez.
- Mellékeli a pillanatfelvételeket és a visszaállításokat.
- Támogatja a copy-on-write klónokat.
- Folyamatos integritásellenőrzést és automatikus javítást végez.
- 128 bites címzés
- És még sok más.
Kérdezzen meg bármelyik adminisztrátort, és egyet fognak érteni abban, hogy a ZFS hozzáadása nagy dolog az Ubuntu számára. Hogy miért? A pillanatfelvételek és a rollback funkciók önmagukban is megérik a belépési árat (ami egyébként ingyenes). Ezzel a funkcióval az adminok visszaállíthatják a rendszereiket egy működő állapotba (vagy egy olyan állapotba, amely véletlenül törölt adatokat tartalmazott). Ez elég nagy dolog.
A pillanatfelvételek és a visszaállítások természetesen nem újdonságok. Valójában sok platform már évek óta tartalmazza ezt az eszközt. Szóval lehet, hogy az Ubuntu egy kicsit le van maradva ebben a témában. De mindenki számára, aki Ubuntut használ, ez a “jobb későn, mint soha” esete.”
De hogyan működik a ZFS az Ubuntun? Örülök, hogy megkérdezted. Hadd mutassam meg.
Egy figyelmeztetés
Mielőtt belevetné magát, tudnia kell, hogy a ZFS-támogatás az Ubuntu 19.10-ben kísérleti jellegű. Bár én hihetetlenül stabilnak találtam, kétszer is meggondolhatod, hogy termelő környezetben használd-e (amíg már nem szerepel a “kísérleti” listán).
Azt is vedd figyelembe, hogy a ZFS-támogatás jelenleg csak az asztali verzió telepítése során érhető el. Ez nem jelenti azt, hogy a szerverváltozaton nem lehet hozzáadni a fájlrendszer támogatását, de ez nem ilyen egyszerű. Emiatt az Ubuntu 19.10 asztali változatán fogom bemutatni.
Telepítés
Az első lépés a ZFS engedélyezése az Ubuntu 19.10 telepítésekor. A telepítés során a Telepítés típusa fázisban talál egy új opciót (1. ábra).
1. ábra: A ZFS opció kiválasztása a telepítés során.
A telepítés befejezése után indítsa újra és jelentkezzen be.
Ha az Ubuntu 19.10 szerver verzióját használja.10-et használ, bármikor telepítheti a ZFS-támogatást a következő paranccsal:
1
|
sudo apt-get install zfsutils-linux
|
Naná, ha ezt az utat választja, akkor néhány extra lépést (például adathalmazok létrehozása) kell megtennie. Az asztali telepítéssel a teljes könyvtárhierarchiádat ZFS-adatkészletek alkotják, így sokkal kevesebb munkát kell elvégezned.
Első lépések a ZFS-szel
Amikor bejelentkeztél az asztali telepítésbe, nyiss egy terminálablakot, és szerezd meg az adatkészleteid listáját. A ZFS-t nem használó Ubuntu telepítéseknél általában olyan könyvtárak elérési útvonalaival dolgozik, mint a /home/jack vagy a /usr/local/. A ZFS-t támogató rendszereken ez nem így van. Ehelyett adathalmazokkal dolgoznak. Az adatkészlet egy olyan fájlrendszer-típus, amely megosztja a tárolókészletet (a ZFS legalapvetőbb építőelemét).
Az adathalmazok megkereséséhez adja ki a parancsot:
1
|
zfs list
|
Amint látható (a 2. ábrán), minden könyvtár vagy a bpool (boot) vagy az rpool (root) poolban található.
2. ábra: Adatkészletünk listázása.
Munkálkodjunk egy felhasználó home könyvtárával. Ebben az esetben az rpool/USERDATA/jack_bwcn4u adatkészlettel.
Pillanatfelvétel készítése
Először is létrehozunk egy új pillanatfelvételt a /home/jack könyvtárból (ami, ne feledjük, az rpool/USERDATA/jack_bwcn4u adatkészlet). Tegyük fel, hogy egy mai dátummal ellátott pillanatfelvételt szeretnénk létrehozni. Az ehhez szükséges parancs a következő lenne:
1
|
sudo zfs snapshot rpool/USERDATA/jack_bwcn4u@FRIDAY10-18-19
|
Az időpont parancsot így is beilleszthetjük:
1
|
sudo zfs rollback rpool/USERDATA/jack_bwcn4u@`date +%F`
|
A pillanatfelvétel elkészültének ellenőrzéséhez adja ki a parancsot:
1
|
zfs list -t snapshot
|
Az összes aktuális pillanatfelvételt fel kell sorolnia (3. ábra).
3. ábra: Az új pillanatfelvételünk elkészült.
Pillanatfelvétel visszahívása
Tegyük fel, hogy valamilyen okból véletlenül töröltünk egy könyvtárat a home könyvtárból. Mi a teendő? Szerencsére készítettél egy pillanatfelvételt, és ezt a pillanatfelvételt vissza tudod tekerni, úgy, hogy a törölt könyvtár visszatérjen.
Először is töröljük a ~/Documents könyvtárat a következő paranccsal:
1
|
rm -rf /home/jack/Documents
|
Az ls parancsot kiadva láthatjuk, hogy a Documents könyvtár eltűnt (4. ábra).
A Documents könyvtárunk törlődött.
Most visszaforgatjuk a pénteki pillanatfelvételt, hogy visszaállítsuk ezt a könyvtárat. Ehhez adjuk ki a parancsot:
1
|
sudo zfs rollback rpool/USERDATA/jack_bwcn4u@FRIDAY10-18-19
|
A parancs végrehajtása után, adjuk ki újra az ls parancsot, hogy lássuk, hogy a Documents visszatért (5. ábra).
5. ábra: A Documents visszatért.
Pillanatképek megsemmisítése
Tegyük fel, hogy több pillanatfelvételt készített, vagy egy adott pillanatfelvételnek vagy hibás vagy hiányzó adatai vannak. Lehet, hogy törölni szeretné ezt a pillanatfelvételt. Tegyük fel, hogy törölni szeretnénk az rpool/USERDATA/jack_bwcn4u@FRIDAY10-18-19 pillanatfelvételt. Ehhez a parancs a következő lenne:
1
|
sudo zfs destroy rpool/USERDATA/jack_bwcn4u@FRIDAY10-18-19
|
Ha már megsemmisítettünk egy pillanatfelvételt, azt nem lehet visszahozni, ezért óvatosan használja ezt a parancsot. Ha véletlenül van egy különösen fontos pillanatképed, amelyet nem akarsz megsemmisíteni, akkor lefoglalhatod. Az rpool/USERDATA/jack_bwcn4u@FRIDAY10-18-19 pillanatképünkre a következő parancsot adjuk ki:
1
|
sudo zfs hold keep rpool/USERDATA/jack_bwcn4u@FRIDAY10-18-19
|
Ha most megpróbáljuk megsemmisíteni ezt a pillanatfelvételt, hibaüzenetet fog látni (6. ábra).
6. ábra: Ezt a pillanatfelvételt nem lehet megsemmisíteni.
A megtartott pillanatfelvétel megsemmisítéséhez a -d opciót kell hozzáadni a következőképpen:
1
|
<i>sudo zfs destroy -d rpool/USERDATA/jack_bwcn4u@FRIDAY10-18-19</i>
|
Ez minden, A megtartott pillanatfelvétel eltűnt.
És ennyi a pillanatfelvételek létrehozásának és megsemmisítésének alapjai az Ubuntu 19.10-ben újonnan hozzáadott ZFS funkcióval. Próbálja ki ezt egy tesztkörnyezetben, és nézze meg, mennyire működik. Eddig csak egy problémát fedeztem fel, hogy amikor megpróbáltam visszaállítani egy pillanatképet, újra kellett indítanom a gépet, mielőtt a visszaállítási parancs sikeresen lefutott volna. Ettől az egy problémától eltekintve a ZFS és az Ubuntu 19.10.
zökkenőmentesen működik.