다른 Htop Kill 신호는 무엇입니까?


9

최근에을 사용하기 시작했고 htop프로세스를 종료해야했지만 프로세스를 누를 때이 F9옵션 목록이 표시되어 기본적으로 선택된 옵션을 선택했지만 무엇을 알지 못합니다. 실제로 작동하지만 작동합니다.

htop 신호 옵션

정말 내 질문은, 이러한 다른 옵션은 무엇이며 프로세스를 종료하는 데 가장 적합한 방법은 무엇입니까?


답변:


11

첫 시도

SIGTERM      15       Term    Termination signal

이것이 작동하지 않으면

SIGKILL       9       Term    Kill signal

에서 man 7 signal

First the signals described in the original POSIX.1-1990 standard.

Signal     Value     Action   Comment
──────────────────────────────────────────────────────────────────────
SIGHUP        1       Term    Hangup detected on controlling terminal
                              or death of controlling process
SIGINT        2       Term    Interrupt from keyboard
SIGQUIT       3       Core    Quit from keyboard
SIGILL        4       Core    Illegal Instruction
SIGABRT       6       Core    Abort signal from abort(3)
SIGFPE        8       Core    Floating point exception
SIGKILL       9       Term    Kill signal
SIGSEGV      11       Core    Invalid memory reference
SIGPIPE      13       Term    Broken pipe: write to pipe with no
                              readers
SIGALRM      14       Term    Timer signal from alarm(2)
SIGTERM      15       Term    Termination signal
SIGUSR1   30,10,16    Term    User-defined signal 1
SIGUSR2   31,12,17    Term    User-defined signal 2
SIGCHLD   20,17,18    Ign     Child stopped or terminated
SIGCONT   19,18,25    Cont    Continue if stopped
SIGSTOP   17,19,23    Stop    Stop process
SIGTSTP   18,20,24    Stop    Stop typed at terminal
SIGTTIN   21,21,26    Stop    Terminal input for background process
SIGTTOU   22,22,27    Stop    Terminal output for background process

The signals SIGKILL and SIGSTOP cannot be caught, blocked, or
ignored.

Next the signals not in the POSIX.1-1990 standard but described in
SUSv2 and POSIX.1-2001.

Signal       Value     Action   Comment
────────────────────────────────────────────────────────────────────
SIGBUS      10,7,10     Core    Bus error (bad memory access)
SIGPOLL                 Term    Pollable event (Sys V).
                                Synonym for SIGIO
SIGPROF     27,27,29    Term    Profiling timer expired
SIGSYS      12,31,12    Core    Bad argument to routine (SVr4)
SIGTRAP        5        Core    Trace/breakpoint trap
SIGURG      16,23,21    Ign     Urgent condition on socket (4.2BSD)
SIGVTALRM   26,26,28    Term    Virtual alarm clock (4.2BSD)
SIGXCPU     24,24,30    Core    CPU time limit exceeded (4.2BSD)
SIGXFSZ     25,25,31    Core    File size limit exceeded (4.2BSD)

사용하기보다 더 낫다 할 수 있습니다 SIGINTCtrl + C를 눌러 유사하다, 여전히 질서 프로그램 마무리를 할 수 있습니다. Gurobi를 사용하여 최적화 실행을 종료 할 때 사용합니다. 즉시 프로그램을 중지하지만 가장 많이 찾은 솔루션은 여전히 ​​파일에 기록됩니다.
CGFoX

5

이것들은 일반적으로 프로세스 신호이며 관련이 아니라 htop명령을 사용하여 모든 신호를 나열 할 수 있습니다

kill -l

예를 들어 source :

-1 또는 -HUP-이 인수는 kill이 "Hang Up"신호를 프로세스로 보냅니다. 이것은 아마도 모뎀 / 다이얼 시대에서 비롯된 것입니다. 이 프로세스를 실제로 듣고 처리하도록 프로세스를 프로그래밍해야합니다. 대부분의 데몬은 그러한 신호를받을 때 구성을 다시 읽도록 프로그래밍되어 있습니다. 어쨌든; 이것은 가장 안전한 킬 신호일 가능성이 높습니다.

-2 또는 -SIGINT-일부 프로그램을 시작하고 실행 중에 Ctrl + C를 누르는 것과 같습니다. 대부분의 프로그램이 중지되고 데이터가 손실 될 수 있습니다.

-9 또는 -KILL-커널은 프로세스에 알리지 않고 프로세스를 해제합니다. 이와 같은 부정한 종료는 데이터 손실을 초래할 수 있습니다. 이것은 "가장 어려운", "가장 거친"가장 안전하지 않은 킬 신호이며, 막을 수없는 것으로 보이는 것을 막기 위해서만 사용해야합니다.

-15 또는 -TERM-프로세스에 수행중인 작업을 중지하고 종료하도록 지시하십시오. 신호를 지정하지 않으면이 신호가 사용됩니다. 수행하기에는 상당히 안전하지만 "-1"또는 "-HUP"으로 시작하는 것이 좋습니다.

signal.h파일 목록 :

+--------------------+------------------+
 *  |  POSIX signal      |  default action  |
 *  +--------------------+------------------+
 *  |  SIGHUP            |  terminate   |
 *  |  SIGINT            |  terminate   |
 *  |  SIGQUIT           |  coredump    |
 *  |  SIGILL            |  coredump    |
 *  |  SIGTRAP           |  coredump    |
 *  |  SIGABRT/SIGIOT    |  coredump    |
 *  |  SIGBUS            |  coredump    |
 *  |  SIGFPE            |  coredump    |
 *  |  SIGKILL           |  terminate(+)    |
 *  |  SIGUSR1           |  terminate   |
 *  |  SIGSEGV           |  coredump    |
 *  |  SIGUSR2           |  terminate   |
 *  |  SIGPIPE           |  terminate   |
 *  |  SIGALRM           |  terminate   |
 *  |  SIGTERM           |  terminate   |
 *  |  SIGCHLD           |  ignore      |
 *  |  SIGCONT           |  ignore(*)   |
 *  |  SIGSTOP           |  stop(*)(+)      |
 *  |  SIGTSTP           |  stop(*)     |
 *  |  SIGTTIN           |  stop(*)     |
 *  |  SIGTTOU           |  stop(*)     |
 *  |  SIGURG            |  ignore      |
 *  |  SIGXCPU           |  coredump    |
 *  |  SIGXFSZ           |  coredump    |
 *  |  SIGVTALRM         |  terminate   |
 *  |  SIGPROF           |  terminate   |
 *  |  SIGPOLL/SIGIO     |  terminate   |
 *  |  SIGSYS/SIGUNUSED  |  coredump    |
 *  |  SIGSTKFLT         |  terminate   |
 *  |  SIGWINCH          |  ignore      |
 *  |  SIGPWR            |  terminate   |
 *  |  SIGRTMIN-SIGRTMAX |  terminate       |
 *  +--------------------+------------------+
 *  |  non-POSIX signal  |  default action  |
 *  +--------------------+------------------+
 *  |  SIGEMT            |  coredump    |
 *  +--------------------+------------------+

더 읽을 :


목록에서 당신은 그들 중 대부분이 동일하게 보이므로 동일한 일을하는 것 사이의 차이점은 무엇입니까?

1
각각의 트랩 신호는 차이가 있지만 결과적으로 가장 동일합니다. 참고 자료와 설명서를 모두 보려면 설명서를 참조하십시오. 실제로 각 신호에 대해 책을 쓸 수 있습니다!
Maythux
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.