Jawaban:
Layar GNU - penting ketika Anda mengelola sejumlah besar sistem dan tidak ingin selusin terminal terbuka.
Beberapa saya tahu bahwa saya tidak dapat hidup tanpa ...
tee - memungkinkan penulisan simultan ke STDOUT (output standar) dan file. Sangat bagus untuk melihat informasi dan mencatatnya nanti.
top - task manager UNIX, memberikan gambaran besar tentang sistem.
tail -f - memungkinkan Anda untuk melihat data yang ditambahkan saat file bertambah, bagus untuk memonitor file log di server.
grep - Global Regular Expression Print, bagus untuk mencari sistem untuk data dalam file.
df - melaporkan penggunaan disk sistem file saat ini.
du - melaporkan penggunaan disk dari file / direktori tertentu.
kurang - diperlukan untuk melihat halaman manual! juga berguna untuk melihat output dari perintah dengan cara yang mudah dicari.
vim / Emacs / nano / pico / ed - apa pun editor teks pilihan Anda, jelas mengapa itu diperlukan.
more
atau less
, Anda selalu dapat mencoba most
.
htop
adalah versi "lebih baik" dari top
.
lsof untuk menentukan proses yang menggunakan file atau direktori (berguna ketika mencoba untuk mencari tahu apa yang mencegah perangkat dari yang umount'd)
netstat untuk menentukan proses mana yang menggunakan koneksi jaringan (terutama berguna ketika mencoba mencari tahu daemon mana yang terikat ke port tertentu)
Pelajari semua alat dasar, tetapi pelajari Perl.
Perl sangat ideal untuk memanipulasi teks, dan karena operator un * x hidup pada file teks, pipa, input dan output, Perl sangat cocok.
Bonus tambahan adalah Perl adalah lintas platform dan jika Anda harus melakukan beberapa pekerjaan pada kotak windows Anda memiliki bahasa yang mudah diinstal (cukup jatuhkan direktori Perl di server) yang sudah Anda ketahui.
Dan di jalur pemikiran itu, dapatkan Cygwin juga. Jika Anda adalah admin un * x dan harus bekerja pada kotak windows (bahkan desktop Anda) yang memiliki ls, rm, grep, sed, tail dll menghemat banyak waktu Anda ketika berpindah OS.
Kakek yang terlupakan dari skrip sistem modern. Saya tahu Perl mendapatkan sebagian besar cinta (bersama dengan skrip Bash, Python, Ruby, dan [masukkan bahasa skrip favorit Anda di sini]), dan jangan salah sangka, saya suka Perl. Saya memanfaatkannya hampir setiap hari.
Tapi sed dan awk tidak boleh dilupakan, diabaikan, atau diabaikan. Untuk banyak kasus, sed dan awk adalah alat terbaik untuk pekerjaan itu. Contoh cepat adalah pemfilteran baris perintah dengan sed, dan pemrosesan log yang cepat dan kotor dengan awk. Keduanya dapat dilakukan di Perl, tetapi akan membutuhkan lebih banyak pekerjaan dan waktu pengembangan.
Netcat.
Jaringan swiss army knife, seperti yang mereka katakan.
Untuk skrip cepat, otomatisasi, dll:
Untuk terhubung ke server * NIX Anda:
Saya menggunakan sebagian besar alat yang sudah terdaftar, tapi ini belum ada yang menyentuh:
Wayang - sistem untuk mengotomatisasi tugas-tugas administrasi sistem
Untuk skrip:
Beberapa alat praktis yang belum saya lihat disebutkan:
expect
ClusterSSH mengontrol sejumlah jendela xterm melalui jendela konsol grafis tunggal untuk memungkinkan perintah dijalankan secara interaktif di beberapa server melalui koneksi ssh.
pv: Menampilkan progres operasi panjang yang dapat dialihkan. http://www.ivarch.com/programs/pv.shtml
Berguna maka Anda ingin memonitor sesuatu yang akan memakan waktu lama, seperti menyalin / mengompresi perangkat blok mentah melalui jaringan (yang adalah bagaimana saya mengambil cadangan paranoia dari netbook 8Gb saya sebelum bermain-main dengan hal-hal besar seperti mengutak-atik pengaturan sistem file).
Juga: Saya akan memilih kedua untuk ssh, rsync, layar, htop dan netcat seperti yang disebutkan oleh orang-orang di atas - yang semuanya lebih penting daripada pv tetapi pv belum disebutkan. Sebenarnya pv sering merupakan tambahan yang berguna saat memiprang barang ke atau dari ke netcat.
pv
bisa menjadi alat yang berguna, tetapi jangan terlalu sering menggunakannya. Melewati data melalui itu benar-benar memiliki dampak kinerja (semua data harus melewati program lain ). Di pekerjaan terakhir saya, kami melakukan banyak pemrosesan log. Salah satu dari mereka memutuskan untuk mulai meletakkan pv di semua skrip pemrosesan log, sampai kami menemukan bahwa itu menambahkan sekitar 15% ke waktu pemrosesan untuk mereka. Sekarang ini hanya digunakan untuk pekerjaan yang membutuhkan waktu kurang dari beberapa menit, atau yang memiliki keterbatasan sumber daya yang ada (seperti menyeberang koneksi jaringan yang lambat).
pv
adalah disk atau jaringan I / O terikat daripada CPU / memori terikat). Argumen yang sama adalah yang utama terhadap penggunaan yang berlebihan cat
juga (saya kadang-kadang menggunakan cat ketika tidak benar-benar diperlukan hanya untuk membuat hal-hal dibaca dengan baik dari kiri ke kanan, tetapi penyalinan data dalam memori tambahan melalui pipa dan pengalihan konteks dapat memiliki dampak kinerja yang terukur).
cat
penggunaan berlebihan saya berasal dari mulai dengan cat foo
, diikuti dengan menekan panah "atas" dan kemudian menambahkan | [command]
ke baris saya sebelumnya. Saya tahu saya mengambil kinerja (kecil) hit dengan menjaga kucing di sana, tetapi meninggalkannya membutuhkan upaya lebih sedikit daripada menulis ulang / mengetik ulang perintah yang akan dibuat [command] < foo
. Bukan masalah bagi (sebagian besar) perintah baris ad hoc bekerja, tetapi tidak ideal untuk skrip (sama seperti perasaan saya terhadap pv
, saya kira).
sudo
.
Meskipun serius, tail -f
ini berguna.
tail -f
, Anda akan menyukainyamultitail
memipiskan output tar ke utilitas lain, tar berjalan di kotak yang sama, atau tar menjalankan SSH adalah langkah lama Unix sekolah favorit saya untuk memindahkan file dari satu tempat ke tempat lain.
Ini juga memberi Anda pilihan gaya Windows untuk menyalin satu folder ke folder lain dan berakhir dengan semua file di direktori sumber dan tujuan.
zsh sebagai shell
Ini sangat efisien dengan ekstensi / pengaturan grml.org .
iotop, adalah program seperti teratas untuk memantau akses I / O ke disk Anda.
Sebagian besar alat ini dibuat jauh lebih kuat menggunakan Bash "penyelesaian yang dapat diprogram" - sehingga Anda dapat melakukan tab-melengkapi hal-hal seperti opsi baris perintah, atau mengucapkan nama paket dengan "apt-get install". Ini juga akan membatasi apa yang Anda tab-lengkap untuk file yang relevan - misalnya, "unzip" hanya akan menyelesaikan file arsip yang didukung.
Ini benar-benar mutts - jika Anda belum pernah mencobanya Anda mungkin hanya perlu mengutak-atik .bashrc Anda:
if [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
Tentunya ini benar di Ubuntu dan Debian. Anda mungkin perlu mendapatkan paket pada beberapa distribusi Linux.
Beberapa jawaban tambahan dapat ditemukan dalam pertanyaan serupa ini
Beberapa hal terlewatkan yang ingin saya sebutkan.
Oh, dan saya lupa menyebutkan, saat menulis, saya yakin Anda harus selalu menggunakan Korn. Saya benci Korn (Bukan band. Saya suka band :-P) tetapi secara harfiah ada di mana-mana. Anda dapat mengambil skrip dan memindahkannya antara Solaris, AIX dan Linux dan tidak perlu khawatir tentang apakah admin memiliki kesopanan untuk menginstal Bash.
Salah satu alat yang terkadang sangat berguna adalah nohup. Saya menggunakannya untuk menjalankan skrip yang bertahan lama menggunakan klien SSH jarak jauh.