ZFS

Komme i gang med ZFS på Ubuntu

Komme i gang med ZFS på Ubuntu

Introduksjon

ZFS er et filsystem, opprinnelig levert med Solaris, men ble senere tilpasset i mange Unix- og Linux-operativsystemer. Den største fordelen med ZFS-filsystem er å støtte zettabyte data, og å være 128bit, og det brukes derfor ofte i store bedriftsservere og av datainnsamlere som offentlige etater. I motsetning til andre filsystemer, er ZFS motstandsdyktig mot dataråteproblemer på harddisker, da det bevarer dataintegriteten under lagring, og ingen partisjonering er nødvendig når du legger til flere harddisker til eksisterende RAID. ZFS er i utgangspunktet fremtiden til Unix-filsystemene på grunn av den enorme mengden fordeler. Det er imidlertid lite sannsynlig at det er mye nyttig for en gjennomsnittlig hjemmebruker når som helst snart, men serveradministratorer bør være klar over ZFS og fordelene. Så, denne artikkelen demonstrerer hvordan du enkelt kan bruke ZFS på Ubuntu-servere.

Hvordan installere ZFS

Installering av ZFS er like enkelt som alle andre pakker, men det må installeres med root-tilgang. For å få root-tilgang, bruk sudo su, som deretter ber om det administrative passordet. Når du skriver inn passordet, får brukeren root-tilgang. Når root-tilgang er oppnådd, bruker du installasjonskommandoen sammen med pakkenavnet - zfs for å installere zfs i systemet. Det vil ta litt tid å installere, men når den er fullført, vil den varsle.

     sudo su

     apt installere zfs

Hvordan konfigurere ZFS

Når ZFS er installert i systemet, må det opprettes et basseng (også kjent som Zpool). Et basseng består av en gruppe harddisker som kombineres, og inne i dette bassenget er det datasett der dataene faktisk lagres. I denne fasen opprettes et basseng og et datasett.

Skriv enten lsblk for å liste opp blokkenheter i systemet, eller ls -l / dev / sd * for å liste ut alle / dev-blokker. Uansett returnerer den en liste over blokkenheter oppdaget av Ubuntu. Denne opplæringen forutsetter at systemet har flere harddisker, som faktisk kombineres til et basseng.

Før du oppretter et basseng. En GUID-partisjonstabell må opprettes på hver harddisk. Partisjonstabell er et slags skjema som hjelper til med partisjonering av harddiskene. Zpool krever at harddiskene har det før du oppretter bassenget. Bruk følgende kommandoer for å lage partisjonstabellen i ekstra harddisker som er koblet til systemene. her er ekstra harddisker / dev / sdb og / dev / sdc

     parted / dev / sdb mklabel GPT q parted / dev / sdc mklabel GPT q 

Når partisjonstabellen er opprettet på hver harddisk, oppretter du nå zpoolen. Siden her bare to harddisker brukes, bruker speilgrupper, men hvis det er 3 eller flere harddisker, bruk raidz, og bruk 4 raidz2-kommandoer for 4 eller flere. Speiling er også kjent som RAID 1, som sømløst kopierer data fra en stasjon til en annen som er ganske nyttig for å øke dataredundansen.

     zpool lage vol0 speil / dev / sdb / dev / sdc

På dette punktet er det allerede opprettet et basseng, og lag nå datasettet der dataene, som inkluderer filer, kataloger, butikker, faktisk er.

Et datasettopprettelsesformat går som dette ..

     zfs opprette / < directory name>

Bruk dette formatet og lag et par kataloger som vist i skjermbildet nedenfor.

     zfs oppretter vol0 / dondilanga_files

     zfs oppretter vol0 / dondilanga_images

     zfs oppretter vol0 / dondilanga_music

     zfs oppretter vol0 / dondilanga_movies

     zfs oppretter vol0 / dondilanga_games

