Saat keluar dari shell Sistem Linux, semua proses yang berjalan biasanya dihentikan atau ditutup. Jadi apa yang Anda lakukan Jika Anda masih ingin proses tetap berjalan bahkan keluar dari shell/terminal? Di sinilah perintah nohup masuk.
Perintah Nohup
Nohup, kependekan dari no hang up adalah perintah di sistem Linux yang membuat proses tetap berjalan bahkan setelah keluar dari shell atau terminal.
Nohup mencegah proses atau pekerjaan menerima sinyal SIGHUP (Signal Hang UP). Ini adalah sinyal yang dikirim ke proses saat menutup atau keluar dari terminal. Dalam panduan ini, kita akan melihat perintah nohup dan mendemonstrasikan cara penggunaannya.
Sintaks Perintah Nohup
Sintaks perintah Nohup adalah sebagai berikut;
nohup command arguments ATAU
nohup options Mari kita lihat bagaimana perintah itu berperan
Memeriksa versi Nohup
Anda dapat mulai dengan memeriksa versi Nohup menggunakan sintaks di bawah
nohup --version Keluaran

Memulai proses menggunakan Nohup
Jika Anda ingin proses/pekerjaan Anda tetap berjalan, awali perintah dengan nohup seperti yang ditunjukkan di bawah ini. Pekerjaan akan tetap berjalan di shell dan tidak akan mati setelah keluar dari shell atau terminal.
nohup ./hello.sh Keluaran

Dari output di atas, output dari perintah telah disimpan ke nohup.out untuk memverifikasi proses ini,
cat nohup.out Keluaran

Selain itu, Anda dapat memilih untuk mengarahkan output ke file lain seperti yang ditunjukkan
nohup ./hello.sh > output.txt Sekali lagi, untuk melihat file, jalankan
cat output.txt Keluaran

Untuk mengarahkan ulang ke file dan ke kesalahan standar dan output gunakan > filename 2>&1 atribut seperti yang ditunjukkan
nohup ./hello.sh > myoutput.txt >2&1 Keluaran

Memulai proses di latar belakang menggunakan Nohup
Untuk memulai proses di latar belakang, gunakan & simbol di akhir perintah. Dalam contoh ini, kami melakukan ping ke google.com dan mengirimkannya ke latar belakang.
nohup ping google.com & Keluaran

Untuk memeriksa proses saat melanjutkan shell gunakan pgrep perintah seperti yang ditunjukkan
pgrep -a ping Keluaran

Jika Anda ingin menghentikan atau mematikan proses yang sedang berjalan, gunakan tombol kill perintah diikuti oleh ID proses seperti yang ditunjukkan
kill 2565 Keluaran

Ringkasan
- Semua proses yang dijalankan menggunakan perintah nohup akan mengabaikan sinyal SIGHUP bahkan setelah keluar dari shell.
- Setelah pekerjaan dimulai atau dijalankan menggunakan perintah nohup, stdin tidak akan tersedia bagi pengguna.
- Secara default,
nohup.outdigunakan sebagai file default untuk stdout dan stderr.