ZFS

OpenZFS-i toetatud NFS-server 1. osa - Serveri loomine

OpenZFS-i toetatud NFS-server 1. osa - Serveri loomine
Kui olete OpenZFS-iga tuttav, teate kõike selle rikkaliku liidese, paindliku arhitektuuri, usaldusväärsete kontrollsummade ja COW-mehhanismide kohta. Võib-olla soovite seda ka oma töölauale, kuid te ei soovi olemasolevaid kettaid ja partitsioone ümber vormindada. Võib-olla kasutate Windows 10, mis ei toeta veel OpenZFS-i. Selles blogipostituses arutlen, kuidas saate luua eraldi serveris töötava võrgufailisüsteemi või NFS-i. Seejärel saab selle NFS-seadme oma töölauale paigaldada. Nii saate ZFS-i usaldusväärsuse ja töökindluse oma lemmiklaua OS-i kasutajasõbralikkuse abil, kuna NFS on saadaval kõikidel platvormidel.

NFS-i ühenduspunkti loomise üksikasjalikult kirjeldan selle seeria 2. osas Windows 10 kliendil. Nüüd keskendume NFS-i salvestusruumi pakkuvale Ubuntu serverile ja sellega ühenduse loomiseks proovivale Ubuntu kliendile.

Seadistamine

Minu NFS-server põhineb Ubuntu 18-l.04 LTS. Võite kasutada oma lemmik Linuxi distro või FreeBSD või mõnda muud OS-i, mis toetab OpenZFS-i. Minu põhjus Ubuntu 18 kasutamiseks.04 on see, et see on üsna populaarne ja vähendaks oluliselt turule sisenemise barjääri.

NFS peaks olema saadaval ainult minu LAN-is, mille alamvõrgu mask on 255.255.255.0 ja 192.168.0.1 vaikelüüsina. Tavalises inglise keeles tähendab see, et kõigil minu koduvõrku ühendatud seadmetel (WiFi ja Ethernet jt) on IP-aadressid vahemikus 192.168.0.2 kuni 192.168.0.254.

NFS-server konfigureeritakse lubama NFS-serverile juurdepääsu ainult seadmetel, millel on ainult ülalmainitud IP-aadress. See tagaks, et ainult minu LAN-iga ühendatud seadmed pääsevad minu failidele juurde ja välismaailm ei pääse sellele juurde. Kui teil on avatud Wifi seadistus või kui ruuteri lõpp-punkti turvalisus on kahtlane, ei tagaks see mingit turvalisust.

Ma ei soovitaks NFS-i käivitada avaliku Interneti kaudu ilma täiendavate turvameetmeteta.

Lõpuks on NFS-serveris käivitatavatel käskudel viip, server $ ja kliendipoolel käivitatavatel käskudel on viip-klient $

OpenZFS-i kogumi ja andmekogumi loomine

1. Zpooli loomine

Kui teil on zpool juba töökorras, jätke see samm vahele. Minu NFS-serveris, kus töötab Ubuntu 18.04 LTS-server, installisin kõigepealt OpenZFS-i.

server $ sudo apt install zfsutils-linux

Järgmisena loetleme kõik saadaolevad plokkseadmed, et näha uusi kettaid (ja partitsioone), mis ootavad vormindamist zf-idega.

$ lsblk
NIMI MAJ: MINI RM-SUURUS RO-TÜÜBI MOUNTPOINT
silmus0 7: 0 0 89.5M 1 silmus / klõps / südamik / 6130
silmus1 7: 1 0 86.9M 1 silmus / klõps / südamik / 4917
silmus2 7: 2 0 91.1M 1 silmus / klõps / südamik / 6259
sda 8: 0 0 50G 0 ketas
├─sda1 8: 1 0 1M 0 osa
└─sda2 8: 2 0 50G 0 osa /
sdb 8:16 0 931G 0 ketas
sdc 8:32 0 931G 0 ketas
sr0 11: 0 1 1024M 0 rom

Tüüpiline näide on toodud eespool, kuid teie nimetamiskord võib olla tohutult erinev. Peate kasutama oma otsust ja olge selle suhtes väga ettevaatlik. Te ei soovi oma OS-ketast kogemata vormindada. Näiteks partitsiooni sda1 ühenduspunktiks on selgelt juurfailisüsteem, nii et pole mõistlik seda puudutada. Kui kasutate uusi kettaid, on tõenäoline, et neil pole ühenduspunkti ega mingit partitsiooni.

Kui teate oma seadmete nime, vormindame käsuga zpool create käsu, et vormistada paar neist plokiseadmetest (nimega sdb ja sdc) zpooliks ühe vdev-iga, mis koosneb kahest peegeldatud kettast.

server $ sudo zpool loo paagi peegel sdb sdc
server $ sudo zpool olekupaak
zpooli staatusepaak
bassein: paak
riik: ONLINE
skaneerimine: pole ühtegi taotletud
config:
NIMI RIIK LOE KIRJUTA CKSUM
tank ONLINE 0 0 0
peegel-0 ONLINE 0 0 0
sdb ONLINE 0 0 0
sdc ONLINE 0 0 0
vead: teadaolevaid andmevigu pole

