Cara mengelola /dll dengan kontrol versi menggunakan etckeeper di linux

Cara mengelola /dll dengan kontrol versi menggunakan etckeeper di linux

Dalam struktur direktori UNIX/Linux, /dll Direktori adalah tempat file konfigurasi dan direktori sistem spesifik host berada; Ini adalah lokasi pusat untuk semua file konfigurasi seluruh sistem. File konfigurasi adalah file lokal yang digunakan untuk mengontrol cara kerja program - itu harus statis dan tidak dapat menjadi biner yang dapat dieksekusi.

Untuk melacak perubahan pada file konfigurasi sistem, administrator sistem biasanya membuat salinan (atau cadangan) file konfigurasi sebelum memodifikasinya. Dengan begitu jika mereka secara langsung memodifikasi file asli dan membuat kesalahan, mereka dapat kembali ke salinan yang disimpan.

Penjaga dll adalah kumpulan alat yang sederhana, mudah digunakan, modular dan dapat dikonfigurasi /dll dikelola menggunakan kontrol versi. Ini memungkinkan Anda untuk menyimpan perubahan di /dll direktori dalam sistem kontrol versi (VCS) seperti git (yang merupakan vcs yang disukai), mercurial, bazaar atau repositori darcs. Dengan demikian memungkinkan Anda menggunakan git untuk meninjau atau mengembalikan perubahan yang dibuat /dll, dalam hal kesalahan.

Fitur lainnya adalah:

  1. Ini mendukung integrasi dengan manajer paket front-end termasuk APT, YUM, DNF, Zyper dan PACMAN-G2 untuk melakukan perubahan otomatis yang dibuat /dll Selama peningkatan paket.
  2. Ini melacak metadata file (seperti izin file) yang biasanya tidak didukung oleh Git, tetapi itu penting untuk /dll, Dan
  3. itu termasuk pekerjaan cron dan a Systemd timer, yang masing -masing dapat melakukan perubahan keluar /dll Secara otomatis sekali sehari.

Cara menginstal ETCKEPER di Linux

Penjaga dll tersedia di Debian, Ubuntu, Fedora, dan distribusi Linux lainnya. Untuk menginstalnya, gunakan manajer paket default Anda seperti yang ditunjukkan. Perhatikan bahwa perintah ini juga akan menginstal git dan beberapa paket lainnya sebagai dependensi.

$ sudo apt-get install etckeeper #ubuntu dan debian #apt-get install etckeeper #debian sebagai pengguna root #instal dnf etckeeper #fedora 22+ $ sudo zypper instalasi etckeeper #opensuse 15 

Pada Linux Enterprise distribusi seperti Redhat Enterprise Linux (RHEL), Centos dan lainnya, Anda perlu menambahkan Repositori Epel sebelum menginstalnya seperti yang ditunjukkan.

# yum instal epel-rilis # yum install 

Mengkonfigurasi ETCKEPER DI LINUX

Setelah Anda menginstal penjaga dll Seperti yang ditunjukkan di atas, Anda perlu mengonfigurasi bagaimana ia akan beroperasi dan file konfigurasi utamanya /etc/etckeeper/etckeeper.conf. Untuk membukanya untuk diedit, gunakan editor berbasis teks favorit Anda seperti yang ditunjukkan.

# vim/etc/etckeeper/etckeeper.conf atau $ sudo nano/etc/etckar/etckar.conf 

File ini berisi beberapa opsi konfigurasi (masing -masing dengan deskripsi penggunaan kecil dan jelas) yang memungkinkan Anda mengatur sistem kontrol versi (VCS) untuk digunakan, lulus opsi ke Vsc; Untuk mengaktifkan atau menonaktifkan pengatur waktu, mengaktifkan atau menonaktifkan peringatan file khusus, mengaktifkan atau menonaktifkan penjaga dll dari melakukan perubahan yang ada /dll sebelum instalasi.

Anda juga dapat mengatur manajer paket front-end atau tingkat tinggi (seperti APT, YUM, DNF dll.) dan Manajer Paket Low-Level (DPKG, RPM dll.) bekerja dengan penjaga dll.

Jika Anda telah melakukan perubahan dalam file, simpan dan tutup file.

Menginisialisasi repositori git dan melakukan komit awal

Sekarang Anda telah mengkonfigurasi penjaga dll, Anda perlu menginisialisasi Git Repositori untuk mulai melacak perubahan apa pun di /dll direktori sebagai berikut. Anda hanya bisa berlari penjaga dll dengan izin root, jika tidak gunakan sudo.

