GNU/Linux >> Belajar Linux >  >> Linux

Pantau sistem Linux Anda di terminal Anda dengan procps-ng

Sebuah proses, dalam terminologi POSIX, adalah peristiwa yang sedang berlangsung yang dikelola oleh kernel sistem operasi. Sebuah proses muncul saat Anda meluncurkan aplikasi, meskipun ada banyak proses lain yang berjalan di latar belakang komputer Anda, termasuk program untuk menjaga waktu sistem Anda tetap akurat, untuk memantau sistem file baru, untuk mengindeks file, dan sebagainya.

Lebih banyak sumber daya Linux

  • Lembar contekan perintah Linux
  • Lembar contekan perintah Linux tingkat lanjut
  • Kursus online gratis:Ikhtisar Teknis RHEL
  • Lembar contekan jaringan Linux
  • Lembar contekan SELinux
  • Lembar contekan perintah umum Linux
  • Apa itu container Linux?
  • Artikel Linux terbaru kami

Sebagian besar sistem operasi memiliki semacam monitor aktivitas sistem sehingga Anda dapat mempelajari proses apa yang sedang berjalan pada saat tertentu. Linux memiliki beberapa untuk Anda pilih, termasuk Monitor Sistem GNOME dan KsysGuard. Keduanya adalah aplikasi yang berguna di desktop, tetapi Linux juga menyediakan kemampuan untuk memantau sistem Anda di terminal Anda. Apa pun yang Anda pilih, tugas umum bagi mereka yang berperan aktif dalam mengelola komputer mereka adalah memeriksa proses tertentu.

Pada artikel ini, saya mendemonstrasikan cara menemukan ID proses (PID) suatu program. Alat yang paling umum untuk ini disediakan oleh paket procps-ng, termasuk ps dan pstree , pidof , dan pgrep perintah.

Temukan PID dari program yang sedang berjalan

Terkadang Anda ingin mendapatkan ID proses (PID) dari aplikasi tertentu yang Anda tahu telah dijalankan. pidof dan pgrep perintah menemukan proses berdasarkan nama perintah.

pidof command mengembalikan PID dari sebuah perintah, mencari perintah yang tepat dengan nama:

$ pidof bash 
1776 5736

pgrep perintah memungkinkan untuk ekspresi reguler (regex):

$ pgrep .sh
1605
1679
1688
1776
2333
5736
$ pgrep bash
5736

Temukan PID berdasarkan file

Anda dapat menemukan PID proses menggunakan file tertentu dengan fuser perintah.

$ fuser --user ~/example.txt                    
/home/tux/example.txt: 3234(tux)

Dapatkan nama proses dengan PID

Jika Anda memiliki nomor PID dari suatu proses tetapi bukan perintah yang memunculkannya, Anda dapat melakukan "pencarian terbalik" dengan ps :

$ ps 3234
 PID TTY      STAT   PERINTAH WAKTU
5736 pts/1    Ss     0:00 emacs

Daftar semua proses

ps perintah daftar proses. Anda dapat membuat daftar setiap proses di sistem Anda dengan -e pilihan:

$ ps -e | kurang
TTY PID          CMD WAKTU
  1 ? 00:00:03 systemd
  2 ? 00:00:00 benang
  3 ? 00:00:00 rcu_gp
  4 ? 00:00:00 rcu_par_gp
  6 ? 00:00:00 kworker/0:0H-events_highpri
[...]
5648 ? 00:00:00 gnome-control-c
5656 ? 00:00:00 gnome-terminal-
5736 pts/1    00:00:00 bash
5791 pts/1    00:00:00 ps
5792 pts/1    00:00:00 kurang
(AKHIR)

Cantumkan hanya proses Anda

Keluaran dari ps -e bisa jadi luar biasa, jadi gunakan -U untuk melihat proses hanya dari satu pengguna:

$ ps -U tux | kurang
 PID TTY          CMD WAKTU
3545 ? 00:00:00 sistem
3548 ? 00:00:00 (sd-pam)
3566 ? 00:00:18 pulseaudio
3570 ? 00:00:00 gnome-keyring-d
3583 ? 00:00:00 dbus-daemon
3589 tty2     00:00:00 gdm-wayland-ses
3592 tty2     00:00:00 gnome-session-b
3613 ? 00:00:00 gvfsd
3618 ? 00:00:00 gvfsd-fuse
3665 tty2     00:01:03 gnome-shell
[...]