Edasi liikudes saate selle zpooli suuruse suurendamiseks kettaid lisada kahekesi (nn vdev), uued kettad kuvatakse peegel-1, peegel-2 jne. Te ei pea oma zpooli looma nii, nagu mina tegin, võite kasutada peegeldamist rohkemate ketastega, võite kasutada ribasid ilma koondamiseta, kuid parema jõudluseta või võite kasutada RAIDZ-i. Selle kohta saate lisateavet siit.

Päeva lõpuks on oluline see, et oleme loonud zpooli nimega tank. Mille peale jagatud NFS elab. Loome andmekogumi, mida jagatakse. Kõigepealt veenduge, et bassein, nimega „paak“, oleks paigaldatud. Vaikimisi kinnituspunkt on '/ tank' .

server $ sudo zfs mount paak
server $ sudo zfs create tank / nfsshare #create basseini peal uus andmekogum

Lubade määramine

NFS-kataloogi jagamisel pole kliendisüsteemi superkasutajal juurdepääsu ühele jagamisele. Kui kliendipoolne superkasutaja on võimeline kliendimasinal kõike tegema, ei kuulu NFS-i kinnitus tehniliselt kliendimasina osaks. Nii et serveripoolse superkasutajana kaardistatud kliendipoolse superkasutaja nimel toimingute lubamine võib põhjustada turbeprobleeme. Vaikimisi kaardistab NFS kliendipoolsed superkasutaja toimingud kellelegi: nogrupi kasutaja ja kasutajagrupp. Kui kavatsete juurutatud failidele juurde pääseda, peaksid ka meie NFS-serveri andmekogumil olema samad õigused,

server $ sudo chown nobody: nogroup / tank / nfsshare

NFS-server käivitab kliendipoolse juurte kõik toimingud kasutajana, seega ülaltoodud luba võimaldab toimingutel läbi minna.

Kui kasutate erinevat (tavalist) kasutajanime, on sageli mugav omada mõlemal küljel sama täpse kasutajanimega kasutajat.

NFS-i aktsia loomine

Kui olete Zpooli loonud, peaksite oma paketihaldurist installima serveripaketi nfs:

server $ sudo apt install nfs-kernel-server

Traditsiooniliselt kasutab NFS-i server faili / etc / export, et saada kinnitatud klientide loend ja failid, millele neil on juurdepääs. Kuid selle saavutamiseks kasutame ZFS-i sisseehitatud funktsiooni.

Kasutage lihtsalt käsku:

server $ sudo zfs seadistas sharenfs = ”sisse” / tank / nfsshare

Varem viitasin sellele, et lubasin juurdepääsu ainult teatud IP-dele. Seda saate teha järgmiselt

server $ sudo zfs set sharenfs = "[meiliga kaitstud] / 24" tank / nfsshare

Rw tähistab kirjutamis- ja lugemisõigusi ning sellele järgneb IP-de vahemik. Veenduge, et pordinumbrid 111 ja 2049 on teie tulemüüril avatud. Kui kasutate ufw, saate seda kontrollida käivitades:

serveri $ ufw olek

Märkige oma serveri IP kohtvõrku, kasutades käsku ifconfig või ip addr. Nimetagem seda serveriks.ip

Kliendipoolne paigaldamine

Kui jagamine on loodud, saate selle installida oma kliendimasinasse, käivitades käsu:

klient $ mount -t nfs server.ip: / tank / nfsshare / mnt

See ühendab NFS-i jagamise kaustas / mnt, kuid sama hõlpsalt oleksite võinud valida mis tahes muu valitud ühenduspunkti.

Järeldus

Failide jagamine on tõenäoliselt süsteemi haldamise kõige olulisem aspekt. See parandab teie arusaamist salvestusivirnast, võrguühendusest, kasutajaõigustest ja privileegidest. Mõistate kiiresti vähima privileegi põhimõtte olulisust - see tähendab, et andke kasutajale ainult võimalikult piiratud juurdepääs oma tööle.

Samuti saate teada erinevate operatsioonisüsteemide koostalitlusvõime kohta. Windowsi kasutajad saavad juurdepääsu NFS-failidele, nii saavad seda teha ka Maci ja BSD kasutajad. Te ei saa piirduda ühe operatsioonisüsteemiga, kui tegelete masinate võrguga, millel kõigil on oma tavad ja rahvakeel. Nii et jätkake ja katsetage oma NFS-i aktsiat. Loodan, et õppisite midagi.

Parimad Linuxi mängupuldi kaardistamise rakendused
Kui teile meeldib mängida Linuxis mänge tavalise klaviatuuri ja hiire sisestussüsteemi asemel mängupuldiga, on teie jaoks mõned kasulikud rakendused. ...
Kasulikud tööriistad Linuxi mängijatele
Kui teile meeldib Linuxis mänge mängida, on tõenäoline, et olete mängukogemuse parandamiseks kasutanud selliseid rakendusi ja utiliite nagu Wine, Lutr...
HD Remastered Games Linuxile, millel pole kunagi varem Linuxi väljalaset olnud
Paljud mängude arendajad ja kirjastajad pakuvad frantsiisi eluea pikendamiseks välja vanade mängude HD-remasteri. Palun fännid, kes soovivad ühilduvus...