GNU/Linux >> Belajar Linux >  >> Linux

Universitas Sysadmin:Trik Linux yang cepat dan kotor

Sysadmin berpengalaman biasanya akan menyesuaikan sistem Linux mereka agar sesuai dengan kebutuhan mereka dan untuk menciptakan lingkungan yang konsisten. Tetapi bagaimana jika Anda bekerja di lingkungan di mana Anda tidak memiliki wewenang untuk membuat perubahan permanen? Atau Anda hanya membantu seseorang dari departemen lain? Terkadang server lain menjalankan "rasa" Linux yang berbeda atau bahkan tipe Unix yang berbeda.

Berikut adalah beberapa trik cepat dan kotor yang dapat berguna dalam beberapa situasi praktis.

[ Pembaca juga menyukai: Trik Bash yang lebih bodoh:Variabel, temukan, deskriptor file, dan operasi jarak jauh ]

Tahu aturan dan tahu kapan harus melanggar aturan

Variabel harus memiliki nama yang jelas agar mudah dipahami, didokumentasikan sendiri, dan untuk menjaga kesehatan mental kita. Saya kira semua orang setuju dengan itu.

Namun terkadang, Anda terdesak untuk memecahkan masalah produksi di tengah malam, dan Anda ingin bergerak cepat .

Di lain waktu Anda juga perlu menyimpan beberapa pengetikan karena Anda tahu Anda perlu menjalankan beberapa perintah panjang beberapa kali. Dalam situasi normal, Anda akan membuat alias dan memasukkannya ke dalam profil login Anda. Namun, kita berbicara tentang lingkungan yang tidak dikenal di sini, ketika Anda berfokus untuk menyelesaikan insiden tersebut.

Kasus klasik "terlalu banyak koneksi jaringan menjadi liar"

Anda membuka halaman pada jam 2 pagi karena "sesuatu" tidak berfungsi. Semuanya berjalan normal sampai malam ini.

Dimulai dengan beberapa variasi ss perintah (atau netstat, jika Anda sedikit lebih tua, seperti saya), Anda melihat ratusan koneksi dalam TIME-WAIT dan TUTUP-TUNGGU di server utama Anda.

Catatan :Pada animasi di bawah ini, kita menggunakan ss -4a perintah untuk mendaftar semua koneksi IPv4. Tapi kami lebih tertarik pada yang ada di TUNGGU status:

Anda dapat melihat bahwa semua koneksi itu tampaknya mengarah ke port 50505 di setidaknya dua server. IP dan port tujuan ada di Field #6. Lihat gambar di bawah.

Sekarang Anda ingin mengetahui berapa banyak koneksi tertunda untuk setiap IP target.

Kita dapat melakukannya dengan mengubah ss perintah yang kita gunakan sebelumnya:

Urutan langkah-langkahnya adalah sebagai berikut:

  1. Kita mulai meninjau header dan 10 baris pertama menggunakan perintah ss -4a | grep WAIT | head
  2. Kemudian kita pipe itu untuk awk , yang dalam hal ini digunakan untuk mencetak bidang #6 (kami berasumsi bahwa spasi adalah pemisah default).
  3. Setelah itu, kita sort keluaran sebelumnya karena selanjutnya, kami ingin menghitung server tujuan berbeda yang terlibat.
  4. Akhirnya, kami menggunakan uniq -c untuk menyajikan hitungan baris unik. Saat kita berada di langkah terakhir untuk tugas ini, kita perlu menghapus head perintah yang telah kita gunakan saat membuat output.

Pada titik penyelidikan ini, Anda dapat mulai membuat beberapa korelasi, seperti, "Dua tujuan lainnya terpengaruh, jadi akar masalahnya ada di tingkat cluster atau terkait jaringan/firewall."

Pasti ada cara untuk menyesuaikan output ss untuk hanya menampilkan kolom yang Anda minati. Tapi mungkin ada sesuatu yang mungkin tidak ingin Anda telusuri pada pukul 2 pagi. Ini hanyalah salah satu contoh, dan dalam banyak situasi lain, Anda akan memiliki perintah lain dengan banyak opsi.

Di sini, idenya adalah untuk menunjukkan cara cepat untuk bekerja dengan output yang mungkin familiar bagi Anda, dari beberapa perintah yang sudah Anda gunakan (tetapi Anda tidak perlu atau ingin mengingat SEMUA cara yang mungkin untuk mengonfigurasi outputnya).

Kasus klasik "ruang disk kosong rendah"

Contoh lain dari kehidupan nyata:Anda memecahkan masalah dan mengetahui bahwa satu sistem file memiliki kapasitas 100 persen.

Mungkin ada banyak subdirektori dan file dalam produksi, jadi Anda mungkin harus mencari cara untuk mengklasifikasikan "direktori terburuk" karena masalahnya (atau solusi) bisa ada di satu atau lebih.

Dalam contoh berikut, saya akan menunjukkan skenario yang sangat sederhana untuk mengilustrasikan poinnya.

Urutan langkah-langkahnya adalah:

  1. Kami pergi ke sistem file di mana ruang disk hampir habis (saya menggunakan direktori home saya sebagai contoh).
  2. Kemudian, kita gunakan perintah df -k * untuk menampilkan ukuran direktori dalam kilobyte.
  3. Itu memerlukan beberapa klasifikasi bagi kita untuk menemukan yang besar, tapi cukup sort tidak cukup karena, secara default, perintah ini tidak akan memperlakukan angka sebagai nilai tetapi hanya karakter.
  4. Kami menambahkan -n ke sort perintah, yang sekarang menunjukkan kepada kita direktori terbesar.
  5. Jika kita harus menavigasi ke banyak direktori lain, membuat alias semoga bermanfaat.

[ Pelajari dasar-dasar penggunaan Kubernetes di lembar contekan gratis ini. ] 

Menutup

Ada perintah yang berguna dalam situasi yang berbeda, seperti grep , awk , sort . Mengetahui beberapa opsi dasar dan menggabungkannya bisa sangat efektif saat Anda perlu memanipulasi dan menyederhanakan output dari perintah lain atau saat memproses file teks.

Perintah-perintah ini ada di hampir setiap variasi Unix, lama atau baru, yang membuatnya bermanfaat untuk memilikinya di tas trik Anda. Anda tidak pernah tahu kapan alat ini akan menyelamatkan hidup Anda (mengedipkan mata).


Linux
  1. Alat Sysadmin:Melihat teks di Linux dengan ekor dan kepala

  2. Pemecahan Masalah Jaringan Linux Dan Debugging?

  3. Linux – Direktori Standar Dan/atau Umum Pada OS Unix/linux?

  1. Tip dan trik menggunakan CUPS untuk mencetak dengan Linux

  2. Memahami Desktop Linux?

  3. Tip dan trik .htaccess Linux

  1. 10 Trik dan Tips Baris Perintah Linux Menarik yang Patut Diketahui

  2. Dasar-dasar sysadmin Linux:Manajemen akun pengguna dengan UID dan GID

  3. Kiat dan trik variabel lingkungan Linux