Itu menghasilkan 200 lebih sedikit (memberi atau menerima seratus, tergantung pada sistem tempat Anda menjalankannya) proses untuk disortir.

Anda dapat melihat output yang sama dalam format yang berbeda dengan pstree perintah:

$ pstree -U tux -u --show-pids
[...]
├─gvfsd-metadata(3921)─┬─{gvfsd-metadata}(3923)
│                      └─{gvfsd-metadata}(3924)
├─ibus-portal(3836)─┬─{ibus-portal}(3840)
│                   }(3842)portal
├─obexd(5214)
├─pulseaudio(3566)─┬─{pulseaudio}(3640)
│                  ├─{pulseaudio}(3649)
│                  └─{ pulseaudio}(5258)
├─tracker-store(4150)─┬─{tracker-store}(4153)
│                     {tracker-store}(4154)
│                    {tracker-store}(4157)
│                     {tracker-store}(4178)
└─xdg-permission-(3847)─┬─{xdg-permission-}(3848)
                        {xdg-permission-}(3850)

Buat daftar hanya proses Anda dengan konteks

Anda dapat melihat konteks tambahan untuk semua proses yang Anda miliki dengan -u pilihan.

$ ps -U tux -u
USER  PID %CPU %MEM    VSZ   RSS TTY STAT MULAI  PERINTAH WAKTU
tux  3545  0.0  0.0  89656  9708 ? Ss   13:59  0:00 /usr/lib/systemd/systemd --user
tux  3548  0.0  0.0 171416  5288 ? S    13:59  0:00 (sd-pam)
tux  3566  0.9  0.1 1722212 17352 ? Stux  3570  0.0  0.0 664736  8036 ? Sl  13:59  0:00 /usr/bin/gnome-keyring-daemon [...]
[...]
tux  5736  0.0  0.0 235628  6036 pts/1 Ss 14:18  0:00 bash
tux  6227  0.0  0.4 2816872 74512 tty2 Sl+14:30  0:00 /opt/firefox/firefox-bin [...]
tux  6660  0.0  0.0 268524  3996 pts/1 R+ 14:50  0:00 ps -U tux -u
tux  6661  0.0  0.0 219468  2460 pts/1 S+ 14:50  0:00 lebih sedikit

Memecahkan masalah dengan PID

Jika Anda mengalami masalah dengan aplikasi tertentu, atau Anda hanya ingin tahu tentang apa lagi yang digunakan aplikasi di sistem Anda, Anda dapat melihat peta memori dari proses yang berjalan dengan pmap :

$ pmap 1776
5736:  bash
000055f9060ec000   1056K r-x-- bash
000055f9063f3000     16K r---- bash
000055f906400000     40K rw---]
00007faf0fa67000   9040K r--s- passwd
00007faf1033b000     40K r-x-- libnss_sss.so.2
00007faf10345000   2044K ----- libnss_sss.so.2
50000007 libnss_sss.so.2
00007faf10546000 212692K r----locale-archive
00007faf1d4fb000   1776K r-x-- libc-2.28.so
00007faf1d6b7000   2044K ----- libc-2.28.so br />00007faf1d8ba000      8K rw--- libc-2.28.so
[...]

ID Proses

procps-ng package memiliki semua perintah yang Anda perlukan untuk menyelidiki dan memantau apa yang digunakan sistem Anda setiap saat. Apakah Anda hanya ingin tahu tentang bagaimana semua bagian yang berbeda dari sistem Linux cocok bersama, atau apakah Anda sedang menyelidiki kesalahan, atau Anda ingin mengoptimalkan kinerja komputer Anda, mempelajari perintah ini memberi Anda keuntungan yang signifikan untuk memahami OS Anda.


Linux
  1. Nyalakan editor teks terminal Linux Anda dengan ed

  2. Lakukan petualangan di terminal Linux Anda

  3. Cara Memantau Kinerja Sistem Linux dengan Sysstat

  1. Pantau Java Anda di Linux dengan jconsole

  2. Keamanan Linux:Lindungi sistem Anda dengan fail2ban

  3. Pelajari lebih lanjut tentang sistem Linux Anda dengan inxi

  1. Pantau server Linux Anda dengan Checkmk

  2. Sesuaikan terminal Linux Anda dengan logo favorit Anda

  3. Hidupkan kembali umpan RSS Anda dengan Newsboat di terminal Linux