Kutipan Albert Einstein
Kegilaan: melakukan hal yang sama berulang-ulang dan mengharapkan hasil yang berbeda
Seringkali, Linux membuat saya marah karena saya melakukan hal yang sama berulang kali dan mendapatkan hasil yang berbeda dari kotak ke kotak. (Lihat pertanyaan saya sebelumnya ).
Bagi saya, wilayah kebingungan terbesar adalah mengambil alih mesin yang dipasang orang lain (seperti halnya ketika mendaftar dengan perusahaan web hosting). Anda tidak tahu apa yang Anda hadapi.
Apakah ada beberapa jenis alat pintar yang dapat saya jalankan di instalasi Linux (Ubuntu) untuk memberi saya informasi tentang bagaimana mesin itu membelok dari instalasi default?
yaitu Sesuatu yang dapat menunjukkan kepada saya daftar perintah yang akan berperilaku mengejutkan sehingga menghindari pendekatan coba-coba.
Jawaban:
Setiap kali saya memiliki sistem referensi yang baik dan yang nakal, saya mencoba membandingkannya dengan vimdiff. Apa yang saya bandingkan bervariasi dengan masalahnya, misalnya
1) Ketika membandingkan server di tingkat paket, saya membuat daftar paket yang diurutkan pada setiap server, mengirimkan hasilnya ke file dan memperbaikinya, mis.
Di server1:
Di server2:
Salin kedua file ke mesin yang sama dan lakukan diff (atau vimdiff).
2) Buat daftar layanan yang berjalan seperti pada contoh 1
... dll., dan coba lakukan itu.
3) Jika Anda memecahkan masalah konfigurasi yang tidak konsisten dengan Apache misalnya, buat salinan dari file-file konfigurasi, dan perbaiki itu, dll.
sumber
/etc
bawah kontrol versi untuk membantu Anda melacak apa yang sedang terjadi.etckeeper
akan melakukan ini untukmu.Sebagian besar perbedaan antara dua instalasi dari distribusi yang sama akan berada di
/etc
. Salin konten/etc
dari satu mesin ke direktori sementara di yang lain dan jalankanJika Anda ingin membandingkan mesin dengan instalasi default, dapatkan salinan dari instalasi default baru (mungkin di mesin virtual).
Jika Anda dapat mengontrol mesin dari awal, pastikan untuk menginstal etckeeper untuk tetap di
/etc
bawah kontrol versi. Maka Anda akan dapat melihat dengan tepat apa yang berubah.Tentu saja, akan ada banyak perbedaan. Jika Anda belum memiliki gagasan tentang ke mana harus mencari, ini adalah pendekatan yang salah untuk menyelidiki perbedaan perilaku tertentu. Sebagai contoh, katakanlah perintah
adduser
berperilaku berbeda pada dua mesin. Maka pendekatan terbaik adalah melihat apa yangadduser
sedang dilakukan; jalankan di kedua mesin dan bandingkan. Jika ia memiliki opsi untuk mengatakannya lebih bertele-teleadduser
, jangan gunakan. Lebih radikal lagi, jalankan program di bawah strace , misuntuk melihat file apa yang
adduser
diakses.sumber
Untuk kembali ke pertanyaan sebelumnya, alat bagus Anda, yang terdengar seperti ide bagus bagi saya, tetapi saya belum pernah mendengar tentang beast yang ada, perlu memeriksa hal-hal seperti jenis dan ukuran sistem file.
Contoh nyata yang terjadi pada saya pada tahun 2002: dua orang memasang sistem SuSE 7.3 pada dua server yang dipasang di rak. Mereka berusaha keras untuk mendapatkan paket yang persis sama di kedua server. Beberapa saat kemudian, kami mengalami masalah dengan beberapa perangkat lunak dalam pengembangan. Itu turun ke sistem file ext3 di satu server, Reiserfs di yang lain. "Ls" polos pada Reiserfs memberikan nama file dalam urutan leksikal, tetapi tidak pada ext3. Satu program gagal pada nama file yang rusak.
sumber
Untuk file, pengguna, grup, paket, layanan, dll. Saya telah menggunakan http://www.scriptrock.com ; gratis untuk beberapa server dan memberi Anda perbandingan visual yang bagus tentang perbedaan antara server..sangat berguna untuk penyimpangan
sumber