Provided by: manpages-nl-dev_4.15.0-9_all bug

NAAM

       syslog - lees en/of wis kernel bericht-ring-buffer; zet "console_loglevel"

SAMENVATTING

       #include <sys/klog.h>        /* Definitie van SYSLOG_* constanten */
       #include <sys/syscall.h>     /* Definitie van SYS_* constanten */
       #include <unistd.h>

       int syscall(SYS_syslog, int type, char *bufp, int len);

       /* Het glibc interface */
       #include <sys/klog.h>

       int klogctl(int type, char *bufw, int len);

BESCHRIJVING

       Opmerking:  Mogelijk  zoekt u de C bibliotheek functie syslog(), die praat met syslogd(8),
       zie syslog(3) voor details.

       Deze pagina beschrijft de kernel syslog() systeem aanroep, die wordt gebruikt om de kernel
       printk()  buffer  te  controleren, de glibc omwikkel functie voor de systeem aanroep wordt
       klogctl() genoemd.

   De kernel log buffer
       De kernel heeft een ring buffer met lengte  LOG_BUF_LEN  waarin  berichten  die  opgegeven
       werden  als  argument  aan  de  kernel  functie  printk() bewaard worden (ongeacht hun log
       niveau). In vroegere kernels had LOG_BUF_LEN de waarde 4096; vanaf kernel 1.3.54  was  dit
       8192;  vanaf  kernel  2.1.113  was het 16384; en vanaf kernel 2.4.23/2.6 is deze waarde de
       kernel configuratie optie (CONFIG_LOG_BUF_SHIFT, standaard waarde is  afhankelijk  van  de
       architectuur).   Vanaf  Linux 2.6.6, kan de grootte worden opgevraagd met commando type 10
       (zie hieronder).

   Commando's
       Het type argument bepaald de actie die deze functie uitvoert. De lijst  hieronder  bepaald
       de  waarden van type. De symbolische namen worden gedefinieerd in de kernel broncode, maar
       worden niet geëxporteerd naar de gebruiker; u zult ofwel  getallen  moeten  gebruiken,  of
       zelf de namen definiëren.

       SYSLOG_ACTION_CLOSE (0)
              Sluit het log. Momenteel een NOP.

       SYSLOG_ACTION_OPEN (1)
              Open het log. Momenteel een NOP.

       SYSLOG_ACTION_READ (2)
              Lees  van  de  log.  De  aanroep wacht totdat de kernel log buffer niet leeg is, en
              leest vervolgens op zijn meest len bytes in de  buffer  aangewezen  door  bufp.  De
              aanroep  retourneert  het aantal gelezen bytes. Gelezen bytes van de log verdwijnen
              uit de log buffer: de informatie kan slecht  eenmaal  gelezen  worden.  Dit  is  de
              functie  die uitgevoerd wordt door de kernel wanneer een gebruikers programma leest
              van proc/kmsg.

       SYSLOG_ACTION_READ_ALL (3)
              Lees alle resterende berichten van de ring buffer, en plaats ze in een  buffer  die
              aangewezen wordt door bufp. De aanroep leest de laatste len bytes van de log buffer
              (niet destructief), maar leest niet meer dan was geschreven in de buffer sinds  het
              laatste  "wis  ring  buffer"  commando  (zie  commando  5  hieronder).  De  aanroep
              retourneert het aantal gelezen bytes.

       SYSLOG_ACTION_READ_CLEAR (4)
              Lees en wis alle resterende berichten in de ring buffer. De  aanroep  doet  precies
              hetzelfde  als  voor  een type van 3, maar voert ook het "wis ring buffer" commando
              uit.

       SYSLOG_ACTION_CLEAR (5)
              De aanroep voert alleen het  "wis  ring  buffer"  commando  uit.  De  bufp  en  len
              argumenten worden genegeerd.

              Dit commando wist de ring buffer niet echt.  In plaats daarvan zet het een boekhoud
              variabele  in de kernel die de resultaten bepaald die teruggegeven worden  door  de
              commando´s  3  3  (SYSLOG_ACTION_READ_ALL)   en  4 (SYSLOG_ACTION_READ_CLEAR).  Dit
              commando  heeft  geen  effect  op   commando´s   2   (SYSLOG_ACTION_READ)    en   9
              (SYSLOG_ACTION_SIZE_UNREAD).

       SYSLOG_ACTION_CONSOLE_OFF (6)
              Het  commando  bewaart  de  huidige  waarde  van console_loglevel en zet vervolgens
              console_loglevel op minimum_console_loglevel, zodat er geen berichten op de console
              getoond  worden.  Voor Linux 2.6.32, zet dit commando eenvoudig console_loglevel op
              minimum_console_loglevel.  Zie de discussie over/proc/sys/kernel/printk, hieronder.

              De bufp en len argumenten worden genegeerd.

       SYSLOG_ACTION_CONSOLE_ON (7)
              Als een voorgaand SYSLOG_ACTION_CONSOLE_OFF commando wordt uitgevoerd, dan herstelt
              dit  commando  console_loglevel  naar de waarde die werd bewaard door dat commando.
              Voor  Linux  2.6.32,  zette  die  commando  eenvoudig   weg   console_loglevel   op
              default_console_loglevel.    Zie   de   discussie   over   /proc/sys/kernel/printk,
              hieronder.

              De bufp en len argumenten worden genegeerd.

       SYSLOG_ACTION_CONSOLE_LEVEL (8)
              Deze aanroep zet  console_loglevel op de waarde gegeven  in  len,   dit  dient  een
              geheel  getal  te zijn met een waarde tussen 1 and 8 (inclusief).  De kernel dwingt
              stilzwijgend een minimum waarde van minimum_console_loglevel al voor len.   Zie  de
              log level sectie voor details.  Het bufp argument wordt genegeerd.

       SYSLOG_ACTION_SIZE_UNREAD (9) (sinds Linux 2.4.10)
              De  aanroep retourneert het aantal bytes die momenteel beschikbaar zijn om te lezen
              van de kernel log buffer via het commando 2   (SYSLOG_ACTION_READ).   De   bufp  en
              len argumenten worden genegeerd.

       SYSLOG_ACTION_SIZE_BUFFER (10) (sinds Linux 2.6.6)
              Het commando retourneert de totale grootte van de kernel log buffer. De bufp en len
              argumenten worden genegeerd.

       Alle commando´s behalve 3 en 10 vereisen privilege.   In  de  Linux  kernel  voor  2.6.37,
       commando  types 3 en 10 zijn toegestaan voor niet-geprivilegieerde processen;  vanaf Linux
       2.6.37, worden deze commando´s alleen toegestaan aan niet-geprivilegieerde processen   als
       /proc/sys/kernel/dmesg_restrict   de   waarde   0  heeft.  Voor  Linux  2.6.37,  betekende
       "geprivilegieerd" dat de aanroeper de CAP_SYS_ADMIN capacitiet  had.  Vanaf  Linux  2.6.37
       betekende  "geprivilegieerd"  dat  de  aanroeper  hetzij  de  CAP_SYS_ADMIN capaciteit (nu
       verouderd voor dit doel) of de (nieuwe) CAP_SYSLOG capaciteit.

   /proc/sys/kernel/printk
       /proc/sys/kernel/printk is een schrijfbaar bestand dat vier gehele  getallen  bevat    die
       het  kernel printk() gedrag beïnvloed bij het tonen of loggen van fout meldingen.  De vier
       waarden zijn:

       console_loglevel
              Alleen berichten met een log niveau lager dan deze waarden  worden  getoond  in  de
              terminal.  De  standaard waarde voor dit veld is DEFAULT_CONSOLE_LOGLEVEL (7), maar
              wordt gezet op 4 als de kernel commando regel het woord "quiet" bevat,  10  als  de
              kernel commando regel het worod "debug" bevat, en op 15 in het geval van een kernel
              fout (de 10 en 15 zijn een beetje  gek,  en  equivalent  aan  8).   De  waarde  van
              console_loglevel  kan  worden  gezet   (op een waarde in het bereik van 1–8) met de
              syslog()  aanroep met een type van 8.

       default_message_loglevel
              Deze waarde zal worden gebruikt als het log niveau voor printk() berichten die geen
              expliciet  niveau hebben. Tot en met Linux 2.6.38, was de hard-gecodeerde standaard
              waarde voor dit veld 4 (KERN_WARNING); vanaf Linux 2.6.39, is de  standaard  waarde
              gedefinieerd  door  een  kernel configuratie optie CONFIG_DEFAULT_MESSAGE_LOGLEVEL,
              die standaard op 4 staat.

       minimum_console_loglevel
              De waarde in dit veld is de minimale waarde op welke  console_loglevel  kan  worden
              ingesteld.

       default_console_loglevel
              Dit is de standaard waarde van console_loglevel.

   Het log niveau
       Elke  printk()  bericht  heeft  zijn  eigen log niveau. Als dit niveau niet expliciet werd
       gespecificeerd  als  onderdeel  van  het  bericht,  dan  heeft  dit   de   standaardwaarde
       default_message_loglevel.  De gebruikelijke betekenis van het log niveau is als volgt:

       Kernel constanten   Niveau waarde   Betekenis
       KERN_EMERG                0         Systeem is onbruikbaar
       KERN_ALERT                1         Actie  moet onmiddellijk
                                           genomen worden
       KERN_CRIT                 2         Kritieke toestand
       KERN_ERR                  3         Fouttoestanden
       KERN_WARNING              4         Waarschuwings toestanden
       KERN_NOTICE               5         Normale             maar
                                           belangwekkende
                                           toestanden
       KERN_INFO                 6         Informatie
       KERN_DEBUG                7         Debug-niveau berichten

       De printk kernel routine zal alleen een bericht op de console laten zien als het  een  log
       niveau heeft die kleiner is dan de waarde van console_loglevel.

