ZFS

OpenZFS atbalstīja NFS serveri 1. daļa - Servera izveide

OpenZFS atbalstīja NFS serveri 1. daļa - Servera izveide
Ja esat pazīstams ar OpenZFS, jūs zināt visu par tā bagātīgo saskarni, elastīgo arhitektūru, uzticamām kontrolsummām un COW mehānismiem. Varbūt jūs vēlaties to arī savā darbvirsmā, taču nevēlaties pārformatēt esošos diskus un nodalījumus. Varbūt jūs vēl izmantojat Windows 10, kas neatbalsta OpenZFS. Šajā emuāra ziņā es apspriedīšu, kā jūs varat izveidot tīkla failu sistēmu vai NFS, kas darbojas atsevišķā serverī. Pēc tam šo NFS ierīci var uzstādīt darbvirsmas darbstacijā. Tādā veidā jūs varat iegūt ZFS uzticamību un izturību ar iecienītās darbvirsmas OS lietotājdraudzīgumu, jo NFS ir pieejams visās platformās.

Šīs sērijas 2. daļā es detalizēti aprakstīšu NFS pievienošanas punkta izveidi Windows 10 klientam. Tagad pievērsīsimies Ubuntu serverim, kas piedāvā NFS krātuvi, un Ubuntu klientam, kurš mēģina ar to izveidot savienojumu.

Iestatīšana

Mana NFS servera pamatā būs Ubuntu 18.04 LTS. Jūs varat izmantot savu iecienīto Linux distributoru vai FreeBSD, vai jebkuru citu OS, kas atbalsta OpenZFS. Mans iemesls Ubuntu 18 izmantošanai.04 ir tas, ka tas ir diezgan populārs un ievērojami samazinātu iekļūšanas barjeru.

Domājams, ka NFS ir pieejama tikai manā LAN, kura apakštīkla maska ​​ir 255.255.255.0 un 192.168. lpp.0.1 kā noklusējuma vārteja. Vienkāršā angļu valodā tas nozīmē, ka visām ierīcēm, kas pievienotas manam mājas tīklam (WiFi un Ethernet uc), IP adreses būs no 192.168. lpp.0.2 līdz 192.168. lpp.0.254.

NFS serveris tiks konfigurēts tā, lai piekļuve NFS serverim būtu atļauta tikai ierīcēm ar tikai iepriekš minēto IP adresi. Tas nodrošinātu, ka tikai ierīces, kas ir izveidojušas savienojumu ar manu LAN, piekļūst maniem failiem un ārējā pasaule nevar piekļūt tiem. Ja jums ir iestatīts “atvērts Wifi” iestatījums vai ja jūsu maršrutētāja gala drošība ir apšaubāma, tas negarantētu nekādu drošību.

Es neieteiktu palaist NFS pa publisko internetu bez papildu drošības pasākumiem.

Visbeidzot, komandām, kas tiek izpildītas NFS serverī, ir uzvedne, serveris $ un komandām, kas jāizpilda klienta pusē, ir uzvednes klients $

OpenZFS pūla un datu kopas izveide

1. Zpool izveidošana

Ja jums jau ir izveidots un darbojas zpool, izlaidiet šo soli. Manā NFS serverī, kurā darbojas Ubuntu 18.04 LTS serveris, es vispirms instalēju OpenZFS.

serveris $ sudo apt instalējiet zfsutils-linux

Tālāk mēs uzskaitīsim visas pieejamās bloķēšanas ierīces, lai redzētu jaunos diskus (un nodalījumus), kuri gaida formatēšanu ar zfs.

$ lsblk
NOSAUKUMS MAJ: MIN RM RIZE RO TYPE MOUNTPOINT
cilpa0 7: 0 0 89.5M 1 cilpa / snap / core / 6130
cilpa1 7: 1 0 86.9M 1 cilpa / snap / core / 4917
cilpa2 7: 2 0 91.1M 1 cilpa / snap / core / 6259
sda 8: 0 0 50G 0 disks
├─sda1 8: 1 0 1M 0 daļa
└─sda2 8: 2 0 50G 0 daļa /
sdb 8:16 0 931G 0 disks
SDK 8:32 0 931G 0 disks
sr0 11: 0 1 1024M 0 rom

Tipisks piemērs ir parādīts iepriekš, taču jūsu vārdu piešķiršanas kārtība var būt ļoti atšķirīga. Jums būs jāizmanto savs spriedums, un esiet ar to ļoti piesardzīgs. Jūs nevēlaties nejauši formatēt OS disku. Piemēram, sda1 nodalījumam nepārprotami ir sakņu failu sistēma kā stiprinājuma punkts, tāpēc nav saprātīgi to pieskarties. Ja izmantojat jaunus diskus, iespējams, ka tiem nebūs pievienošanas punkta vai jebkāda veida nodalījuma.

Kad zināt savu ierīču nosaukumus, mēs izmantosim komandu zpool create, lai formatētu pāris no šīm bloku ierīcēm (sauktas par sdb un sdc) zpool ar vienu vdev, kas sastāv no diviem spoguļdiska.

serveris $ sudo zpool izveido tvertnes spoguli sdb sdc
servera $ sudo zpool statusa tvertne
zpool statusa tvertne
baseins: tvertne
stāvoklis: TIEŠSAISTĒ
skenēšana: neviens nav pieprasīts
config:
NOSAUKUMS VALSTS LASIET RAKSTIET CKSUM
tvertne ONLINE 0 0 0
spogulis-ONLINE ONLINE 0 0 0
sdb ONLINE 0 0 0
sdc ONLINE 0 0 0
kļūdas: nav zināmu datu kļūdu

