ZFS

„OpenZFS“ palaikė NFS serverį, 1 dalis. Serverio kūrimas

„OpenZFS“ palaikė NFS serverį, 1 dalis. Serverio kūrimas
Jei esate susipažinę su „OpenZFS“, žinote viską apie daug funkcijų teikiančią sąsają, lanksčią architektūrą, patikimas kontrolines sumas ir COW mechanizmus. Galbūt jūs to norite ir savo darbalaukyje, bet nenorite performatuoti esamų diskų ir skaidinių. Galbūt jūs dar naudojate „Windows 10“, kuri nepalaiko „OpenZFS“. Na, šiame tinklaraščio įraše aptarsiu, kaip galite sukurti tinklo failų sistemą arba NFS, veikiančią atskirame serveryje. Tada šį NFS įrenginį galima prijungti prie darbalaukio darbo vietos. Tokiu būdu galite užtikrinti ZFS patikimumą ir patikimumą kartu su savo mėgstamos darbalaukio OS patogumu, nes NFS yra prieinamas visose platformose.

NFS prijungimo taško sukūrimą „Windows 10“ kliente aprašysiu šios serijos 2 dalyje. Dabar sutelkime dėmesį į „Ubuntu“ serverį, siūlantį NFS saugyklą, ir „Ubuntu“ klientą, bandantį prisijungti prie jo.

Sąranka

Mano NFS serveris bus pagrįstas „Ubuntu 18“.04 LTS. Galite naudoti savo mėgstamą „Linux“ distributorių ar „FreeBSD“, ar bet kurią kitą OS, palaikančią „OpenZFS“. Mano priežastis naudoti „Ubuntu 18“.04 yra tai, kad jis yra gana populiarus ir žymiai sumažintų patekimo barjerą.

NFS turėtų būti prieinamas tik mano LAN, kurio potinklio kaukė yra 255.255.255.0 ir 192.168.0.1 yra numatytasis šliuzas. Kalbant paprastai, tai reiškia, kad visi prie mano namų tinklo prijungti įrenginiai („WiFi“ ir „Ethernet“ ir kt.) Turės IP adresus nuo 192.168.0.Nuo 2 iki 192.168.0.254.

NFS serveris bus sukonfigūruotas leisti prieigą prie NFS serverio tik įrenginiams, turintiems tik pirmiau nurodytą IP adresą. Tai užtikrintų, kad tik įrenginiai, prisijungę prie mano LAN, pasieks mano failus, o išorinis pasaulis negalės jų pasiekti. Jei turite „open Wifi“ sąranką arba jei maršrutizatoriaus galinio taško sauga yra abejotina, tai negarantuotų jokio saugumo.

Nerekomenduočiau paleisti NFS per viešą internetą be papildomų saugumo priemonių.

Galiausiai komandos, vykdomos NFS serveryje, turi eilutę, serveris $, o komandos, kurias reikia vykdyti kliento pusėje, turi eilinį klientą $

„OpenZFS“ telkinio ir duomenų rinkinio kūrimas

1. „Zpool“ kūrimas

Jei jau turite „zpool“ ir veikia, praleiskite šį veiksmą. Mano NFS serveryje, kuriame veikia „Ubuntu 18“.04 LTS serveris, pirmiausia įdiegiau „OpenZFS“.

serveris $ sudo apt įdiekite zfsutils-linux

Toliau išvardysime visus galimus blokinius įrenginius, kad pamatytume naujus diskus (ir skaidinius), laukiančius, kol bus suformatuotas zfs.

$ lsblk
PAVADINIMAS MAJ: MIN RIM DYDIS RO TIPO KALNIS
kilpa0 7: 0 0 89.5M 1 kilpa / spragtelėjimas / šerdis / 6130
kilpa1 7: 1 0 86.9M 1 kilpa / spragtelėjimas / šerdis / 4917
kilpa2 7: 2 0 91.1M 1 kilpa / spragtelėjimas / šerdis / 6259
sda 8: 0 0 50G 0 diskas
├─sda1 8: 1 0 1M 0 dalis
└─sda2 8: 2 0 50G 0 dalis /
sdb 8:16 0 931G 0 diskas
SDK 8:32 0 931G 0 diskas
sr0 11: 0 1 1024M 0 rom

Tipiškas pavyzdys parodytas aukščiau, tačiau jūsų vardų suteikimo tvarka gali būti visiškai kitokia. Turėsite naudoti savo sprendimą ir būti labai atsargus. Nenorite netyčia formatuoti OS disko. Pvz., Sda1 skaidinyje aiškiai yra šakninių failų sistema kaip prijungimo taškas, todėl nėra protinga jo liesti. Jei naudojate naujus diskus, tikėtina, kad jie neturės tvirtinimo taško ar jokio skaidymo.

Kai žinosite savo įrenginių pavadinimus, naudosime komandą „zpool create“, kad porą šių blokinių įrenginių (vadinamų sdb ir sdc) suformatuotumėte į zpool su vienu „vdev“, kurį sudaro du veidrodiniai diskai.

serveris $ sudo zpool sukurti rezervuaro veidrodį sdb sdc
serverio $ sudo zpool būsenos talpykla
„zpool“ statuso bakas
baseinas: bakas
būsena: ONLINE
nuskaityti: niekas neprašomas
konfigūracija:
PAVADINIMO NARĖ SKAITYKITE RAŠYTI CKSUM
tankas ONLINE 0 0 0
veidrodis-0 ONLINE 0 0 0
sdb ONLINE 0 0 0
sdc ONLINE 0 0 0
klaidos: nežinomos duomenų klaidos

