Killall
Tõnu Erm AK21 2012
killall - Protsesside tapmine nime järgi
Kirjeldus:
Siinkohal käsitleme Killall käsku Ubuntu Linux 12.04 keskkonnas, teistes keskkondades võib see käsk teha hoopis muud.
Killall saadab signaali kõigile töötavatele protsessidele, mis vastavad protsessinimele. Kui signaali pole eraldi sisestatud, saadab protsessile SIGTERM käsu.
Signaalid saab esitada kas nime järgi(-HUP) või numbrina(-1). Vaikimisi saadetakse SIGTERM(-15) signaal.
Kui käsu nimes on / siis tapetakse protsess, mis ette antud faili kasutab.
killall tagastab null tagastuskoodi kui vähemalt üks protsess on tapetud.
killall protess ei tapa kunagi iseend, küll aga teisi killall protsesse.
SYNOPSIS
killall [-e,--exact] [-g,--process-group] [-i,--interactive] [-q,--quiet] [-v,--verbose] [-w,--wait] [-V,--version] [-S,--sid] [-c,--context] [-s,--signal signal] [--] name ... killall -l killall -V,--version
OPTIONS
-e, --exact(täpne vaste)
Nõuab täpset vastet väga pikkade prostsessinimede puhul. Kui käsu nimi on pikem kui 15 sümbolit, siis täielik nimi pole võimalik. Sellistel juhtudel killall tapab kõik protsessid, mis vastavad esimestele 15 tähemärgile. Sellistel juhtudel kasutades -e lippu sellised protsessid jäetakse vahele. Killall kuvab kõik vahele jäetud kirjed kui on lisatud lipp -v.
-g, --process group (protsessi grupp)
Tapab protsessi grupi kuhu protsess kuulub. Kill signaal saadetakse ainult korra protsessi grupile, isegi siis kui mitmeid protsesse kuulub samasse protsessi gruppi.
-i, --interactive(interaktiivne)
Küsib üle kas soovite protsessi tappa. Näide:
killall -i htop Kill htop(4462) ? (y/N)
-l, --list(nimekiri)
Näitab nimekirja kõigist võimalikest saadetavates signaalidest.
Näide:
killall -l HUP INT QUIT ILL TRAP ABRT IOT BUS FPE KILL USR1 SEGV USR2 PIPE ALRM TERM STKFLT CHLD CONT STOP TSTP TTIN TTOU URG XCPU XFSZ VTALRM PROF WINCH IO PWR SYS UNUSED
-q, --quiet(vaikne)
Ei pahanda kui ei leia ühtegi protsessi mida tappa.
-v, --verbose(väga jutukas)
Teatab kas signaal on edukalt saadetud.
Näide:
killall -v htop Killed htop(4462) with signal 15
-V, --version(versioon)
Näitab versiooni infot.
Näide:
killall -V killall (PSmisc) 22.15 Copyright (C) 1993-2005 Werner Almesberger and Craig Small PSmisc comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under the terms of the GNU General Public License. For more information about these matters, see the files named COPYING.
-w, --wait(ootab)
Ootab kuni kõik protsessid on tapetud. Killall kontrollib iga sekundi järel kas mõni tapetud protsess on veel elus, seda niikaua kuni kõik on tapetud. Killall jääbki ootama igavesti kui protsess on ignoreeritud, ei reageeri, või protsess on zombi olekus.
Signaalid mida saame saata protsessidele:
Signaal #väärtus käsk kirjeldus ---------------------------------------------------------------------- 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 tty SIGTTIN 21,21,26 Stop tty input for background process SIGTTOU 22,22,27 Stop tty output for background process
Signaale SIGKILL ja SIGSTOP ei saa püüda, blokeerida ega ignoreerida.
Saadetav signaali number tuleb kirjutada " - " märgiga.
Näide, saadame protsessile htop kill(-9) signaali:
killall -9 htop [1]+ Killed htop
Näide, saadame protsessile htop kill signaali:
killall -SIGKILL htop [1]+ Killed htop
Kasutatud materjal:
http://www.kernel.org/doc/man-pages/online/pages/man7/signal.7.html
http://en.wikipedia.org/wiki/Killall
http://linux.about.com/library/cmd/blcmdl1_killall.htm
http://akadeemia.kakupesa.net/OSAS/loengud/