Saya menginstal php5-fpm
paket menggunakan apt
; kemudian saya membuat beberapa perubahan pada file konfigurasi PHP.
Sekarang saya akan mendapatkan perbedaan antara versi file asli (yang dari paket yang diinstal) dan versi saat ini (dimodifikasi oleh saya). Bagaimana cara melakukannya?
/etc
bawah kontrol revisi (saya menggunakan lincah untuk itu) danadd
dancommit
secara teratur. Dengan begitu Anda dapat memutar kembali ke file asli, atau menengah ke kondisi yang diubah dan denganhg diff
Anda dapat melihat perubahan. Jika Anda tidak dapat menemukan cara untuk melakukan iniapt
, buat cadangan file yang diubah, instal ulang paket, bawa file konfigurasi di bawah kendali revisi dan salin kembali perubahan Anda. Setelah itu Anda bisa melakukan diff.Jawaban:
Coba sesuatu seperti ini:
Seperti yang disarankan oleh orang lain, pasti menempatkan file konfigurasi Anda di bawah kendali revisi. Dengan begitu, Anda bisa melihat dengan tepat apa yang Anda ubah dan kapan Anda mengubahnya.
sumber
tar xzf data.tar.gz
seharusnyatar xf data.tar.xz
untuk Ubuntu terbarudpkg-deb -x ${package}_*.deb .
daripada menggunakanar
dantar
. Jugaapt-get download $(dpkg-query -W -f='${binary:Package}=${Version}' $package)
akan memastikan Anda mengambil versi yang saat ini diinstal daripada yang terbaru, misalnya jika Anda melakukan ini sebelum melakukan peningkatan.data.tar.xz
github.com/rubo77/apt-etc-diff - juga sedikit meningkatkan skripdirektori dll
Untuk melacak perubahan pada
/etc
direktori Anda, Anda dapat melakukan seperti yang disarankan @Anthon dan menggunakan git, subversi, mercurial, dll. Untuk mengontrol versi direktori itu. Anda juga dapat menggunakan alat seperti dllkeeper . Ada tutorial di sini dan juga di sini .file paket
Setahu saya
apt
tidak memiliki cara untuk memeriksa file pada disk vs file yang ada di sebenarnya.deb
. Tidak jugadpkg
, alat yangapt
sebenarnya digunakan untuk melakukan pengelolaan file.Namun Anda dapat menggunakan alat seperti
debsums
untuk membandingkan beberapa file yang telah Anda instal, itu hanya melihat checksum mereka (md5sum) dari apa yang ada di.deb
file vs apa yang ada di disk sistem Anda.Lihat pertanyaan serverfault ini untuk perincian lebih lanjut
debsum
dandpkg
checksumming, serta pertanyaan askubuntu ini .debsum
contohsumber
/etc
bawah kendali revisi, danetckeeper
tampaknya solusi yang tepat untuk mengelolanya; Saya akan mengadopsinyadebsums -a
, jika tidak file konfigurasi akan dikecualikan dari cek.debums -ce
sempurna untuk menemukan file (konfigurasi) mana yang harus dilihat.Saya menulis skrip sederhana berikut untuk secara otomatis mengambil file asli dari paket Debian yang tepat dan membedakan file saat ini dengan itu: https://a3nm.net/git/mybin/tree/debdiffconf
Gunakan sebagai berikut:
debdiffconf FILE
sumber
realpath
paket yang diinstal.Jika Anda ingin melihat perbedaan antara
php.ini
file asli dan yang diinstal , gunakanjika Anda tidak peduli dengan baris komentar, masukkan saja
sumber