Å lage datasettet er ikke nok for å ha en fungerende filstruktur, det trenger også de riktige tillatelsene (se Linux-filtillatelser) for å bli satt. Tillatelsesinnstillingen er ganske enkel da den følger standardformat for tillatelsessett.

     chown -R brukernavn: groupName / poolname / dataset

     chown -R dondilanga: brukere / vol0 / dondilanga_files

Hvordan overvåke ZFS

Overvåking inkluderer vanligvis inspisere bassengstatus, IO-statistikk, liste ut tilgjengelige bassenger, liste ut spesielle detaljer om bassenget, vis bassengstatusen med detaljert modus, liste ut ZFS-filsystemer osv. Denne informasjonen gir verdifull innsikt i bassengene, datasettene, og er ganske nyttige for å ta beslutninger angående ZFS-filsystemer.

Kontrollerer helsetilstanden til bassenget

     zpool-status

Kontrollere Input / Output (IO) -statistikken for bassengene

     zpool iostat

Liste ut tilgjengelige bassenger

     zpool-listen

Oppgi spesielle detaljer om bassenget

     zpool-liste -o navn, størrelse, kapasitet

Se liste over filsystemene (datasettet) I bassenget.

     zfs liste

Se statistikken over bassenget i hvert 15. sekund.

     zpool iostat -v 15

Slik administrerer, justerer og vedlikeholder du ZFS

Dette segmentet dekker de forskjellige typene av bassengene, hvordan du lager dem, lager blokkeringsenheter i bassenget, ødelegger eller fjerner bassenger (fjerning er nyttig når et basseng blir opprettet på en USB-harddisk eller lignende flyttbar lagring), sett forskjellige egenskaper til bassenger, montering og demontering.

Ulike typer bassenger

Det er fire hovedbassengtyper, og hver har sitt eget formål med å lage dem. Vanligvis blir RAID-typen her tatt med på kontoen når du oppretter et basseng. Som beskrevet tidligere må typen oppgis når du lager bassenget sammen med den. Denne opplæringen bruker speilbassintypen, og bortsett fra at det er raidz for RAID5, raidz2 for RAID5 med duellparitet, og når ingen redundans er involvert, er ingen bassengtype oppgitt.

Stripe- eller ikke-redundansgrupper kan ha så mye som harddisker, for eksempel ... som i følgende kommando. Hver sd * representerer en ny virtuell / fysisk harddisk, og de kan alle klumpes sammen med et enkelt basseng med følgende kommando under vol1-navnet.

     zpool opprette vol1 / dev / sdb / dev / sdc / dev / sdd

Som det fremgår av skjermbildet nedenfor, er nå alle de nevnte harddiskene en del av bassenget vol1, som kan utvides for å se komponentene med zpool iostat kommando.

I motsetning til eksemplet ovenfor er harddiskene gruppert som par i speilgruppen.

     zpool lage vol1 speil / dev / sda / dev / sdb speil / dev / sdc / dev / sdd

Å lage blokkeringsenhet i et basseng

Blokkeringsenheter er datasett opprettet i bassenget, og har en forhåndsdefinert størrelse fra begynnelsen, for eksempel hvis en blokkenhet er opprettet med størrelsen 1 GB, da veier den spesielle blokkenheten 1 GB. I det følgende eksemplet viser det hvordan du lager en blokkeringsenhet i et eksisterende basseng.

     zfs opprette -V /

     zfs create -V 1GB vol0 / dondilanga_new1

Ødelegge et basseng

Utvilsomt å vite om å ødelegge et basseng er viktig så mye som å lage et, men dette må gjøres ekstremt nøye, da det ikke er noen måte å ta det tilbake når det er borte, ettersom slettingen er permanent med mindre data er sikkerhetskopiert andre steder.

     zpool ødelegge bassengnavn

     zpool ødelegge vol0

Etter at bassenget er slettet, er det mulig å prøve å liste opp tilgjengelig basseng med listeparameter i zpool-kommandoen. Hvis det returnerer "ingen tilgjengelige bassenger", betyr det at slettingen var vellykket.

