# cat /proc/version
Linux version 2.6.32-042stab125.5 ([email protected]) (gcc version 4.4.6 20120305 (Red Hat 4.4.6-4) (GCC) ) #1 SMP Tue Oct 17 12:48:22 MSK 2017
내 iptables의 로그 체인용입니다.
Chain LOGGING (2 references)
target prot opt source destination
LOG tcp -- anywhere anywhere tcp dpt:ssh limit: avg 2/min burst 5 LOG level debug prefix "drop port 22"
모든 로그 기록을 확인하세요.
# dmesg
RGP=0
[404925.404804] drop port 22IN=venet0 OUT= MAC= SRC=111.111.111.111 DST=222.222.222.222 LEN=136 TOS=0x00 PREC=0x00 TTL=45 ID=23569 DF PROTO=TCP SPT=25103 DPT=22 WINDOW=282 RES=0x00 ACK PSH URGP=0
[404955.495105] drop port 22IN=venet0 OUT= MAC= SRC=111.111.111.111 DST=222.222.222.222 LEN=136 TOS=0x00 PREC=0x00 TTL=47 ID=34883 DF PROTO=TCP SPT=19703 DPT=22 WINDOW=296 RES=0x00 ACK PSH URGP=0
다음 명령은 출력을 생성하지 않습니다.
# journalctl --dmesg
-- No entries --
# cat /var/log/dmesg
# cat /var/log/messages |grep MAC
- dmesg가 표시하는 모든 정보 레코드가 포함된 파일은 무엇입니까?
- Journalctl 명령이 dmesg에 표시된 모든 출력을 얻을 수 있습니까? 명령
출력에 레코드는 많지만dmesg
항목은 없습니다journalctl --dmesg
. 이유는 무엇입니까?
답변1
dmesg
로그 파일이 아닌 Linux에서 커널 링 버퍼의 출력을 인쇄합니다. 그래서 찾을 수 없습니다. 다른 시스템에서는 이런 일이 발생하지 않을 수도 있습니다. 바라보다이 문제자세한 내용은.
동일한 내용을 보려면 또는 옵션을 journalctl
사용하세요 .-k
--dmesg
$ journalctl --dmesg
-- Logs begin at Mon 2017-10-23 19:04:10 BST, end at Sun 2017-11-12 08:39:58 GMT. --
Oct 23 19:04:10 HP-Envy kernel: microcode: CPU0 microcode updated early to revision 0x62, date = 2017-04-27
Oct 23 19:04:10 HP-Envy kernel: Initializing cgroup subsys cpuset
Oct 23 19:04:10 HP-Envy kernel: Initializing cgroup subsys cpu
Oct 23 19:04:10 HP-Envy kernel: Initializing cgroup subsys cpuacct
Oct 23 19:04:10 HP-Envy kernel: Linux version 4.4.0-89-generic (buildd@lgw01-18) (gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.4) ) #112-Ubuntu SMP Mon Jul 31 19:38:41 UTC 2017 (Ubuntu 4.4.0-89.112-generic 4.4.76)
Oct 23 19:04:10 HP-Envy kernel: Command line: BOOT_IMAGE=/boot/vmlinuz-4.4.0-89-generic root=UUID=a090cb63-4bf2-44e2-b7e1-cb5bd98cf75b ro quiet splash
Oct 23 19:04:10 HP-Envy kernel: KERNEL supported cpus:
...
sudo dmesg clear
실행 시 출력이 생성되지 않도록 링 버퍼를 지울 수 있지만 dmesg
이는 여전히 로그에 저장되며 위 journalctl
명령은 계속 작동합니다.
답변2
- 정보항목은 /var/log/에 저장됩니다.시스템 로그
journalctl -kf
만족해야합니다.
답변3
내 vps 유형은 openvz입니다. kvm, garethTheRed 및 Dr. Alexander의 명령 작업에서 테스트해 보세요.
openvz에서는 vps 로그가 /var/log/syslog(debian) 또는 /var/log/messages(centos)에 기록되지 않습니다.