EIND WAARDE

       Voor  type gelijk aan 2,3 of 4 retourneert een succesvolle aanroep van syslog() het aantal
       gelezen bytes. Voor type 9, retourneert syslog() het aantal  momentaan  beschikbare  bytes
       die  van de kernel log buffer gelezen kunnen worden. Voor type 10, retourneert syslog() de
       totale grootte van de kernel log buffer.  Voor  andere  waarden  van  type,  wordt  een  0
       teruggegeven bij succes.

       In  het  geval  van  een  fout  wordt  -1 teruggegeven, en errno wordt gezet om de fout te
       indiceren.

FOUTEN

       EINVAL Ongeldig argument (b.v. fout type; of voor type 2,3, of 4, buf is NULL, of  len  is
              kleiner dan nul; of voor type 8, het level is buiten het 1 tot 8 bereik.

       ENOSYS De  syslog() systeem aanroep is niet beschikbaar, omdat de kernel werd gecompileerd
              met de uitgeschakelde CONFIG_PRINTK kernel-configuratie optie.

       EPERM  Een poging werd gedaan om console_loglevel te veranderen  of  de  kernel  berichten
              ring buffer te wissen door een proces zonder voldoende privilege (preciezer: zonder
              de CAP_SYS_ADMIN of CAP_SYSLOG capaciteit).

       ERESTARTSYS
              Systeem aanroep werd onderbroken door een signaal; - niets werd gelezen.  (Dit  kan
              alleen worden gezien gedurende een trace.)

VOLDOET AAN

       Deze functie is Linux-specifiek, en zou niet gebruikt moeten worden in programma's die als
       overdraagbaar bedoeld zijn.

OPMERKINGEN

       Vanaf het begin merkten mensen op dat het ongelukkig was dat een systeem  aanroep  en  een
       bibliotheek routine met dezelfde naam erg verschillende beesten zijn.

ZIE OOK

       dmesg(1), syslog(3), capabilities(7)

COLOFON

       Deze   pagina  is  onderdeel  van  release  5.13  van  het  Linux  man-pages-project.  Een
       beschrijving van het project, informatie over het melden van bugs en  de  nieuwste  versie
       van deze pagina zijn op https://www.kernel.org/doc/man-pages/ te vinden.

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
       ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ 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⟩.