Apakah Anda memiliki aturan umum yang Anda gunakan ketika Anda memecahkan masalah jaringan / perangkat keras / perangkat lunak yang sulit?
Misalnya: "Saya mengisolasi sumber masalah dengan menguji periferal dengan komputer kedua" atau "Saya menghapus perangkat keras sebanyak mungkin untuk menghidupkan perangkat, dan kemudian menambahkan kembali komponen satu per satu hingga saya dapat mereproduksi masalah" , dll.
troubleshooting
nama pengguna
sumber
sumber
Jawaban:
Hanya daftar poin yang saya tulis untuk diri saya sendiri setelah berjuang dengan masalah untuk sementara waktu:
Ada juga daftar besar aturan debugging, itu dalam bentuk PDF dengan contoh dan penjelasan untuk masing-masing aturan. Saya tidak dapat dengan cepat menemukan PDF, tetapi saya pikir ini adalah poster dari daftar:
sumber
Jika masalahnya terkait Internet, kemungkinan itu adalah DNS.
Jika masalahnya sulit didiagnosis, mungkin itu adalah RAM.
Jika masalahnya ada pada workstation Windows, mungkin yang paling cepat adalah reimage-nya.
Jika masalahnya adalah pada hari Jumat, itu mungkin sesuatu yang serius.
sumber
Saya suka kembali ke metode ilmiah .
Dari ( http://en.wikipedia.org/wiki/Scientific_method )
Sebagai aturan umum saya selalu ingin mencoba dan memeriksa ulang asumsi dasar saya. Apakah itu memiliki kekuatan, apakah sudah terpasang, adalah kabel yang baik. Sangat menjengkelkan untuk menghabiskan berjam-jam mencoba melihat masalah perangkat lunak ketika Anda memiliki kabel longgar.
Saya merasa sangat penting selama fase penciptaan hipotesis untuk benar-benar menemukan sebanyak mungkin penyebab masalah yang saya bisa. Kemudian saya mencoba dan memilih ide untuk diuji terlebih dahulu berdasarkan seberapa mudahnya untuk menguji, dan seberapa besar kemungkinan ide tersebut.
Penting juga untuk mendapatkan bantuan. Konsultasikan dengan rekan kerja Anda, vendor, atau siapa pun yang paling tahu tentang sistem yang dimaksud jika Anda bisa. Jangan menghabiskan banyak waktu memutar roda Anda pada masalah jika ada seseorang yang tersedia yang dapat membantu Anda memecahkan masalah.
O'Reilly memiliki buku yang bagus Network Troubleshooting Tools yang memiliki serangkaian langkah untuk diikuti yang sangat mirip dengan metode ilmiah. Saya menemukan buku itu sangat bermanfaat dan sangat merekomendasikannya. Buku ini membahas lebih banyak detail dan menyarankan banyak alat yang bermanfaat.
Dari Alat Pemecahan Masalah Jaringan
Lihat juga:
sumber
(Sorotan ini diparafrasekan dari bab "Debugging" dari "Praktek Sistem dan Administrasi Jaringan" )
Dua hal yang perlu diketahui:
Ketahui seperti apa versi "tetap" itu. Lebih disukai perintah yang dapat Anda jalankan yang memberikan output tertentu ketika semuanya bekerja. Sebagai contoh: Saya mencoba mencari tahu mengapa SSH meminta kata sandi ketika saya sudah mengatur kunci dengan benar (atau saya pikir begitu). Jadi pengujian saya adalah: "uptime servername ssh" dan seharusnya berfungsi tanpa meminta kata sandi.
Jelaskan masalah di tingkat yang tepat. Seorang pengguna yang mengeluh bahwa mereka tidak dapat melakukan ping ke sebuah server seharusnya tidak mengirim Anda untuk menjalankan dan memperbaiki server. Pekerjaan orang itu bukan duduk-duduk dan mesin ping sepanjang hari. Mereka ingin menyelesaikan beberapa jenis tugas seperti menggunakan mesin sebagai server DNS mereka. Contoh: Sekali pengguna mengeluh bahwa mereka tidak bisa melakukan ping ke mesin di belahan dunia lain. Saya menghabiskan hari melacak sysadmin di bagian perusahaan untuk mencari tahu apa yang salah dengan mesin itu. Itu dinonaktifkan dan mereka panik karena mereka pikir mungkin mereka mematikan mesin yang salah. Saya menghubungi pengguna dan berkata "selain perlu melakukan ping mesin ini, apa yang ingin Anda lakukan dengannya?". Ternyata dia ingin menjalankan pekerjaan tertentu dan jika dia mengikuti prosedur yang tepat, tugasnya akan secara otomatis dialihkan ke mesin pengganti. Saya telah menghabiskan seluruh hari dan waktu sysadmin lokal saya. Alasan lain "Saya tidak bisa ping" bukanlah hal yang tepat untuk diuji: Seringkali firewall dikonfigurasikan untuk menjatuhkan paket ping tetapi mengizinkan paket lain lewat. Uji apa yang ingin Anda lalui.
Dua strategi:
Aditif: Terus menambahkan komponen sampai masalah dimulai. Hal terakhir yang Anda tambahkan adalah masalahnya. Contoh: Browser web tidak dapat berbicara dengan server. Antara server dan pengguna adalah penyeimbang beban, firewall, cache, dan proksi web lokal pengguna. Pertama-tama coba kirim pertanyaan langsung ke server, kemudian melalui LB ke server, lalu melalui firewall ke LB ke server, dll. Setiap kali menambahkan satu komponen.
Subtraktif: Terus melepas komponen sampai masalah hilang. Hal terakhir yang Anda lepaskan adalah masalahnya: Contoh: Mesin dengan puluhan kartu tidak mau boot. Lepaskan kartu sampai mesin melakukan booting.
Dua bit keberuntungan:
Lupakan semua yang saya katakan. Masalahnya disebabkan oleh perubahan terakhir yang dilakukan pada sistem. (ini bekerja 99% dari waktu ... masalahnya adalah 99% dari waktu Anda tidak tahu apa perubahan terakhir yang sebenarnya)
Ketika semuanya gagal, periksa hal-hal bodoh. http://whatexit.org/tal/mywritings/dumb-things-to-check.html Contoh: Masalah gila tidak bisa dijelaskan. Kemudian kami memeriksa file konfigurasi: pengguna telah mengeditnya dengan menyalinnya ke kotak Windows, mengeditnya, lalu menyalinnya kembali. Sekarang memiliki ^ M di akhir setiap baris. Kami tidak pernah memperhatikan karena editor teks kami secara diam-diam menyembunyikan fakta ini. Sayangnya, perangkat lunak yang membaca file konfigurasi mengubah ^ Ms menjadi ruang tanpa istirahat yang mengacaukan banyak prosedur lainnya.
sumber
Praktik umum yang saya ingat selama seluruh proses:
Selama pemecahan masalah di sini, saya mendefinisikan metodologi dasar:
sumber
Sikap yang saya coba pertahankan:
Ini adalah sikap yang membantu saya untuk memegang - mereka menghentikan saya mengangkat tangan saya di udara, menyatakan sesuatu yang "aneh" dan kemudian menyerah, atau menjadi tidak bahagia karena rasanya "tidak dapat dipecahkan".
Cara saya berpikir tentang pemecahan masalah:
Proses pemecahan masalah:
Internet tidak berfungsi? Periksa masalahnya, temukan itu adalah situs web yang tidak dapat mereka kunjungi. Tes cepat melibatkan koneksi internet mereka (berfungsi), apakah itu memuat untuk saya (tidak). Tes cepat menunjukkan itu menjadi situs. Dengan melihat masalah yang terjadi pada saya, saya telah mendorong probabilitas dengan cepat dari PC, browser, DNS, firewall kantor akun pengguna, dll.
Jadi situs tidak memuat, sekarang bagaimana? Itu belum diperbaiki, jadi cari tempat untuk mengukir masalahnya menjadi lebih kecil. Apakah server aktif? Apakah ini ping? apakah DNS berfungsi? Iya nih. Apakah layanan menjawab pada port 80? Tidak. Apakah layanan berjalan? Apakah ini dimulai? Tidak. Apakah ada kesalahan pada log event / logfiles? Iya nih! Apa yang mereka katakan?
Ini adalah pemecahan masalah yang efisien dan cepat karena tanpa henti fokus pada mempersempit ruang lingkup masalah. Jika saya menerima laporan mereka bahwa internet tidak berfungsi, saya akan keliru menganggapnya sebagai kegagalan koneksi. Jika saya menerima penampakan pertama saya bahwa itu tidak memuat untuk mereka, saya akan membuang waktu di komputer mereka berpikir itu salah.
Buat potongan "hal-hal yang tidak mungkin" sebesar mungkin.
Pahami sistemnya. Semakin banyak pengetahuan umum yang saya miliki tentang suatu sistem, semakin mudah mendapatkannya. Di mana saya memiliki pemahaman yang lemah, masalah lebih menakutkan, lebih sulit, lebih lambat, dan lebih mungkin berakhir dengan solusi daripada perbaikan, atau dengan perbaikan besar-besaran lambat (instal ulang) daripada perbaikan kecil, tepat bedah.
sumber
Secara umum saya bertanya "Apa yang telah berubah yang mungkin menyebabkan masalah ini"? Sebagian besar masalah disebabkan oleh perubahan pada konfigurasi yang diketahui baik. Jika Anda dapat mengisolasi siapa yang melakukan perubahan maka Anda biasanya mendapatkan jawaban Anda.
sumber
Saya pikir itu keterampilan, bukan ilmu. Ada saat-saat ketika Anda menempuh jalan yang salah tetapi sebagian besar:
Saya pernah meminta atasan memanggil saya dengan seorang insinyur "senior" di telepon - dia mengatakan kepada saya bahwa dia memiliki satu server yang tidak dapat terhubung dan dia telah mencoba mengganti kabel tetapi masih tidak ada sukacita. Saya bisa mendengar bunyi bip di latar belakang seperti UPS dengan baterai. Saya bertanya kepadanya apakah dia bisa melihat aktivitas di sakelar, dia bilang tidak. Saya bertanya kepadanya apakah bunyi bip datang dari UPS, dia berkata ya, saya bertanya kepadanya apakah dia bisa melihat lampu menyala sama sekali di rak, dia bilang tidak ... Lihatlah di balik hidungmu - ini membantu!
sumber
Saya mulai dengan memeriksa yang sudah jelas. Apakah ada pesan kesalahan yang menjelaskan apa masalahnya? Apakah semuanya terhubung dengan benar? Saya tidak suka menghabiskan beberapa jam untuk memecahkan masalah, sesuatu yang bisa diselesaikan dalam beberapa menit. Saya pikir mungkin terlalu metodis. Saya telah melihat orang menghabiskan sepanjang hari mereproduksi masalah meskipun faktanya saya mengatakan kepada mereka apa masalahnya. Bukan itu yang saya bayar untuk mereka.
Jika jawabannya tidak jelas, susun beberapa tersangka dan ujilah terlebih dahulu. Hanya setelah Anda menguji kemungkinan tersangka Anda harus menguji tersangka tidak mungkin. Maka Anda bisa seilmiah yang Anda inginkan.
sumber