Pārejot uz priekšu, jūs varat pievienot diskus divos komplektos (ko sauc par vdev), lai palielinātu šīs zpool lielumu, jaunie diski parādīsies kā mirror-1, mirror-2 utt. Jums nav jāizveido savs zpool, kā es to darīju, jūs varat izmantot spoguļošanu ar vairākiem diskiem, jūs varat izmantot svītras bez liekas, bet labākas veiktspējas vai arī varat izmantot RAIDZ. Jūs varat uzzināt vairāk par to šeit.

Dienas beigās svarīgi ir tas, ka mēs esam izveidojuši zpool ar nosaukumu tank. Pēc kura dzīvos kopīgais NFS. Izveidosim koplietojamu datu kopu. Vispirms pārliecinieties, vai ir uzstādīts baseins ar nosaukumu “tvertne”. Noklusējuma stiprinājuma punkts ir “/ tvertne” .

servera $ sudo zfs stiprinājuma tvertne
serveris $ sudo zfs izveido tvertni / nfsshare # izveidojiet jaunu datu kopu baseina augšpusē

Atļauju iestatīšana

Koplietojot NFS direktoriju, klienta sistēmas superlietotājam nav piekļuves neko kopīgotajam. Kaut arī klienta puses superlietotājs spēj kaut ko darīt klienta mašīnā, NFS stiprinājums tehniski nav klienta mašīnas sastāvdaļa. Tātad, atļaujot veikt operācijas klienta puses superlietotāja vārdā, kas kartēts kā servera puses superlietotājs, varētu rasties drošības problēmas. Pēc noklusējuma NFS klienta puses superlietotāja darbības kartē nevienam: nogroup lietotājam un lietotāju grupai. Ja plānojat piekļūt pievienotajiem failiem kā root, tad arī mūsu NFS servera datu kopai vajadzētu būt ar tādām pašām atļaujām,

serveris $ sudo chown nobody: nogroup / tank / nfsshare

NFS serveris veiks visas klienta puses saknes darbības kā neviens lietotājs, tāpēc iepriekš minētā atļauja ļaus operācijām iziet.

Ja izmantojat citu (parasto) lietotājvārdu, bieži vien ir ērti, ja abās pusēs ir lietotājs ar tādu pašu precīzu lietotājvārdu.

NFS daļas izveide

Kad esat izveidojis Zpool, no pakotņu pārvaldnieka jāinstalē serveris nfs:

serveris $ sudo apt instalējiet nfs-kernel-server

Tradicionāli NFS serveris izmanto / etc / export failu, lai iegūtu apstiprinātu klientu sarakstu un failus, kuriem viņiem būs piekļuve. Tomēr, lai to panāktu, mēs izmantosim ZFS iebūvēto funkciju.

Vienkārši izmantojiet komandu:

serveris $ sudo zfs iestatīja sharenfs = ”on” / tank / nfsshare

Iepriekš es atsaucos uz piekļuves piešķiršanu tikai noteiktiem IP. To var izdarīt šādi:

serveris $ sudo zfs set sharenfs = "[aizsargāts ar e-pastu] / 24" tvertne / nfsshare

Rw nozīmē lasīšanas un rakstīšanas atļaujas, un tam seko IP diapazons. Pārliecinieties, vai uz ugunsmūra ir atvērti porta numuri 111 un 2049. Ja izmantojat ufw, to varat pārbaudīt, palaižot:

servera $ ufw statuss

Pierakstiet sava servera IP uz LAN, izmantojot komandu ifconfig vai ip addr. Sauksim to par serveri.ip

Klienta pusē montāža

Kad koplietošana ir izveidota, varat to pievienot klienta mašīnā, izpildot komandu:

klienta $ mount -t nfs serveris.ip: / tvertne / nfsshare / mnt

Tādējādi NFS daļa tiks uzstādīta mapē / mnt, taču jūs tikpat viegli varētu izvēlēties jebkuru citu pievienošanas punktu pēc savas izvēles.

Secinājums

Failu koplietošana, iespējams, ir vissvarīgākais sistēmas administrēšanas aspekts. Tas uzlabo izpratni par krātuves kaudzi, tīklu veidošanu, lietotāju atļaujām un privilēģijām. Jūs ātri sapratīsit, cik svarīgs ir vismazākās privilēģijas princips - proti, piešķiriet lietotājam tikai pēc iespējas pēc iespējas vairāk piekļuves savam darbam.

Jūs arī uzzināsiet par dažādu operētājsistēmu savietojamību. Windows lietotāji var piekļūt NFS failiem, tāpat kā Mac un BSD lietotāji. Jūs nevarat aprobežoties tikai ar vienu operētājsistēmu, strādājot ar mašīnu tīklu, kuriem visiem ir savas konvencijas un tautas valoda. Tāpēc turpiniet un eksperimentējiet ar savu NFS daļu. Es ceru, ka jūs kaut ko iemācījāties.

Kā izmantot AutoKey, lai automatizētu Linux spēles
AutoKey ir darbvirsmas automatizācijas lietderība operētājsistēmām Linux un X11, kas ieprogrammēta Python 3, GTK un Qt. Izmantojot skriptu un MACRO fu...
Kā parādīt FPS skaitītāju Linux spēlēs
Linux spēles ieguva lielu impulsu, kad Valve 2012. gadā paziņoja par Linux atbalstu Steam klientam un viņu spēlēm. Kopš tā laika daudzas AAA un indie ...
Kā lejupielādēt un atskaņot Sid Meier Civilization VI operētājsistēmā Linux
Ievads spēlē Civilization 6 ir mūsdienīga klasiskā koncepcija, kas ieviesta Age of Empires spēļu sērijā. Ideja bija diezgan vienkārša; jūs sāktu pašā ...