Eidami į priekį, galite pridėti diskus iš dviejų rinkinių (vadinamų „vdev“), kad padidintumėte šio „zpool“ dydį. Nauji diskai bus rodomi kaip veidrodis-1, veidrodis-2 ir kt. Jums nereikia kurti „zpool“ taip, kaip aš, galite naudoti veidrodinį veidrodį su daugiau diskų, galite naudoti juosteles be pertekliaus, bet geriau veikdami, arba galite naudoti RAIDZ. Daugiau apie tai galite sužinoti čia.

Dienos pabaigoje svarbu tai, kad mes sukūrėme „zpool“ pavadinimą tanku. Kuris gyvens bendras NFS. Sukurkime duomenų rinkinį, kuris bus bendrinamas. Pirmiausia įsitikinkite, kad baseinas, pavadintas „bakas“, yra sumontuotas. Numatytasis tvirtinimo taškas yra „/ tank“ .

serverio $ sudo zfs kalno talpykla
serveris $ sudo zfs sukurkite tank / nfsshare #create naują duomenų rinkinį baseino viršuje

Leidimų nustatymas

Dalijantis NFS katalogu, kliento sistemos supernaudotojas neturi prieigos prie nieko bendro. Nors kliento pusės vartotojas gali viską padaryti kliento mašinoje, NFS laikiklis techniškai nėra kliento mašinos dalis. Taigi leidus atlikti operacijas kliento pusėje esančio supernaudotojo vardu, priskirtą serverio pusiniam vartotojui, gali kilti saugumo problemų. Pagal numatytuosius nustatymus NFS kliento pusėje esančius supernaudotojo veiksmus priskiria niekam: nogroup vartotojui ir vartotojų grupei. Jei ketinate pasiekti prijungtus failus kaip root, tada duomenų rinkinys mūsų NFS serveryje taip pat turėtų turėti tas pačias teises,

serveris $ sudo chown niekas: nogroup / tank / nfsshare

NFS serveris vykdys visus kliento šaknies veiksmus kaip niekas kitas, todėl aukščiau nurodytas leidimas leis operacijoms atlikti.

Jei naudojate kitokį (įprastą) vartotojo vardą, dažnai patogu turėti vartotoją su tuo pačiu tiksliu vartotojo vardu iš abiejų pusių.

NFS dalies kūrimas

Kai sukursite „Zpool“, turėtumėte įdiegti „nfs“ serverio paketą iš savo paketų tvarkyklės:

serveris $ sudo apt įdiekite nfs-kernel-server

Tradiciškai NFS serveris naudoja / etc / export failą, kad gautų patvirtintų klientų sąrašą ir failus, prie kurių jie turės prieigą. Tačiau tam tikslui pasiekti naudosime integruotą ZFS funkciją.

Tiesiog naudokite komandą:

serveris $ sudo zfs nustatė sharenfs = ”on” / tank / nfsshare

Anksčiau užsiminiau, kad suteikiu prieigą tik tam tikriems IP. Tai galite padaryti taip:

serveris $ sudo zfs set sharenfs = "[apsaugotas el. paštu] / 24" tankas / nfsshare

„Rw“ reiškia skaitymo ir rašymo teises, o po to seka IP diapazonas. Įsitikinkite, kad ugniasienėje yra atidaryti prievado numeriai 111 ir 2049. Jei naudojate „ufw“, galite tai patikrinti atlikdami:

serverio $ ufw būsena

Pažymėkite savo serverio IP LAN, naudodami komandą ifconfig arba ip addr. Pavadinkime jį serveriu.ip

Kliento pusės montavimas

Sukūrę bendrinimą, galite jį prijungti savo kliento kompiuteryje, vykdydami komandą:

kliento $ mount -t nfs serveris.ip: / tankas / nfsshare / mnt

Tai prijungs NFS dalį / mnt aplanke, bet jūs taip pat lengvai galėtumėte pasirinkti bet kurį kitą jūsų pasirinktą prijungimo tašką.

Išvada

Failų bendrinimas yra bene svarbiausias sistemos administravimo aspektas. Tai pagerina jūsų supratimą apie saugyklos kaminą, tinklų kūrimą, vartotojo teises ir privilegijas. Greitai suprasite mažiausios privilegijos principo svarbą - tai reiškia, kad vartotojui suteikiama tik kuo platesnė prieiga, reikalinga jo darbui.

Taip pat sužinosite apie skirtingų operacinių sistemų sąveiką. „Windows“ vartotojai gali pasiekti NFS failus, taip pat ir „Mac“ bei BSD vartotojai. Negalite apsiriboti viena operacine sistema, kai dirbate su mašinų tinklu, turinčiu visas savo tradicijas ir kalbą. Taigi pirmyn ir eksperimentuokite su savo NFS dalimi. Tikiuosi, kad kažko išmokote.

Nemokami ir atvirojo kodo žaidimų varikliai, skirti kurti „Linux“ žaidimus
Šiame straipsnyje bus pateiktas nemokamų ir atvirojo kodo žaidimų variklių, kurie gali būti naudojami kuriant 2D ir 3D žaidimus „Linux“, sąrašas. Toki...
„Tomb Raider for Linux“ pamoka
„Tomb Raider“ šešėlis yra dvyliktas „Tomb Raider“ serijos priedas - veiksmo ir nuotykių žaidimų franšizė, sukurta „Eidos Montreal“. Žaidimą kritikai i...
Kaip padidinti FPS sistemoje „Linux“?
FPS reiškia Kadrai per sekundę. FPS užduotis yra išmatuoti kadrų greitį atkuriant vaizdo įrašus ar žaidimus. Paprastais žodžiais, nepertraukiamų viso ...