vlc를 실행하는 모든 프로세스를 나열합니다.
debian@debian:~$ ps aux |grep vl[c]
debian 14482 0.1 2.2 2882968 136428 ? Sl 10:19 0:02 vlc -I telnet --telnet-host 192.168.31.167 --telnet-port 4212 --telnet-password admin
debian 15174 0.2 2.4 2881576 145368 ? Ssl 10:32 0:03 vlc -d -I telnet --telnet-host 192.168.31.167 --telnet-port 4212 --telnet-password admin
debian 15641 0.3 2.4 2896668 146380 ? SLsl 10:42 0:01 vlc -d -I telnet --telnet-host 192.168.31.167 --telnet-port 4212 --telnet-password admin
그들 모두를 죽일:
debian@debian:~$ sudo kill 14482
debian@debian:~$ sudo kill 15174
debian@debian:~$ sudo kill 15641
다시 나열:
debian@debian:~$ ps aux |grep vl[c]
debian 14482 0.1 2.2 2882968 136428 ? Sl 10:19 0:02 vlc -I telnet --telnet-host 192.168.31.167 --telnet-port 4212 --telnet-password admin
debian 15174 0.2 2.4 2881576 145368 ? Ssl 10:32 0:03 vlc -d -I telnet --telnet-host 192.168.31.167 --telnet-port 4212 --telnet-password admin
debian 15641 0.3 2.4 2896668 146380 ? SLsl 10:42 0:01 vlc -d -I telnet --telnet-host 192.168.31.167 --telnet-port 4212 --telnet-password admin
프로세스를 종료한 후에도 여전히 나열되는 이유는 무엇입니까?
답변1
확인하다 man kill
:
KILL(1) User Commands KILL(1)
NAME
kill - send a signal to a process
SYNOPSIS
kill [options] <pid> [...]
DESCRIPTION
The default signal for kill is TERM. Use -l or -L to list available
signals. Particularly useful signals include HUP, INT, KILL, STOP,
CONT, and 0. Alternate signals may be specified in three ways: -9,
-SIGKILL or -KILL. Negative PID values may be used to choose whole
process groups; see the PGID column in ps command output. A PID of
-1 is special; it indicates all processes except the kill process it‐
self and init.
맨 위에는 "처리할 신호 보내기"가 있습니다. 이는 프로세스가 종료된다는 의미가 아니라 단지 신호가 전송된다는 의미입니다.
기본 신호는 입니다 SIGTERM
. man signal.7
에 따르면 SIGTERM
캡처 가능합니다. 이는 프로그램이 중지 요청을 받은 다음 이에 대한 작업을 수행할 수 있는 기회가 있음을 의미합니다. 데이터베이스라면 중지하기 전에 저장되었을 수도 있습니다.
프로그램이 을 처리하지 않거나 SIGTERM
중지 이외의 작업을 선택하면 현재 보고 있는 동작이 발생합니다.
다른 신호를 보내볼 수도 있습니다. SIGINT
(2) 터미널에서 CTRL+C를 사용하여 보내는 것과 동일합니다. 일반적인 것 SIGKILL
(9)이 아마도 당신이 원하는 것일 것입니다. SIGKILL
프로세스에 전파되지 않는 몇 가지 신호 중 하나입니다. 대신 프로세스를 종료하라는 신호를 커널에 보냅니다. 이 경우 프로세스가 핸들로 코딩되었는지 여부는 중요하지 않으며 SIGTERM
알림 없이 커널에 의해 중지됩니다. 단점은 작업을 저장해야 하거나 종료된다는 사실을 동료에게 알리는 경우 기회가 없다는 것입니다. 사용법은 이렇습니다.
$ sudo kill -9 14482
or
$ sudo kill -KILL 94471
man signal.7
자세한 내용이 있습니다. 귀하의 컴퓨터가 내 컴퓨터와 다른 경우 해당 컴퓨터의 매뉴얼 페이지를 참조로 사용하십시오.
Standard signals
Linux supports the standard signals listed below. The second column
of the table indicates which standard (if any) specified the signal:
"P1990" indicates that the signal is described in the original
POSIX.1-1990 standard; "P2001" indicates that the signal was added in
SUSv2 and POSIX.1-2001.
Signal Standard Action Comment
───────────────────────────────────────────────────────────────────────
─
SIGABRT P1990 Core Abort signal from abort(3)
SIGALRM P1990 Term Timer signal from alarm(2)
SIGBUS P2001 Core Bus error (bad memory access)
SIGCHLD P1990 Ign Child stopped or terminated
SIGCLD - Ign A synonym for SIGCHLD
SIGCONT P1990 Cont Continue if stopped
SIGEMT - Term Emulator trap
SIGFPE P1990 Core Floating-point exception
SIGHUP P1990 Term Hangup detected on controlling terminal
or death of controlling process
SIGILL P1990 Core Illegal Instruction
SIGINFO - A synonym for SIGPWR
SIGINT P1990 Term Interrupt from keyboard
SIGIO - Term I/O now possible (4.2BSD)
SIGIOT - Core IOT trap. A synonym for SIGABRT
SIGKILL P1990 Term Kill signal
SIGLOST - Term File lock lost (unused)
SIGPIPE P1990 Term Broken pipe: write to pipe with no
readers; see pipe(7)
SIGPOLL P2001 Term Pollable event (Sys V);
synonym for SIGIO
SIGPROF P2001 Term Profiling timer expired
SIGPWR - Term Power failure (System V)
SIGQUIT P1990 Core Quit from keyboard
SIGSEGV P1990 Core Invalid memory reference
SIGSTKFLT - Term Stack fault on coprocessor (unused)
SIGSTOP P1990 Stop Stop process
SIGTSTP P1990 Stop Stop typed at terminal
SIGSYS P2001 Core Bad system call (SVr4);
see also seccomp(2)
SIGTERM P1990 Term Termination signal
SIGTRAP P2001 Core Trace/breakpoint trap
SIGTTIN P1990 Stop Terminal input for background process
SIGTTOU P1990 Stop Terminal output for background process
SIGUNUSED - Core Synonymous with SIGSYS
SIGURG P2001 Ign Urgent condition on socket (4.2BSD)
SIGUSR1 P1990 Term User-defined signal 1
SIGUSR2 P1990 Term User-defined signal 2
SIGVTALRM P2001 Term Virtual alarm clock (4.2BSD)
SIGXCPU P2001 Core CPU time limit exceeded (4.2BSD);
see setrlimit(2)
SIGXFSZ P2001 Core File size limit exceeded (4.2BSD);
see setrlimit(2)
SIGWINCH - Ign Window resize signal (4.3BSD, Sun)
The signals SIGKILL and SIGSTOP cannot be caught, blocked, or ig‐
nored.