Fjerne / gjenopprette et basseng

Hva dette betyr midlertidig fjerne bassenget ut av systemet, og montere det tilbake når det er nødvendig. Dette er ganske nyttig når et basseng er opprettet på en USB-harddisk / stasjon eller annen bærbar enhet. Nettadministratorer kan opprette et basseng på den bærbare harddisken, kopiere systemdata til den, demontere og ta den med hjem for bruk. Følgende kommandoer viser hvordan du fjerner et basseng og monterer det tilbake.

     zpool eksport bassengnavn

     zpool eksport vol0

     zpool importere bassengnavn

     zpool import vol0

Legger til en ny harddisk i bassenget

Siden det er mange bassengtyper, kan harddiskene legges til bassenget på forskjellige måter. Den vanlige metoden for å legge til en harddisk er som en ekstra. Hva det betyr når en av harddiskene ikke fungerer, brukes den ekstra harddisken til å erstatte den ødelagte. En ekstra harddisk legges til som følger.

Dette viser de tilgjengelige harddiskene. Som vist i følgende skjermbilde. Harddisken sdd er for øyeblikket tilgjengelig for operativsystemet; derfor brukes den her.

     ls -l / dev / sd *

Som vanlig blir den først formatert før den legges til i bassenget. Følgende kommandoer formaterer harddisken med GUID-partisjonsskjema.

     skillt / dev / sdd

     mklabel GPT

     q

Når den er formatert, legg til i bassenget med følgende kommando.

     zpool legg til vol0 reserve / dev / sdd

Skriv deretter inn zpool status -v for å liste ut alle tilgjengelige harddisker i zpools. Som det fremgår av skjermbildet nedenfor, er reservestasjonene merket som "reservedeler", og brukes bare når hovedstasjonene mislykkes.

Hvordan lage øyeblikksbilder på ZFS?

Øyeblikksbilde er en nøyaktig kopi av en bestemt zpool, og er opprettet med zfs-kommando som vist i følgende skjermbilde. Opprettingsprosess for øyeblikksbilde er en tur i parken, selv om noen opplæringer der ute gjør det komplisert enn nødvendig. Formatet til kommandoen for å lage øyeblikksbilde er.

     zfs snapshot [e-postbeskyttet]

     zfs snapshot [e-postbeskyttet] _snapshot

Gjenopprett et øyeblikksbilde

Å gjenopprette et øyeblikksbilde tilbake til bassenget er enkelt som å sikkerhetskopiere det. Alt du trenger å gjøre er å oppgi navnet sammen med bassengnavnet. Vær oppmerksom på at gjenoppretting av et øyeblikksbilde tilbake til bassenget vil overskrive de eksisterende dataene i bassenget; derfor må det gjøres klokt.

     zfs tilbakeføring [e-postbeskyttet]

     zfs tilbakestilling [e-postbeskyttet] _snapshot

Slett et øyeblikksbilde

Opprette, gjenopprette og slette øyeblikksbilder, alle disse går i parken med ZFS. Følgende kommando sletter bare øyeblikksbildet ut av systemet; og frigjør følgelig mer plass til det.

     zfs ødelegge [e-postbeskyttet]

     zfs ødelegge [e-postbeskyttet] _snapshot

HD Remastered Games for Linux som aldri hadde en Linux-utgave tidligere
Mange spillutviklere og utgivere kommer med HD-remaster av gamle spill for å forlenge franchisetiden, vennligst fans som ber om kompatibilitet med mod...
Hvordan bruke AutoKey til å automatisere Linux-spill
AutoKey er et desktopautomatiseringsverktøy for Linux og X11, programmert i Python 3, GTK og Qt. Ved å bruke skript og MACRO-funksjonalitet kan du aut...
Hvordan vise FPS-teller i Linux-spill
Linux-spill fikk et stort press da Valve kunngjorde Linux-støtte for Steam-klient og spillene deres i 2012. Siden den gang har mange AAA- og indiespil...