AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / unix / Perguntas / 754460
Accepted
showkey
showkey
Asked: 2023-08-20 10:55:19 +0800 CST2023-08-20 10:55:19 +0800 CST 2023-08-20 10:55:19 +0800 CST

Por que o processo ainda pode ser listado depois de matá-los?

  • 772

Liste todos os processos em execução no 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

Mate todos:

debian@debian:~$ sudo kill 14482
debian@debian:~$ sudo kill 15174
debian@debian:~$ sudo kill 15641

Lista novamente:

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

Por que o processo ainda pode ser listado depois de matá-los?

debian
  • 1 1 respostas
  • 31 Views

1 respostas

  • Voted
  1. Best Answer
    Stewart
    2023-08-20T14:26:15+08:002023-08-20T14:26:15+08:00

    Confira 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.
    

    No topo está escrito: "enviar um sinal para um processo". Isso não significa que o processo será encerrado, apenas que um sinal será enviado a ele.

    O sinal padrão é SIGTERM. Segundo man signal.7, SIGTERMé capturável. Isso significa que o programa recebe uma solicitação para parar, então o programa tem a oportunidade de fazer algo a respeito. Se for um banco de dados, talvez salve antes de parar.

    Se o programa não manipular SIGTERM, ou optar por fazer algo diferente de parar, você obterá o comportamento que vê.

    Existem outros sinais que você pode tentar enviar. SIGINT(2) é a mesma coisa que você envia ao usar CTRL+C no terminal. Um comum, e provavelmente o que você deseja, é SIGKILL(9). SIGKILLé um dos poucos sinais que não será propagado para o processo. Em vez disso, é um sinal para o kernel, pedindo-lhe para encerrar o processo. Nesse caso, não importa se o processo está codificado para manipular SIGTERM, ele será interrompido pelo kernel sem ser notificado. A desvantagem é que se ele precisar salvar seu trabalho ou notificar os pares de que está sendo encerrado, não terá essa oportunidade. O uso é assim:

    $ sudo kill -9 14482
    or
    $ sudo kill -KILL 94471
    

    man signal.7tem mais detalhes. Se a sua máquina não for igual à minha, use a página de manual da sua máquina para referência.

       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.
    
    • 2

relate perguntas

  • Configuração do GRUB para reconhecer diferentes ambientes de desktop (instalações) da mesma distribuição Linux

  • astyle não altera a formatação do arquivo de origem

  • Recebendo e-mail em um novo Debian fresco

  • Debian Stretch: gnome-software segfault em libgs_plugin_systemd-updates.so

  • Como digitar ü no Pinyin IME?

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Possível firmware ausente /lib/firmware/i915/* para o módulo i915

    • 3 respostas
  • Marko Smith

    Falha ao buscar o repositório de backports jessie

    • 4 respostas
  • Marko Smith

    Como exportar uma chave privada GPG e uma chave pública para um arquivo

    • 4 respostas
  • Marko Smith

    Como podemos executar um comando armazenado em uma variável?

    • 5 respostas
  • Marko Smith

    Como configurar o systemd-resolved e o systemd-networkd para usar o servidor DNS local para resolver domínios locais e o servidor DNS remoto para domínios remotos?

    • 3 respostas
  • Marko Smith

    apt-get update error no Kali Linux após a atualização do dist [duplicado]

    • 2 respostas
  • Marko Smith

    Como ver as últimas linhas x do log de serviço systemctl

    • 5 respostas
  • Marko Smith

    Nano - pule para o final do arquivo

    • 8 respostas
  • Marko Smith

    erro grub: você precisa carregar o kernel primeiro

    • 4 respostas
  • Marko Smith

    Como baixar o pacote não instalá-lo com o comando apt-get?

    • 7 respostas
  • Martin Hope
    user12345 Falha ao buscar o repositório de backports jessie 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl Por que a maioria dos exemplos do systemd contém WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky Como exportar uma chave privada GPG e uma chave pública para um arquivo 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll status systemctl mostra: "Estado: degradado" 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim Como podemos executar um comando armazenado em uma variável? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S Por que /dev/null é um arquivo? Por que sua função não é implementada como um programa simples? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 Como ver as últimas linhas x do log de serviço systemctl 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - pule para o final do arquivo 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla Por que verdadeiro e falso são tão grandes? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis Substitua a string em um arquivo de texto enorme (70 GB), uma linha 2017-12-30 06:58:33 +0800 CST

Hot tag

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve