GNU/Linux >> Belajar Linux >  >> Linux

nohup:perintah tidak ditemukan

Perintah nohup (“no hangup”) mencegah proses berakhir saat pengguna log off. Misalnya, jika administrator meluncurkan skrip cadangan, lalu keluar dari sistem, skrip akan berhenti berjalan. Dengan menempatkan perintah nohup di depan perintah normal, skrip akan terus berlanjut bahkan setelah administrator logout.

Sintaks

Sintaks dari perintah nohup adalah:

# nohup {command/script}

Jika Anda menemukan kesalahan di bawah ini saat menjalankan perintah nohup:

nohup: command not found

Anda dapat mencoba menginstal paket di bawah ini sesuai dengan pilihan distribusi Anda:

Distribusi Perintah
OS X brew install coreutils
Debian apt-get install coreutils
Ubuntu apt-get install coreutils
Alpin apk tambahkan coreutils
Linux Arch pacman -S coreutils
Kali Linux apt-get install coreutils
CentOS yum install coreutils
Fedora dnf install coreutils
Raspbian apt-get install coreutils

Contoh

1. Menjalankan nohup tanpa menentukan file output

Mari kita lakukan contoh dan uji bahwa itu benar-benar terus berfungsi setelah Anda keluar. Kami akan memulai skrip yang disebut script.sh. Isi naskahnya adalah sebagai berikut:

# cat script.sh
#!/bin/sh
while(true)
do
	echo "Hello World!"
	sleep 10
done

Mari jalankan skrip secara backgroup dengan perintah nohup:

# nohup script.sh & 
[1] 179 
$ nohup: appending output to `nohup.out`

Seperti yang Anda lihat di atas, kami belum menentukan file output. Jadi output standar dan kesalahan standar secara default masuk ke file nohup.out di direktori tempat skrip dipanggil. Juga nomor 179 Menentukan ID proses (PID) pekerjaan. PID ini dapat diverifikasi dalam output perintah “ps -ef” seperti yang ditunjukkan di bawah ini.

Sekarang keluar dari shell, login kembali, dan jalankan perintah berikut:

$ ps x | grep script.sh
179  ?   S N  0:01 sh /root/script.sh 
506  p2 S     0:00 grep script.sh

Skripnya masih berfungsi. Gunakan “ps -ef | grep ps1” jika sistem Anda tidak mendukung ps x. Anda juga dapat memeriksa file keluaran nohup.out untuk konfirmasi lebih lanjut.

# cat nohup.out
Hello World!
Hello World!
Hello World!
Hello World!
...
CATATAN :Jika Anda menjalankan perintah lain menggunakan nohup, output akan ditambahkan ke file nohup.out yang ada. Berhati-hatilah saat menjalankan beberapa perintah dari direktori yang sama, karena semua output dikirim ke file nohup.out yang sama, yang dapat membingungkan.

Menjalankan nohup dengan menentukan file keluaran

Sekarang skrip di atas juga dapat menjalankan perintah nohup dan menentukan file output khusus seperti yang ditunjukkan di bawah ini:

# nohup script.sh > /tmp/script.out 2>&1
[1] 14235

Kesimpulan

Jika Anda sedang menjalankan sebuah proses dan Anda tidak berpikir itu akan selesai pada saat Anda keluar untuk hari itu, gunakan perintah nohup. Nohup akan terus memproses ketika Anda keluar dari akun Anda. Nohup berarti tidak menutup telepon .


Linux
  1. manajer langganan:perintah tidak ditemukan

  2. dnf:perintah tidak ditemukan

  3. bc:perintah tidak ditemukan

  1. dpkg:perintah tidak ditemukan

  2. rm:perintah tidak ditemukan

  3. mv:perintah tidak ditemukan

  1. ifrename:perintah tidak ditemukan

  2. netstat:perintah tidak ditemukan

  3. ln:perintah tidak ditemukan