Proses adalah program yang sedang dieksekusi pada sistem operasi Linux. Manajemen proses Linux memungkinkan pengguna untuk mengontrol dan memonitor proses yang berjalan. Perintah utama untuk manajemen proses adalah ps untuk melihat status proses dan kill untuk menghentikan proses.
2. Manajemen Proses Linux
Proses adalah Program yang sedang dieksekusi. Setiap kali menjalankan suatu program, Sistem
UNIX melakukan suatu fork, yaitu melakukan beberapa urutan operasi untuk membuat suatu
proses konteks dan kemudian mengeksekusi program tersebut dalam konteks yang sudah dibuat.
Oleh karena itu kita harus menguasai Manajemen Proses Linux. Manajemen Proses Linux adalah
salah satu hal yang sangat penting yang harus dikuasai oleh seorang Teknisi Komputer. Kenapa?
Karena selain kita mengetahui proses di Windows, kita harus tahu proses di Linux dan dengan
penguasaan manajemen prose ini kita bisa mengetahui proses apa saja yang running pada setiap
user. Atau dalam suatu jaringan juga kita bisa melakukan controlling terhadap proses setiap
client.
Dalam Manajemen proses beberapa hal penting yang harus dikuasai, yaitu :
1. Mengetahui proses yang terjadi Linux
2. Dapat melakukan proses controlling terhadap proses di Linux
3. Menghentikan proses yang tidak dibutuhkan dan mengurangi performa Linux
Untuk itu kita harus mempelajari Manajemen Proses pada Linux. Perintah inti dari proses
manajemen proses di Linux adalah :
1. ps
2. kill
Sebelum kita mempelajari mengenai perintah ps, dan kill, kita harus mengetahui sedikit demi
sedikit mengenai proses, jenisnya, dll. OK Check it out!
Tipe-tipe Proses dalam Linux
Tipe-tipe proses dalam Linux, dibagi ke dalam 3 bagian, yaitu :
1. Interactive : Proses yang diprakarsai oleh sebuah shell dan berjalan dalam foreground dan
background. seperti : terminal, software running, dll.
2. Batch : Sebuah seri dari proses-proses yang dijadwalkan untuk dieksekusi pada suatu
waktu tertentu, proses batch ini juga tidak berhubungan dengan terminal, tapi menunggu
dieksekusi secara sekuensial.
3. Daemon : Proses yang diinisialisasi saat booting untuk membentuk suatu fungsi-
fungsi sistem yang dibutuhkan, bila tidak ada request maka akan berada pada keadaan
idle, seperti : LPD, NFS, dan DNS.
IDENTITAS PROSES
3. Berikut adalah beberapa identitas dari Proses yang ada di Linux :
1. PID ( Proccess ID )
adalah pengenalan unik suatu proses, dimana digunakan untuk menentukan proses-proses mana
yang di bawa saat suatu aplikasi dijalankan atau melakukan proses pengiriman signal, mengubah,
dan menunggu proses lainnya. PID sendiri merupakan bilangan 32 bit yang dibatasi oleh Linux
dari range 0-32767 untuk menjamin kompatibilitas dengan UNIX tradisional.
2. Credentials ( Mandat )
adalah Pengaturan akses yang dipengaruhi oleh User ID dan Group ID. Jadi kita dapat
mengatur hak akses atau Credetials setiap user, group, dll.
3. Personality
adalah sebuah hal yang cukup jarang ditemukan dalam sistem UNIX, namun sangat
berpengaruh dalam proses system call dan pengiriman signal dari suatu aplikasi.
Status Proses yang dikenali dalam Linux
1. Task Running : Proses yang siap untuk dieksekusi CPU
2. Task Interruptable : Proses yang menunggu sebuah kondisi. Interupsi, Sinyal dan aktifitas
lain akan mem
bangunkan proses.
3. Task Uninterruptable : Proses yang sedang sleep, dan tidak dapat di interrupt oleh signal.
4. Task Stopped : Proses yang dihentikan
5. Task Zombie : Proses telah berhenti, namun masih memiliki struktur data di
task_struct di task
vektor dan masih memegang sumber daya yang tidak digunakan lagi.
PERINTAH PS
Perintah atau command ps (process status) di gunakan untuk menampilkan informasi proses yang sedang berjalan termasuk
nomor PID (Process Identification Number) dari proses tersebut. Proses atau biasa disebut task akan berjalan jika ada sebuah
aplikasi yang sedang dijalankan, setiap proses yang berjalan oleh system diberi nomor PID yang unik.
Syntak dasar dari perintah ps adalah
ps [option]
Jika anda menggunakan perintah ps tanpa diikuti option apapun, maka akan ditampilkan output standart dari perintah ps tersebut
yang terdiri dari PID, TTY, TIME, dan CMD
contoh:
4. martin@martin-X450CC ~$ ps
PID TTY TIME CMD
2452 pts/2 00:00:00 bash
2495 pts/2 00:00:00 ps
1. Memulai menggunakan perintah ps
Ketikkan perintah berikut untuk menampilkan semua prosess yang sedang berjalan
ps -aux | less
Contoh
martin@martin-X450CC ~$ ps -aux | less
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.4 0.0 33864 3164 ? Ss 15:33 0:01 /sbin/init
root 2 0.0 0.0 0 0 ? S 15:33 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 15:33 0:00 [ksoftirqd/0]
root 4 0.0 0.0 0 0 ? S 15:33 0:00 [kworker/0:0]
root 5 0.0 0.0 0 0 ? S< 15:33 0:00 [kworker/0:0H]
root 6 0.1 0.0 0 0 ? S 15:33 0:00 [kworker/u8:0]
root 7 0.1 0.0 0 0 ? S 15:33 0:00 [rcu_sched]
root 8 0.0 0.0 0 0 ? S 15:33 0:00 [rcuos/0]
root 9 0.0 0.0 0 0 ? S 15:33 0:00 [rcuos/1]
root 10 0.0 0.0 0 0 ? S 15:33 0:00 [rcuos/2]
root 11 0.0 0.0 0 0 ? S 15:33 0:00 [rcuos/3]
root 12 0.0 0.0 0 0 ? S 15:33 0:00 [rcu_bh]
root 13 0.0 0.0 0 0 ? S 15:33 0:00 [rcuob/0]
root 14 0.0 0.0 0 0 ? S 15:33 0:00 [rcuob/1]
root 15 0.0 0.0 0 0 ? S 15:33 0:00 [rcuob/2]
root 16 0.0 0.0 0 0 ? S 15:33 0:00 [rcuob/3]
root 17 0.0 0.0 0 0 ? S 15:33 0:00 [migration/0]
root 18 0.0 0.0 0 0 ? S 15:33 0:00 [watchdog/0]
root 19 0.0 0.0 0 0 ? S 15:33 0:00 [watchdog/1]
root 20 0.0 0.0 0 0 ? S 15:33 0:00 [migration/1]
root 21 0.0 0.0 0 0 ? S 15:33 0:00 [ksoftirqd/1]
5. root 23 0.0 0.0 0 0 ? S< 15:33 0:00 [kworker/1:0H]
:
option -a akan menampilkan semua user yang sedang menjalankan proses, option -u berfungsi untuk menampilkan semua proses
ylain yang sedang berjalan, option -x berfungsi untuk menampilkan proses yang tidak dikontrol oleh terminal (tty) seperti
daemon yang dijalankan saat booting.
2. Menampilkan semua proses yang sedang berjalan pada sistem
ps -A
contoh :
martin@martin-X450CC ~$ ps -A
PID TTY TIME CMD
1 ? 00:00:00 init
2 ? 00:00:00 kthreadd
3 ? 00:00:00 ksoftirqd/0
4 ? 00:00:00 kworker/0:0
5 ? 00:00:00 kworker/0:0H
7 ? 00:00:00 rcu_sched
8 ? 00:00:00 rcuos/0
9 ? 00:00:00 rcuos/1
10 ? 00:00:00 rcuos/2
11 ? 00:00:00 rcuos/3
12 ? 00:00:00 rcu_bh
13 ? 00:00:00 rcuob/0
14 ? 00:00:00 rcuob/1
15 ? 00:00:00 rcuob/2
16 ? 00:00:00 rcuob/3
17 ? 00:00:00 migration/0
18 ? 00:00:00 watchdog/0
19 ? 00:00:00 watchdog/1
20 ? 00:00:00 migration/1
21 ? 00:00:00 ksoftirqd/1
23 ? 00:00:00 kworker/1:0H
24 ? 00:00:00 watchdog/2
........
Atau gunakan perintah berikut
6. ps -e
3. Melihat semua proses yang berjalan kecuali root
ps -U root -u root -N
contoh:
martin@martin-X450CC ~$ ps -U root -u root -N
PID TTY TIME CMD
702 ? 00:00:00 dbus-daemon
723 ? 00:00:00 rsyslogd
761 ? 00:00:00 avahi-daemon
766 ? 00:00:00 avahi-daemon
1303 ? 00:00:00 kerneloops
1361 ? 00:00:00 dnsmasq
1484 ? 00:00:00 dbus-launch
1485 ? 00:00:00 dbus-daemon
1633 ? 00:00:00 gnome-keyring-d
1709 ? 00:00:00 cinnamon-sessio
1857 ? 00:00:00 ssh-agent
1860 ? 00:00:00 dbus-launch
1861 ? 00:00:00 dbus-daemon
1942 ? 00:00:09 at-spi-bus-laun
......
4.Menampilkan proses yang sedang dijalankan oleh user tertentu
ps -u user
contoh :
martin@martin-X450CC ~$ ps -u martin
PID TTY TIME CMD
1097 ? 00:00:00 gnome-session
1147 ? 00:00:00 ssh-agent
1150 ? 00:00:00 dbus-launch
7. 1151 ? 00:00:00 dbus-daemon
1156 ? 00:00:00 gconfd-2
1165 ? 00:00:00 gnome-keyring-d
1170 ? 00:00:00 gnome-settings-
1175 ? 00:00:00 gvfsd
1179 ? 00:00:10 compiz
1183 ? 00:00:00 pulseaudio
1195 ? 00:00:00 gvfs-fuse-daemo
1255 ? 00:00:00 nautilus
1261 ? 00:00:00 polkit-gnome-au
1262 ? 00:00:00 bluetooth-apple
1263 ? 00:00:00 zeitgeist-datah
......
5. Menampilkan proses yang sedang berjalan dalam bentuk bagan
pstree
contoh:
PERINTAH KILL
Perintah kill adalah salah satu perintah daasar Linux yang digunakan untuk menghentikan atau
mematikan proses yang sedang berjalan pada Sistem Operasi Linux / UNIX. perintah ini sangat
penting karena dengan memahami perintah ini kita bisa mengetahui mana proses yang
8. mengganggu performa, tidak dibutuhkan, dll.
Contoh perintah Kill :
$ kill <sinyal> <pid>
PID adalah nomor proses yang akan di hentikan. Tidak tahu PID proses mana yang akan
dihentikan? Cobalah bereksperimen dengan perintah:
ps aux | grep <myusername>