Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
| Následující verze | Předchozí verze | ||
| it:software:git:etckeeper [2025/01/04 18:00] – vytvořeno Petr Nosek | it:software:git:etckeeper [2025/01/04 23:41] (aktuální) – [Instalace Etckeeperu] Petr Nosek | ||
|---|---|---|---|
| Řádek 1: | Řádek 1: | ||
| - | ====== Etckeeper ====== | + | ====== Etckeeper: Automatizovaná správa změn v /etc ====== |
| + | Etckeeper je nástroj určený k verzování změn v adresáři `/etc` pomocí verzovacího systému Git. Tento adresář obsahuje klíčovou konfiguraci systému, a proto je důležité mít možnost snadno sledovat změny, vrátit se k předchozím verzím nebo obnovit konfiguraci v případě chyby. | ||
| + | |||
| + | ===== Výhody Etckeeper ===== | ||
| + | * **Automatická správa verzí**: Zaznamenává změny v `/etc` při instalaci nebo odinstalaci balíků. | ||
| + | * **Integrace s Gitem**: Plná podpora Git příkazů pro ruční práci s repozitářem. | ||
| + | * **Zálohování na vzdálené úložiště**: | ||
| + | |||
| + | ===== Instalace Etckeeper ===== | ||
| + | |||
| + | Pro instalaci Etckeeperu použijte následující příkaz: | ||
| + | |||
| + | <code bash> | ||
| + | apt install etckeeper | ||
| + | </ | ||
| + | |||
| + | Po instalaci se automaticky inicializuje Git repozitář v adresáři `/etc`. Pokud se tak nestane, můžete jej ručně inicializovat příkazem: | ||
| + | |||
| + | <code bash> | ||
| + | etckeeper init | ||
| + | </ | ||
| + | |||
| + | Chtěl jsem provést commit pro zaznamenání aktuálního stavu, nicméně po instalaci už bylo provedeno. Jinak bych dal: | ||
| + | |||
| + | <code bash> | ||
| + | etckeeper commit " | ||
| + | </ | ||
| + | |||
| + | ===== Nastavení Gitu ===== | ||
| + | |||
| + | Pro práce s gitem je nutné nyní být v adresáři /etc. V Gitu tedy jako první vytvořím větev, kterou vyžaduje můj vzdálený repozitář. | ||
| + | |||
| + | <code bash> | ||
| + | git checkout -b main | ||
| + | </ | ||
| + | |||
| + | Uložte přihlašovací údaje do Gitu: | ||
| + | |||
| + | <code bash> | ||
| + | git config credential.helper store | ||
| + | </ | ||
| + | |||
| + | Přihlašovací údaje budou uloženy do souboru `~/ | ||
| + | |||
| + | Přidejte vzdálené úložiště: | ||
| + | <code bash> | ||
| + | git remote add origin https:// | ||
| + | </ | ||
| + | |||
| + | Nahrajte data na vzdálený server: | ||
| + | < | ||
| + | git push -u origin main | ||
| + | </ | ||
| + | |||
| + | Při prvním použití budete vyzváni k zadání uživatelského jména a tokenu, které se následně uloží. | ||
| + | |||
| + | ===== Konfigurace automatické synchronizace ===== | ||
| + | |||
| + | Pro nastavení automatické synchronizace otevřete soubor `etckeeper.conf` a nastavte vzdálený repozitář: | ||
| + | |||
| + | <code bash> | ||
| + | PUSH_REMOTE=" | ||
| + | </ | ||
| + | |||
| + | Tímto se každá změna provedená příkazem `etckeeper commit "popis změny" | ||
| + | |||
| + | ===== Automatické commity ===== | ||
| + | |||
| + | Etckeeper automaticky zaznamená změny při instalaci nebo odinstalaci balíků. Zároveň služba `etckeeper.timer` zajišťuje denní kontrolu a synchronizaci změn. Stav služby lze ověřit příkazem: | ||
| + | |||
| + | < | ||
| + | systemctl status etckeeper.timer | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== Ruční odesílání změn ===== | ||
| + | |||
| + | Pokud nechci čekat na atomatický commit, mohu ručně odeslat změny takto: | ||
| + | |||
| + | <code bash> | ||
| + | etckeeper commit " | ||
| + | </ | ||
| + | |||
| + | Změny mohu odeslat i přes git, ale přes příkaz etckeeper to má nějaké výhody navíc - v tomto případe vyzdvihnu tu, že se po commitu automaticky odešlou data na můj vzdálený git server. | ||
| + | |||
| + | ===== Závěr ===== | ||
| + | |||
| + | Etckeeper je výkonný nástroj, který usnadňuje správu systémových konfigurací. Ve spojení se vzdáleným Git repozitářem poskytuje robustní a bezpečné řešení pro sledování a zálohování změn v adresáři `/etc`. | ||