Die Ausgabe von syslogd -d wird erkannt

570
bwDraco

Ubuntu

Was ist das Mäandern von 80, F und X in der folgenden Ausgabe von syslogd -d?

 0: X X X X FF X X X X X FF X X X X X X X X X X X X X X FILE: /var/log/auth.log (unused) 1: FF FF FF FF X FF FF FF FF FF X FF FF FF FF FF FF FF FF FF FF FF FF FF FF FILE: /var/log/syslog (unused) 2: X X X FF X X X X X X X X X X X X X X X X X X X X X FILE: /var/log/daemon.log (unused) 3: FF X X X X X X X X X X X X X X X X X X X X X X X X FILE: /var/log/kern.log (unused) 4: X X X X X X FF X X X X X X X X X X X X X X X X X X FILE: /var/log/lpr.log (unused) 5: X X FF X X X X X X X X X X X X X X X X X X X X X X FILE: /var/log/mail.log (unused) 6: X FF X X X X X X X X X X X X X X X X X X X X X X X FILE: /var/log/user.log (unused) 7: X X 7F X X X X X X X X X X X X X X X X X X X X X X FILE: /var/log/mail.info (unused) 8: X X 1F X X X X X X X X X X X X X X X X X X X X X X FILE: /var/log/mail.warn (unused) 9: X X F X X X X X X X X X X X X X X X X X X X X X X FILE: /var/log/mail.err (unused) 10: X X X X X X X 7 X X X X X X X X X X X X X X X X X FILE: /var/log/news/news.crit (unused) 11: X X X X X X X F X X X X X X X X X X X X X X X X X FILE: /var/log/news/news.err (unused) 12: X X X X X X X 3F X X X X X X X X X X X X X X X X X FILE: /var/log/news/news.notice (unused) 13: 80 80 X 80 X 80 80 X 80 80 X 80 80 80 80 80 80 80 80 80 80 80 80 80 80 FILE: /var/log/debug (unused) 14: 70 70 X X X 70 70 X 70 X X 70 70 70 70 70 70 70 70 70 70 70 70 70 70 FILE: /var/log/messages (unused) 15: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 WALL:  16: F0 F0 FF FF F0 F0 F0 FF F0 F0 F0 F0 F0 F0 F0 F0 F0 F0 F0 F0 F0 F0 F0 F0 F0 PIPE: |/dev/xconsole (unused) 

OBSD

7 6 X 5 X 6 X 5 5 X X X 5 5 5 5 5 5 5 5 5 5 5 5 X FILE: /var/log/messages X X X X 6 X X X X X X X X X X X X X X X X X X X X FILE: /var/log/authlog X X X X X X X X X X 7 X X X X X X X X X X X X X X FILE: /var/log/secure X X X X X X X X X 6 X X X X X X X X X X X X X X X FILE: /var/cron/log X X X 6 X X X X X X X X X X X X X X X X X X X X X FILE: /var/log/daemon X X X X X X X X X X X 6 X X X X X X X X X X X X X FILE: /var/log/xferlog X X X X X X 7 X X X X X X X X X X X X X X X X X X FILE: /var/log/lpd-errs X X 6 X X X X X X X X X X X X X X X X X X X X X X FILE: /var/log/maillog 7 3 2 3 5 3 3 3 3 3 X 3 3 3 3 3 3 3 3 3 3 3 3 3 X CONSOLE: /dev/console 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 X WALL:  
1

2 Antworten auf die Frage

0
DaveParillo

Diese Werte beziehen sich auf die für die definierte Protokolldatei definierten Einrichtungen . Beispielsweise verwendet jedes E-Mail-Programm, das eine Protokollnachricht sendet, die E-Mail-Funktion, unabhängig vom tatsächlichen Namen des Programms. Ich weiß, dass jede Spalte zwischen den beiden eine einzige Einrichtung darstellt, aber ich bin nicht sicher, was der Wert speziell darstellt. Folgendes ist nur eine Vermutung:

Jede Einrichtung kann mit 8 Schweregraden protokolliert werden, wobei 0 "Notfall" und 7 das Debugging ist. Sie können einige oder alle davon für jede Einrichtung festlegen. Wenn jede dieser Ebenen ein Bit in einer Zahl ist, kann der Wert die Summe aller dieser Bits sein. FFwürde anzeigen, dass alle Bits gesetzt sind. Andere Werte:

F: first 4 bits set - emergency, alert critical, error F0: last 4 bits set - warning, notification, info, debug 80: last bit set - debug 

Ich denke, X bedeutet zu ignorieren.

0

[X0-7] sind Einrichtungsnamen . Die veralteten Dinge wie "Sicherheit" LOG_AUTH lassen Raum für Spekulationen, so dass ich es nicht als kein dev behandeln werde. Sie sind den Varianten in Ubuntu ähnlich, aber sauberer. Die Bedeutung von X ist anscheinend "ignorieren", wie der Code zeigt:

 1329: if (Debug) { 1330: for (f = Files; f; f = f->f_next) { 1331: for (i = 0; i <= LOG_NFACILITIES; i++) 1332: if (f->f_pmask[i] == INTERNAL_NOPRI) 1333: printf("X "); 1334: else 1335: printf("%d ", f->f_pmask[i]); 1336: printf("%s: ", TypeNames[f->f_type]); 1337: switch (f->f_type) { 1338: case F_FILE: 1339: case F_TTY: 1340: case F_CONSOLE: 1.95 henning 1341: case F_PIPE: 1.1 deraadt 1342: printf("%s", f->f_un.f_fname); 1343: break; 1344:  1345: case F_FORW: 1346: printf("%s", f->f_un.f_forw.f_hname); 1347: break; 1348:  1349: case F_USERS: 1350: for (i = 0; i < MAXUNAMES && *f->f_un.f_uname[i]; i++) 1351: printf("%s, ", f->f_un.f_uname[i]); 1352: break; 1.70 djm 1353:  1354: case F_MEMBUF: 1355: printf("%s", f->f_un.f_mb.f_mname); 1356: break; 1357:  1.1 deraadt 1358: } 1.20 deraadt 1359: if (f->f_program) 1.19 bri 1360: printf(" (%s)", f->f_program); 1.1 deraadt 1361: printf("\n"); 1362: } 1363: } 1364: }