Bruke Etckeeper for versjonskontroll av /etc

Introduksjon

Den /etc/katalogen spiller en avgjørende rolle i måten en Linux-systemet fungerer. Grunnen til dette er fordi nesten hver systemkonfigurasjonsfil er plassert inne i /etc/. Dataene som er lagret i /etc/er ikke bare relatert til de innebygde systembibliotekene, men også for nyinstallert programvare og dens konfigurasjon. System- og programvareinstallasjoner, oppgraderinger og konfigurasjonsendringer er alle lagret i /etc/. Derfor er det en god praksis å bruke versjonskontroll når du klarer /etc/å unngå potensielle feil forårsaket av uforutsette eller utilsiktede feiloperasjoner.

Med Etckeeper kan du enkelt administrere /etc/med versjonskontrollmekanismen din ved å bruke et Git-, Mercurial-, Bazaar- eller Darcs-depot. Som standard bruker Etckeeper git for å vedlikeholde /etc/sin versjonskatalog med daglig granularitet for å minimere potensielt tap av data. I tillegg lar den deg foreta endringene manuelt når som helst.

I denne artikkelen, la oss se på hvordan du installerer Etckeeper på en CentOS 6-serverforekomst, samt hvordan du manuelt utfører en commit og angrer endringer.

Forutsetninger

Instruksjonene i denne artikkelen ble validert på en Vultr CentOS 6-forekomst med en LEMP-stack. Instruksjoner for andre distribusjoner kan være annerledes.

Merk: det er en god sikkerhetspraksis å få tilgang til systemet ditt som en ikke-rootbruker med sudo-rettigheter.

Trinn 1: Installer Etckeeper

Etckeeper er inkludert i EPEL Yum repo. Du må sette opp EPEL Yum repo før du kan installere Etckeeper:

sudo yum install epel-release
sudo yum update
sudo yum install etckeeper

En vellykket installasjon av Etckeeper vil automatisk installere git og andre avhengigheter.

Du kan tilpasse Etckeepers konfigurasjon ved å redigere konfigurasjonsfilen på /etc/etckeeper/etckeeper.conf. Standardkonfigurasjonen er imidlertid tilstrekkelig, og vi skal bruke den til formålet med denne opplæringen.

Trinn 2: Konfigurer /etc som git-arbeidsmappen til Etckeeper

Du kan få Etckeeper til å behandle /etc/som git-arbeidskatalogen ved å utføre følgende kommandoer:

cd /etc
sudo etckeeper init

"init"-underkommandoen ovenfor vil lage en fil med navn .gitignoreog en katalog med navn .giti /etc/.

Den .gitignoreinneholder en forhåndsdefinert liste over filer og krever ikke administrasjon med versjonskontroll. Om nødvendig kan du legge til eller slette filnavn i den som du ønsker, bare husk å sette ett filnavn per linje mellom linjen # begin section managed by etckeeper...og linjen # end section managed by etckeeper.

Den .gitkatalogen er stedet å oppbevare den versjonen repository av /etc/katalogen.

Trinn 3: Utfør den første forpliktelsen

Før den første forpliktelsen kan du ta en titt på hva som vil bli forpliktet:

sudo etckeeper vcs status | more

Den vcsunderkommando av Etckeeper starter en versjonskontroll programvare (som er git) for å utføre den følgende sub-kommando i /etc/katalogen. Så kommandoen ovenfor er lik:

sudo git -C /etc status | more

Trykk på for space barå bla. Hvis du finner filer som ikke skal versjonskontrolleres, legg dem til i .gitignorefilen.

Nå kan du legge inn alt innholdet i /etc-katalogen (unntatt de filene som er definert i .gitignore) til ditt git-lager. Husk å skrive noen meningsfulle kommentarer mellom to anførselstegn for gjennomgang.

sudo etckeeper commit "Initial config in /etc"

Her kan du komprimere git-katalogen for å spare diskplass:

sudo etckeeper vcs gc

Trinn 4: Utfør en ny forpliktelse etter å ha gjort endringer i /etc

Sammen med git kan Etckeeper registrere alle endringer som skjer i /etc/katalogen, for eksempel å legge til, endre eller slette filer, samt endringer i eierskap og/eller tillatelser for filer og kataloger. Alt under /etc/faller inn under dens versjonskontrollpolicy.

Vær oppmerksom på at å ha /etc/under versjonskontroll betyr ikke at du kan utføre noen operasjon på den. Alvorlige feiloperasjoner kan gjøre systemet ubrukelig før Etckeeper kan gjenopprette konfigurasjonen til en fungerende tilstand.

For testformål bør du bare gjøre sikre endringer i /etc/, for eksempel å legge til en ny fil, endre vertsnavnet i /etc/hosts, eller installere en ny programvare ved å bruke Yum.

For eksempel, legg til filen abcdei /etc/:

sudo touch /etc/abcde

Deretter legger du til linjen 192.168.0.2 desktopi /etc/hostsfilen:

echo '192.168.0.2 desktop' | sudo tee -a /etc/hosts

Til slutt kan du utføre "commit"-underkommandoen igjen:

