什么是不同的 htop 终止信号?

11 process kill htop

我最近开始使用htop,一直需要杀进程,但是在按下F9进程时,它一直给我这个选项列表,我只是选择了默认选择的一个,但我不知道是什么确实如此,尽管它似乎有效:

htop 信号选项

所以我的问题是,这些不同的选项是什么,哪个最适合用来终止进程?

A.B*_*.B. 12

第一次尝试

SIGTERM      15       Term    Termination signal
Run Code Online (Sandbox Code Playgroud)

如果这不起作用

SIGKILL       9       Term    Kill signal
Run Code Online (Sandbox Code Playgroud)

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)
Run Code Online (Sandbox Code Playgroud)


May*_*hux 5

这些是一般的过程信号,而不仅仅是与 相关htop,您可以使用命令列出所有信号

kill -l
Run Code Online (Sandbox Code Playgroud)

例如来源

-1 或 -HUP - 此参数使 kill 向进程发送“挂断”信号。这可能源于调制解调器/拨入时代。必须对流程进行编程以实际聆听此流程并对其进行处理。大多数守护进程被编程为在接收到这样的信号时重新读取它们的配置。反正; 这很可能是最安全的杀伤信号,它不应该阻碍任何东西。

-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    |
 *  +--------------------+------------------+
Run Code Online (Sandbox Code Playgroud)

进一步阅读: