Bevezetés
Előfeltételek
1. lépés: Telepítse az Etckeepert
2. lépés: Állítsa be a /etc fájlt az Etckeeper git munkakönyvtárának
3. lépés: Hajtsa végre a kezdeti véglegesítést
4. lépés: Hajtson végre egy újabb véglegesítést az /etc módosítása után
5. lépés: A módosítások visszavonása
Következtetés
Bevezetés
A /etc/könyvtár kritikus szerepet játszik a Linux rendszer működésében. Ennek az az oka, hogy szinte minden rendszerkonfigurációs fájl benne található /etc/. A benne tárolt adatok /etc/nem csak a beépített rendszerkönyvtárakra vonatkoznak, hanem az újonnan telepített szoftverekre és azok konfigurációjára is. A rendszer- és szoftvertelepítéseket, -frissítéseket és konfigurációs módosításokat a rendszer tárolja /etc/. Ezért jó gyakorlat-e a /etc/verzióvezérlés alkalmazása az előre nem látható vagy véletlen működési zavarok által okozott lehetséges hibák elkerülése érdekében.
Az Etckeeper segítségével egyszerűen kezelheti /etc/a verziókezelési mechanizmust Git, Mercurial, Bazaar vagy Darcs tárak használatával. Alapértelmezés szerint az Etckeeper a git használatával tartja karban a /etc/verziótárat napi részletességgel, hogy minimalizálja az esetleges adatvesztést. Ezenkívül lehetővé teszi a módosítások manuális végrehajtását bármikor.
Ebben a cikkben nézzük meg, hogyan telepíthető az Etckeeper egy CentOS 6 kiszolgálópéldányra, valamint hogyan hajtható végre manuálisan a véglegesítés és a módosítások visszavonása.
Előfeltételek
A cikkben található utasításokat egy LEMP-verem Vultr CentOS 6-példányon érvényesítették. A többi disztribúcióra vonatkozó utasítások eltérőek lehetnek.
Megjegyzés: bevált biztonsági gyakorlat, ha nem root felhasználóként éri el a rendszert sudo jogosultságokkal.
1. lépés: Telepítse az Etckeepert
Az Etckeeper benne van az EPEL Yum repoban. Az Etckeeper telepítése előtt be kell állítania az EPEL Yum repót:
sudo yum install epel-release
sudo yum update
sudo yum install etckeeper
Az Etckeeper sikeres telepítése automatikusan telepíti a git-et és más függőségeket.
Az Etckeeper konfigurációját testreszabhatja a címen található konfigurációs fájl szerkesztésével /etc/etckeeper/etckeeper.conf. Az alapértelmezett konfiguráció azonban megfelelő, és ezt fogjuk használni ennek az oktatóanyagnak a céljaira.
A /etc/következő parancsok végrehajtásával az Etckeepert git munkakönyvtárként kezelheti :
cd /etc
sudo etckeeper init
Az „init” részparancsok fent hozz létre egy filet .gitignoreés nevű könyvtárba .gita /etc/.
A .gitignorefájlok előre meghatározott listáját tartalmazza, és nem igényel verzióvezérléssel történő kezelést. Ha szükséges, tetszés szerint hozzáadhat vagy törölhet benne fájlneveket, csak ne felejtsen el soronként egy fájlnevet tenni a sor # begin section managed by etckeeper...és a sor közé # end section managed by etckeeper.
A .gitkönyvtár a /etc/könyvtár verziótárának tárolási helye .
A kezdeti kötelezettségvállalás előtt megtekintheti, hogy mi kerül végrehajtásra:
sudo etckeeper vcs status | more
Az vcsEtckeeper alparancsa meghívja a verzióvezérlő szoftvert (ami a git), hogy végrehajtsa a következő alparancsot a /etc/könyvtárban. Tehát a fenti parancs egyenlő:
sudo git -C /etc status | more
Lapozáshoz nyomja meg a gombot space bar. Ha olyan fájlokat talál, amelyeket nem szabad verzióvezérelni, adja hozzá őket a .gitignorefájlhoz.
Mostantól az /etc könyvtár összes tartalmát (kivéve a -ban definiált fájlokat .gitignore) véglegesítheti a git tárolójában. Ne felejtsen el írni néhány értelmes megjegyzést két idézőjel közé az áttekintéshez.
sudo etckeeper commit "Initial config in /etc"
Itt tömörítheti a git könyvtárat, hogy lemezterületet takarítson meg:
sudo etckeeper vcs gc
A git-tel párosulva az Etckeeper minden olyan változást rögzíthet, amely a /etc/könyvtárban történik, például fájlok hozzáadását, módosítását vagy törlését, valamint a fájlok és könyvtárak tulajdonjogának és/vagy engedélyeinek változásait. Minden, ami alá /etc/tartozik, a verziókezelési szabályzat hatálya alá tartozik.
Kérjük, vegye figyelembe, hogy /etc/a verziókezelés alatti állapot nem jelenti azt, hogy bármilyen műveletet végrehajthat rajta. A súlyos üzemzavarok működésképtelenné tehetik a rendszert, mielőtt az Etckeeper visszaállítaná a konfigurációt működőképes állapotba.
Tesztelési célból csak biztonságosan módosítsa a /etc/fájlt, például új fájlt adjon hozzá, módosítsa a gazdagép nevét a fájlban /etc/hosts, vagy telepítsen új szoftvert a Yum használatával.
Például adja hozzá a fájlt abcdea következőhöz /etc/:
sudo touch /etc/abcde
Ezután adja hozzá a következő sort 192.168.0.2 desktopa /etc/hostsfájlhoz:
echo '192.168.0.2 desktop' | sudo tee -a /etc/hosts
Végül ismét végrehajthatja a "commit" alparancsot:
sudo etckeeper commit "add a file /etc/abcde and add a line to /etc/hosts"
5. lépés: A módosítások visszavonása
Először is ellenőrizheti a git előzményeket, hogy megkapja az egyes commit azonosítóit és megjegyzéseit:
sudo etckeeper vcs log
Másodszor, ellenőrizheti bármely véglegesítés részleteit a végrehajtási azonosítójának első néhány bitjével. Itt feltételezzük, hogy az első véglegesítési azonosító 7f5bff, a második véglegesítési azonosító 1aa658.
sudo etckeeper vcs show 1aa658
Nyomja meg ja lefelé, ka felfelé lépéshez, a bevitelhez /keyword<Enter>a kereséshez, a gomb megnyomásával qa kilépéshez.
Harmadszor, a következő paranccsal összehasonlíthatja a két véglegesítés közötti különbségeket is. Legyen tisztában a két elkövetés sorrendjével, a természetes sorrend az előbbit az utóbbi elé helyezi.
sudo etckeeper vcs diff 7f5bff..1aa658
Most úgy találja, hogy rosszul konfigurálta a gazdagép nevét /etc/hostsaz első és a második véglegesítéskor, de a fájl hozzáadása /etc/abcdehelyes művelet, és csak a /etc/hostsfájlban vonhatja vissza a módosítást a következő paranccsal:
sudo etckeeper vcs checkout 7f5bff /etc/hosts
Ha vissza akarja vonni az első és a második véglegesítés közötti összes változást, használja a következő parancsot:
sudo etckeeper vcs checkout 7f5bff
Természetesen továbbra is visszatérhet a második véglegesítéshez:
sudo etckeeper vcs checkout 1aa658
Következtetés
Az Etckeeper megfelelően konfigurálva magabiztosabban hangolhatja és karbantarthatja rendszerét. Mindazonáltal ügyeljen arra, hogy a verziókezelés különbözik a biztonsági mentéstől, és /etc/nem a könyvtár az egyetlen hely, amely miatt aggódnia kell. Annak érdekében, hogy rendszerét formában tartsa, a verziókezelési mechanizmuson kívül rendszeresen biztonsági mentést is kell készítenie a rendszerről.