sudo etckeeper commit "add a file /etc/abcde and add a line to /etc/hosts"

Trinn 5: Tilbakekall endringene dine

For det første kan du sjekke git-historikken for å få hver commits id og kommentar:

sudo etckeeper vcs log

For det andre kan du sjekke detaljene for enhver commit med de første bitene av commit-IDen. Her antar vi at den første commit-ID er 7f5bff, den andre commit-ID er 1aa658.

sudo etckeeper vcs show 1aa658

Du kan trykke for jå flytte ned, trykke for kå flytte opp, skrive inn for /keyword<Enter>å søke, trykke for qå avslutte.

For det tredje kan du også sammenligne forskjellene mellom to commits med følgende kommando. Vær oppmerksom på sekvensen av to commits, en naturlig sekvens er å sette den førstnevnte foran den siste.

sudo etckeeper vcs diff 7f5bff..1aa658

Nå finner du ut at du feilkonfigurerte vertsnavnet i /etc/hostsløpet av den første commit og den andre commit, men å legge til filen /etc/abcdeer en korrekt operasjon, du kan tilbakekalle endringen i bare /etc/hostsfilen med følgende kommando:

sudo etckeeper vcs checkout 7f5bff /etc/hosts

Hvis du vil tilbakekalle alle endringene mellom den første commit og den andre commit, kan du bruke følgende kommando:

sudo etckeeper vcs checkout 7f5bff

Selvfølgelig kan du fortsatt gå tilbake til den andre forpliktelsen:

sudo etckeeper vcs checkout 1aa658

Konklusjon

Etter å ha konfigurert Etckeeper riktig, kan du stille inn og vedlikeholde systemet ditt med mer selvtillit. Ikke desto mindre, vær oppmerksom på at versjonskontroll er forskjellig fra sikkerhetskopiering og /etc/katalogen er ikke det eneste stedet å være bekymret for. For å holde systemet i form, må du også sikkerhetskopiere systemet regelmessig i tillegg til versjonskontrollmekanismen.

Legg igjen en kommentar

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Kunstig intelligens er ikke i fremtiden, det er her akkurat i nåtiden I denne bloggen Les hvordan kunstig intelligens-applikasjoner har påvirket ulike sektorer.

DDOS-angrep: en kort oversikt

DDOS-angrep: en kort oversikt

Er du også et offer for DDOS-angrep og forvirret over forebyggingsmetodene? Les denne artikkelen for å løse spørsmålene dine.

Har du noen gang lurt på hvordan hackere tjener penger?

Har du noen gang lurt på hvordan hackere tjener penger?

Du har kanskje hørt at hackere tjener mye penger, men har du noen gang lurt på hvordan tjener de den slags penger? la oss diskutere.

Revolusjonerende oppfinnelser fra Google som vil gjøre livet ditt enkelt.

Revolusjonerende oppfinnelser fra Google som vil gjøre livet ditt enkelt.

Vil du se revolusjonerende oppfinnelser fra Google og hvordan disse oppfinnelsene forandret livet til alle mennesker i dag? Les deretter til bloggen for å se oppfinnelser fra Google.

Fredag ​​Essential: Hva skjedde med AI-drevne biler?

Fredag ​​Essential: Hva skjedde med AI-drevne biler?

Konseptet med selvkjørende biler som skal ut på veiene ved hjelp av kunstig intelligens er en drøm vi har hatt en stund nå. Men til tross for flere løfter, er de ingen steder å se. Les denne bloggen for å lære mer...

Teknologisk singularitet: en fjern fremtid for menneskelig sivilisasjon?

Teknologisk singularitet: en fjern fremtid for menneskelig sivilisasjon?

Ettersom vitenskapen utvikler seg raskt og tar over mye av innsatsen vår, øker også risikoen for å utsette oss for en uforklarlig singularitet. Les hva singularitet kan bety for oss.

Funksjonaliteter til Big Data Reference Architecture Layers

Funksjonaliteter til Big Data Reference Architecture Layers

Les bloggen for å kjenne ulike lag i Big Data Architecture og deres funksjoner på den enkleste måten.

Evolusjon av datalagring – infografikk

Evolusjon av datalagring – infografikk

Lagringsmetodene for dataene har vært i utvikling kan være siden fødselen av dataene. Denne bloggen dekker utviklingen av datalagring på grunnlag av en infografikk.

6 fantastiske fordeler ved å ha smarte hjemmeenheter i livene våre

6 fantastiske fordeler ved å ha smarte hjemmeenheter i livene våre

I denne digitaldrevne verden har smarthusenheter blitt en avgjørende del av livet. Her er noen fantastiske fordeler med smarthusenheter om hvordan de gjør livet vårt verdt å leve og enklere.

macOS Catalina 10.15.4 tilleggsoppdatering forårsaker flere problemer enn å løse

macOS Catalina 10.15.4 tilleggsoppdatering forårsaker flere problemer enn å løse

Nylig lanserte Apple macOS Catalina 10.15.4 en tilleggsoppdatering for å fikse problemer, men det ser ut til at oppdateringen forårsaker flere problemer som fører til muring av mac-maskiner. Les denne artikkelen for å lære mer