GNU/Linux >> Belajar Linux >  >> Linux

Perintah untuk mempelajari tentang sistem yang tidak dikenal

pertanyaan penggunaan ganda! Baik Arkeolog Perangkat Lunak atau Peretas Jahat dapat menggunakan jawaban untuk pertanyaan ini! Sekarang, siapakah saya?

Saya selalu menggunakan ps -ef versus ps -augxww untuk mengetahui apa yang saya alami. Kotak Linux dan System V cenderung menyukai "-ef" dan kesalahan pada "-augxww", sebaliknya untuk mesin BSD dan SunOS lama. Output dari ps dapat memberi tahu Anda banyak hal juga.

Jika Anda dapat masuk sebagai root, dan ini adalah mesin Linux, Anda harus melakukan lsusb dan lspci - itu akan membuat Anda 80% mengetahui apa situasi perangkat kerasnya. dmesg | more dapat membantu Anda memahami masalah apa pun saat ini tentang apa saja.

Itu mulai dihapus, tetapi melakukan ifconfig -a biasanya dapat memberi tahu Anda banyak tentang antarmuka jaringan, dan jaringan. Menjalankan mii-tool dan/atau ethtool pada antarmuka yang Anda lihat di ifconfig output yang terlihat seperti kabel ethernet juga dapat memberi Anda beberapa info.

Jalankan ip route atau netstat -r dapat memberikan informasi tentang perutean Protokol Internet, dan mungkin sesuatu tentang antarmuka jaringan yang sedang digunakan.

A mount pemanggilan dapat memberi tahu Anda tentang disk dan cara pemasangannya.

Menjalankan uptime , lalu last | more dapat memberi tahu Anda sesuatu tentang kondisi pemeliharaan saat ini. Uptime 100+ hari mungkin berarti "saatnya mengganti oli dan cairan", secara metaforis. Menjalankan who juga

Melihat /etc/resolv.conf dan /etc/hosts dapat memberi tahu Anda tentang pengaturan DNS dari mesin itu. Mungkin lakukan nslookup google.com atau dig bing.com untuk melihat apakah sebagian besar DNS berfungsi.

Sebaiknya perhatikan kesalahan apa ("perintah tidak ditemukan") dan varian perintah ("ps -ef" vs "ps augxww") apa yang berfungsi untuk menentukan varian Unix atau Linux atau BSD apa yang baru saja Anda gunakan.

Ada atau tidaknya kompiler C, dan di mana letaknya adalah penting. Lakukan which cc atau lebih baik, which -a cc untuk menemukannya.


cat /etc/*release* adalah perintah yang bagus untuk mendapatkan gambaran tentang distro mana yang sedang berjalan.


http://bhami.com/rosetta.html mungkin berguna untuk ditinjau, kalau tidak saya biasanya melihat-lihat di bawah /etc (akun, barang init, petunjuk rasa OS, dll) dan crontab -l dan lihat melalui ps daftar hal-hal untuk dipelajari.

Juga "sebagai root" sangat menakutkan, karena saya harus memperbaiki sistem di mana admin Linux melakukan penyelidikan seperti itu mengatur semua nama host Solaris ke -f .

Juga df adalah perintah yang berbahaya, cara yang bagus untuk oh whoops tergantung pada pemblokiran I/O. Jadi, jangan pernah menjalankannya sampai Anda setidaknya menyelidiki tunggangannya, atau mengetahui bahwa Anda bisa membuka sesi lain entah bagaimana caranya.

Gunakan perintah yang sangat sederhana (uname , cd /etc; ls , cat , $PAGER ) hingga Anda mengetahui apa itu host, dan jika Anda tidak terbiasa dengannya, periksa rosetta atau selalu baca halaman manual sebelum mengasumsikan beberapa perintah atau menandai perintah untuk melakukan apa yang dilakukannya pada sistem yang lebih populer.


Linux
  1. Pelajari lebih lanjut tentang sistem Linux Anda dengan inxi

  2. Perintah Nginx Paling Berguna di Sistem Linux

  3. Dalam Urutan Apa Perintah Pipa Dijalankan?

  1. Memahami Perintah Ssh yang Mencurigakan?

  2. Apa yang rentan tentang kode C ini?

  3. Cara mempelajari internal sistem Linux

  1. Apa runlevel sistem Linux saat ini?

  2. Apa itu namespace UTS?

  3. Apa sebenarnya yang dilakukan init?