Cara mengelola /dll dengan kontrol versi menggunakan etckeeper di linux
- 1484
- 235
- Dwayne Hackett
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:
- 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. - Ini melacak metadata file (seperti izin file) yang biasanya tidak didukung oleh Git, tetapi itu penting untuk
/dll
, Dan - 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 initInisialisasi 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 VCSLihat 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 dllLihat 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 A153B6847Lihat 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.timerMulai 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.
- « Cara mendaftar semua layanan yang berjalan di bawah SystemD di Linux
- Cara menginstal zabbix di rhel 8 »