Provided by: manpages-nl-dev_4.27.0-1_all bug

NAAM

       kill - zend een signaal naar een proces

BIBLIOTHEEK

       Standard C bibliotheek  (libc, -lc)

SAMENVATTING

       #include <stdio.h>

       int kill(pid_t pid, int sig);

   Feature Test Macro´s eisen in  glibc (zie feature_test_macros(7)):

       kill():
           _POSIX_C_SOURCE

BESCHRIJVING

       De kill() systeem aanroep kan gebruikt worden om elk signaal naar elke proces groep of proces te zenden.

       Als  pid  positief  is,  dan  wordt  het  signaal  sig naar het proces met het ID gespecificeerd door pid
       verzonden.

       Als pid gelijk is aan 0, dan wordt sig naar elk proces gezonden  in  de  proces  groep  van  het  huidige
       proces.

       Als  pid  gelijk  is  aan -1 dan wordt sig naar elk proces gestuurd mits het huidige proces gerechtigd is
       signalen te sturen, behalve voor het proces 1 (init), maar zie hieronder.

       Als pid kleiner is dan -1 dan wordt sig gezonden naar elk proces in de proces groep -pid.

       Als sig 0 is dan wordt geen signaal verzonden, maar bestaans- en rechten controles worden nog uitgevoerd;
       dit kan gebruikt worden om te controleren op het bestaan van een proces ID of een proces groep ID die  de
       aanroeper mag signaleren.

       Om  een proces toe te staan signalen te versturen moet het ofwel geprivilegieerd zijn (onder Linux: bezit
       van de CAP_KILL capaciteit in de gebruiker naam ruimte van  het  doel  proces),  of  moet  het  echte  of
       effective  gebruiker ID van het versturende proces gelijk aan het echte of opgeslagen set-user-ID van het
       doel proces zijn. In het geval van een SIGCONT, volstaat het als de zendende en ontvangende processen tot
       dezelfde sessie behoren. (Historisch waren de regels verschillend; zie OPMERKINGEN.)

EIND WAARDE

       Bij succes (minstens een signaal werd verstuurd), wordt nul teruggegeven. Bij falen wordt -1 teruggegeven
       en wordt errno overeenkomstig gezet.

FOUTEN

       EINVAL Een ongeldig signaal werd opgegeven.

       EPERM  Het proces heeft geen toestemming om een signaal naar welk ontvangend proces dan ook te zenden.

       ESRCH  De doel proces of proces-groep bestaat niet. Merk op dat een bestaand proces een zombie kan  zijn,
              een proces dat al beëindigd is, maar waar nog niet op gewait()d {gewacht} wordt.

VOLDOET AAN

       POSIX.1-2008.

GESCHIEDENIS

       POSIX.1-2001, SVr4, 4.3BSD.

   Linux notities
       Over  de  diverse  kernel  versies  heeft  Linux verschillende regels afgedwongen voor de rechten die een
       niet-geprivilegieerd proces vereist om signalen naar andere processen te sturen  In de  kernels  1.0  tot
       1.2.2  mocht  een signaal verstuurd worden als het effectieve gebruiker ID van de zender overeen kwam het
       het effectieve gebruiker ID van het doel, of als het echte  gebruiker  ID  overeen  kwam  met  het  echte
       gebruiker  ID  van  het  doel.  Van  kernel  1.2.3  tot 1.3.77 mocht een signaal verstuurd worden als het
       effectieve gebruiker ID van de zender overeen kwam met ofwel het echte ofwel het effectieve gebruiker  ID
       van het doel. De huidige regels, die voldoen aan POSIX.1, werden aangepast in kernel 1.3.78.

OPMERKINGEN

       De  enige  signalen die verstuurd kunnen worden naar het proces ID 1, het init proces, zie die voor welke
       init expliciet signaal verwerkers installeerde. Dit werd gedaan om te verzekeren dat het systeem niet per
       ongelijk afgesloten word.

       POSIX.1 vereist dat kill(-1,sig)  sig verstuurd aan alle processen waarnaar het huidige  proces  signalen
       mag  versturen,  behalve  mogelijk voor sommige implementatie afhankelijke systeem processen. Linux staat
       toe dat een proces signalen aan zichzelf mag versturen, maar op Linux signaleert de aanroep kill(-1, sig)
       het roepende proces niet.

       POSIX.1 vereist dat als een proces een signaal naar zichzelf stuurt, en  de  sturende  thread  heeft  het
       signaal  niet geblokkeerd en geen andere thread heeft het niet geblokkeerd of wacht op het in sigwait(3),
       dan moet minstens een niet geblokkeerd signaal worden afgeleverd aan de sturende thread voor  dat  kill()
       terugkeert.

BUGS

       In  de  2.6  kernels tot en met 2.6.7 zat een bug die inhield dat bij het versturen van signalen naar een
       proces groep dat kill() faalde met de fout EPERM als de aanroeper niet de rechten had om een signaal naar
       ieder (liever dan elk) van de leden van een proces groep. Ondanks het melden   van  de  fout,   werd  het
       signaal afgeleverd bij alle processen voor welk de zender de rechten had om te sturen.

ZIE OOK

       kill(1),   _exit(2),   pidfd_send_signal(2),   signal(2),   tkill(2),  exit(3),  killpg(3),  sigqueue(3),
       capabilities(7), credentials(7), signal(7)

VERTALING

       De Nederlandse vertaling van deze handleiding is geschreven door Jos  Boersema  <joshb@xs4all.nl>,  Mario
       Blättermann <mario.blaettermann@gmail.com> en Luc Castermans <luc.castermans@gmail.com>

       Deze  vertaling  is  vrije  documentatie;  lees  de GNU General Public License Version 3 of later over de
       Copyright-voorwaarden. Er is geen AANSPRAKELIJKHEID.

       Indien U fouten in de vertaling van deze handleiding zou  vinden,  stuur  een  e-mail  naar  debian-l10n-
       dutch@lists.debian.org.

Linux man-pagina's 6.9.1                           2 mei 2024                                            kill(2)