Misalkan Anda menemukan diri Anda menjelajahi baris perintah Linux untuk pertama kalinya atau memasuki administrasi Linux. Dalam hal ini, pemahaman tingkat rendah tentang cara berkeliling terminal dan menyelesaikan tugas-tugas dasar sangat penting. Untuk membantu Anda memahami konsep tersebut, lihat dua artikel saya sebelumnya:
- 10 perintah untuk membantu Anda memulai di terminal
-
10 perintah lagi untuk memanipulasi file
Namun, jika Anda merasa nyaman dengan konsep tersebut, kami akan memajukan pengetahuan Linux Anda sedikit lebih jauh di artikel ini. Kami akan melihat proses dan cara mengelolanya.
Jadi, apa sebenarnya proses ?
Di Linux, sebuah proses adalah setiap instance program yang aktif (berjalan). Tapi apa itu program ? Nah, secara teknis, sebuah program adalah file yang dapat dieksekusi yang disimpan di penyimpanan di mesin Anda. Setiap kali Anda menjalankan sebuah program, Anda telah membuat sebuah proses. Pada tingkat dasar, ini cukup mudah untuk dikelola, dan itulah yang akan kita lihat hari ini.
Yang Anda butuhkan untuk memulai
Saya sarankan Anda mengikuti mesin virtual favorit Anda. Dengan begitu, Anda dapat mencoba dan gagal tanpa konsekuensi (yang jelas merupakan cara terbaik untuk merasa nyaman di terminal).
Untuk demo ini, saya akan memulai proses sleep selama 500 detik. Pendekatan ini memungkinkan Anda untuk melihat prosesnya tanpa saya membuat perubahan berarti pada sistem saya.
[tcarrigan@client ~]$ sleep 500
^Z
[1]+ Stopped sleep 500
Saya kemudian menghentikan proses dengan Ctrl+Z sehingga kita dapat menggunakan terminal kita.
1. Daftar proses
Untuk menampilkan proses yang sedang aktif, gunakan ps
perintah:
[tcarrigan@client ~]$ ps
PID TTY TIME CMD
2648 pts/0 00:00:00 bash
3293 pts/0 00:00:00 sleep
3300 pts/0 00:00:00 ps
Di sini Anda mendapatkan sedikit informasi tentang proses aktif di sistem Anda. Anda perlu memperhatikan PID (ID proses unik), TIME (jumlah waktu proses telah berjalan), dan CMD (perintah yang dijalankan untuk meluncurkan proses).
2. Daftar verbose (proses)
Untuk melihat daftar proses yang sangat detail, Anda dapat menggunakan ps aux
perintah.
- a - semua pengguna
- u - menunjukkan pengguna/pemilik
- x - menampilkan proses yang tidak dijalankan di terminal (membuat output agak panjang)
Anda dapat melihat perintah di sini (output diedit untuk panjang):
[tcarrigan@client ~]$ ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
tcarrig+ 3293 0.0 0.0 215292 520 pts/0 T 13:41 0:00 sleep 500
root 3380 0.0 0.0 0 0 ? I 13:45 0:00 [kworker/1:1-mm_percpu_wq]
root 3381 0.0 0.0 0 0 ? I 13:45 0:00 [kworker/1:3]
root 3398 0.0 0.0 0 0 ? I 13:46 0:00 [kworker/3:2-ata_sff]
root 3481 0.0 0.0 0 0 ? I 13:50 0:00 [kworker/u8:2-flush-253:0]
root 3482 0.0 0.0 0 0 ? I 13:50 0:00 [kworker/0:1-events]
root 3483 0.0 0.0 0 0 ? I 13:50 0:00 [kworker/0:2]
root 3508 0.0 0.0 0 0 ? I 13:51 0:00 [kworker/3:0-ata_sff]
root 3511 0.0 0.0 18892 7732 ? S 13:52 0:00 systemd-userwork
root 3512 0.0 0.0 18892 7656 ? S 13:52 0:00 systemd-userwork
root 3513 0.0 0.0 18892 7656 ? S 13:52 0:00 systemd-userwork
root 3566 0.4 0.0 432792 8024 ? Ssl 13:54 0:00 /usr/libexec/fprintd
tcarrig+ 3598 0.0 0.0 228208 3948 pts/0 R+ 13:54 0:00 ps aux
3. Bunuh dengan PID
Tak pelak lagi, sebuah proses akan macet, dan Anda harus kill
dia. Semakin banyak waktu yang Anda habiskan di CLI, semakin besar kemungkinan Anda akan membutuhkan kill
memerintah. Cara paling akurat untuk mengidentifikasi suatu proses adalah dengan ID proses (PID).
Gunakan sintaks berikut:
[tcarrigan@client ~]$ kill PID
Perintah ini mengirimkan SIGTERM sinyal. Namun, jika Anda menghadapi proses yang macet, tambahkan -9
pilihan.
[tcarrigan@client ~]$ ps
PID TTY TIME CMD
2648 pts/0 00:00:00 bash
3293 pts/0 00:00:00 sleep
4684 pts/0 00:00:00 sleep
40527 pts/0 00:00:00 sleep
40540 pts/0 00:00:00 ps
[tcarrigan@client ~]$ sudo kill -9 3293
[sudo] password for tcarrigan:
[1] Killed sleep 500
4. Bunuh dengan nama/kata kunci
Gunakan killall
perintah untuk mematikan proses dengan nama. Perintah ini akan mematikan semua proses dengan kata kunci/nama yang Anda tentukan.
Sintaksnya adalah:
[tcarrigan@client ~]$ killall sleep
Ini akan membunuh semua sleep
proses aktif pada sistem (-9
opsi juga berfungsi di sini). Ini contohnya:
[tcarrigan@client ~]$ ps
PID TTY TIME CMD
2648 pts/0 00:00:00 bash
4684 pts/0 00:00:00 sleep
40527 pts/0 00:00:00 sleep
40540 pts/0 00:00:00 ps
[tcarrigan@client ~]$ killall -9 sleep
[2]- Killed sleep 500
[3]+ Killed sleep 500
Dua perintah berikut ini berjalan beriringan. Mereka memungkinkan Anda untuk memindahkan/mengelola perintah latar belakang. Saya akan memberikan tampilan dasar pada sintaks di bawah ini; namun, untuk melihat perintah ini secara mendalam, lihat artikel saya sebelumnya tentang subjek ini.
5. Buat daftar pekerjaan latar belakang dan lanjutkan pekerjaan latar belakang
Untuk membuat daftar dan mengelola pekerjaan latar belakang, kami akan menggunakan bg
memerintah. Saya memulai sleep 500
baru proses dan kemudian menghentikannya, mengirimkannya ke latar belakang. Jadi kami melihatnya terdaftar saat menjalankan bg
di bawah ini:
[tcarrigan@client ~]$ bg
[1]+ sleep 500 &
6. Bawa pekerjaan terbaru ke latar depan
Untuk melakukan ini, kita akan menggunakan fg
memerintah. Ini membawa pekerjaan/proses yang paling baru dijalankan ke latar depan. Contoh berikut adalah lanjutan dari perintah di atas. sleep 500
proses yang ada di latar belakang sekarang aktif di latar belakang. Ayo terangkan...
[tcarrigan@client ~]$ fg
sleep 500
Perintah ini membawa kita ke perintah terakhir kita dalam daftar ini.
7. Bawa pekerjaan tertentu ke latar depan
Gunakan fg
perintah lagi, tetapi pilih pekerjaan tertentu untuk dibawa ke latar depan (bukan yang terbaru). Untuk melakukan ini, kita hanya akan menambahkan nama pekerjaan/proses ke perintah.
[tcarrigan@client ~]$ fg XXXample
Ini membawa pekerjaan XXXample ke latar depan.
[ Ingin menguji kemampuan sysadmin Anda? Ikuti penilaian keterampilan hari ini. ]
Menutup
Di Dasar-dasar Perintah Linux hari ini, kita melihat proses dan cara mengelolanya. Anda sekarang dapat menyelesaikan tugas manajemen proses umum—mulai dari membuat daftar dan mematikan hingga berpindah antara latar belakang dan latar depan. Jika ada area administrasi Linux umum lainnya yang ingin Anda lihat daftar perintahnya, kirimkan email ke tim di [email protected], dan saya akan melakukan yang terbaik untuk menyempurnakannya untuk Anda.