$ cd $ sudo etckeeper init 
Inisialisasi git repositori di /dll

Selanjutnya, langkah untuk penjaga dll Agar dapat bekerja secara otomatis, Anda perlu menjalankan komit pertama untuk mulai melacak perubahan /dll, sebagai berikut.

$ sudo etckeeper berkomitmen "komit pertama" 
Jalankan GIT berkomitmen untuk melacak perubahan /dll sistem file

Membuat perubahan dan berkomitmen

Setelah menjalankan komit pertama Anda, penjaga dll melalui git sekarang melacak perubahan dalam /dll direktori. Sekarang cobalah untuk membuat perubahan apa pun di salah satu file konfigurasi.

Kemudian jalankan perintah berikut untuk menampilkan file yang telah berubah sejak komit terakhir; Perintah ini pada dasarnya menunjukkan perubahan /dll tidak dipentaskan untuk komit, di mana VCS berarti git dan “status“Adalah Sub-Komandan Git.

$ sudo dll status VCS 
Lihat Perubahan /ETC Sistem File

Kemudian melakukan perubahan terbaru sebagai berikut.

$ sudo etckeeper berkomitmen "Mengubah host dan file konfigurasi phpmyadmin" 
Melakukan perubahan baru

Lihat Log Komit

Untuk melihat log dari semua komit (masing -masing ID dan komentar komit), Anda dapat menjalankan perintah berikut.

$ sudo dll 
Lihat Git Commit History

Anda juga dapat menampilkan detail komit, cukup tentukan ID berkomitmen (Beberapa karakter pertama dapat bekerja) seperti yang ditunjukkan.:

$ sudo etckeeper VCS menunjukkan A153B68479D0C440CC42C228CBBB6984095F322D atau $ sudo ETCKEPER VCS menunjukkan A153B6847 
Lihat detail komit

Selain itu, Anda dapat melihat perbedaan antara dua komit seperti yang ditunjukkan. Ini sangat berguna jika Anda ingin mencabut perubahan seperti yang ditunjukkan pada bagian selanjutnya. Anda dapat menggunakan tombol panah untuk menggulir ke atas dan ke bawah atau kiri dan kanan, dan berhenti dengan menekan Q.

$ sudo etcktorper VCS menunjukkan 704cc56 A153B6847 

Cara Mencabut Perubahan

Esensi dari penjaga dll adalah membantu Anda melacak perubahan pada Anda /dll direktori dan membalikkan perubahan jika perlu. Dengan asumsi Anda menyadari bahwa Anda membuat beberapa kesalahan di /etc/nginx/nginx.conf Ketika Anda terakhir mengeditnya dan layanan nginx tidak dapat dimulai kembali karena kesalahan dalam struktur konfigurasi, Anda dapat kembali ke salinan yang disimpan dalam komit tertentu (e.G 704cc56) di mana menurut Anda konfigurasinya benar sebagai berikut.

$ sudo etckeeper VCS checkout 704cc56/etc/nginx/nginx.conf 

Atau, Anda dapat membatalkan semua perubahan dan kembali ke versi semua file di bawah /dll (dan sub-direktorinya) disimpan dalam komit tertentu.

$ sudo etck. VCS Checkout 704cc56 

Cara mengaktifkan perubahan untuk dilakukan secara otomatis

Penjaga dll juga mengirim dengan unit layanan dan timer untuk Systemd, termasuk dalam paket. Peluncuran "Autocommit”Perubahan dalam /dll direktori, cukup mulai penjaga dll.timer unit untuk saat ini dan periksa apakah sudah berjalan dan berjalan, sebagai berikut.

$ sudo Systemctl start etckeeper.timer $ sudo systemctl status etckeeper.timer 
Mulai Unit Timer Penjaga

Dan memungkinkannya untuk memulai secara otomatis di boot sistem seperti yang ditunjukkan.

$ sudo systemctl mengaktifkan.timer 

Untuk informasi lebih lanjut, lihat halaman proyek penjaga ETC: https: //.bisa bercabang.com/.

Kesimpulan

Dalam panduan ini, kami telah menunjukkan cara menginstal dan menggunakan penjaga dll untuk perubahan toko di /dll direktori dalam sistem kontrol versi (VCS) seperti git dan meninjau atau mengembalikan perubahan yang dibuat /dll, jika perlu. Bagikan pemikiran Anda atau ajukan pertanyaan tentang ETCKEPER melalui formulir umpan balik di bawah ini.