journal 是 Linux 中由systemd-journald服务收集和保存的系统日志。可以把它理解为一个统一的“系统事件记录库”。
journal :日记、日志
它记录的内容通常包括:
- 内核事件:USB 设备连接、断开、驱动报错等。
- 系统服务:服务启动、停止和运行错误。
- 其他由程序提交的日志。
journal 存在哪里?
常见位置是:
/run/log/journal:运行期间保存的日志,通常随重启丢失。/var/log/journal:持久保存的日志,可以跨重启保留。
‘
可以看到,我的/var/log/journal是空的
我感觉,我的截图跟你上面的描述不相符。
截图与前面的说明并不矛盾,但我之前少说了一个条件:这是两种存储位置,不代表系统一定同时向两处保存。
你的截图显示:
/var/log/journal当前为空。/run/log/journal/机器标识/中有一个system.journal文件。
具体保存位置由journald 的配置决定:
Storage配置 | 保存方式 |
|---|---|
volatile(不稳定的) | 只保存到/run/log/journal |
persistent(持久的) | 优先保存到/var/log/journal,必要时暂用/run |
auto | 根据/var/log/journal是否存在等条件选择 |
此外,系统启动初期也可能先写入/run,之后才转入持久存储。所以,仅凭目录存在或为空,不能确定实际配置。
可以先执行这条只读命令:
findmnt -T /run/log/journal如果文件系统类型显示为tmpfs,就说明这个位置使用内存文件系统,正常重启后其中的文件不会保留。截图里的文件也可能是清理后继续记录的新日志(我确实执行过一次清除命令),它的存在不代表之前清理失败。
admin123@admin123-pc:~/桌面$ findmnt -T /run/log/journal TARGET SOURCE FSTYPE OPTIONS /run tmpfs tmpfs rw,nosuid,nodev,noexec,relatime,size=1625716k,mode=755这表示:你的/run/log/journal位于内存文件系统中,正常重启后,这里的日志文件会消失。
各列的含义是:
| 字段 | 你的输出 | 含义 |
|---|---|---|
TARGET | /run | /run/log/journal所属的挂载位置 |
SOURCE | tmpfs | 使用临时内存文件系统 |
FSTYPE | tmpfs | 文件系统类型 |
size=1625716k | 约 1.55 GiB | 整个/run的容量上限,不是当前日志占用量 |
我想看看这个journal中有什么内容
可以,在麒麟终端执行下面的命令,都是只读查看。
查看 journal 的全部可访问内容:
sudo journalctl --no-pager我的记录有点多,看不全。
只看内核日志中的 USB 相关内容:
sudo journalctl -k --no-pager | grep -i usbadmin123@admin123-pc:~/桌面$ sudo journalctl -k --no-pager | grep -i usb 10月 19 19:47:03 admin123-pc kernel: ACPI: bus type USB registered 10月 19 19:47:03 admin123-pc kernel: usbcore: registered new interface driver usbfs 10月 19 19:47:03 admin123-pc kernel: usbcore: registered new interface driver hub 10月 19 19:47:03 admin123-pc kernel: usbcore: registered new device driver usb 10月 19 19:47:03 admin123-pc kernel: ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver 10月 19 19:47:03 admin123-pc kernel: ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver 10月 19 19:47:03 admin123-pc kernel: uhci_hcd: USB Universal Host Controller Interface driver 10月 19 19:47:03 admin123-pc kernel: xhci_hcd 0000:06:00.0: new USB bus registered, assigned bus number 1 10月 19 19:47:03 admin123-pc kernel: xhci_hcd 0000:06:00.0: new USB bus registered, assigned bus number 2 10月 19 19:47:03 admin123-pc kernel: xhci_hcd 0000:06:00.0: Host supports USB 3.0 SuperSpeed 10月 19 19:47:03 admin123-pc kernel: usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.04 10月 19 19:47:03 admin123-pc kernel: usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1 10月 19 19:47:03 admin123-pc kernel: usb usb1: Product: xHCI Host Controller 10月 19 19:47:03 admin123-pc kernel: usb usb1: Manufacturer: Linux 5.4.18-87.76-generic xhci-hcd 10月 19 19:47:03 admin123-pc kernel: usb usb1: SerialNumber: 0000:06:00.0 10月 19 19:47:03 admin123-pc kernel: hub 1-0:1.0: USB hub found 10月 19 19:47:03 admin123-pc kernel: usb usb2: We don't know the algorithms for LPM for this host, disabling LPM. 10月 19 19:47:03 admin123-pc kernel: usb usb2: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 5.04 10月 19 19:47:03 admin123-pc kernel: usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1 10月 19 19:47:03 admin123-pc kernel: usb usb2: Product: xHCI Host Controller 10月 19 19:47:03 admin123-pc kernel: usb usb2: Manufacturer: Linux 5.4.18-87.76-generic xhci-hcd 10月 19 19:47:03 admin123-pc kernel: usb usb2: SerialNumber: 0000:06:00.0 10月 19 19:47:03 admin123-pc kernel: hub 2-0:1.0: USB hub found 10月 19 19:47:03 admin123-pc kernel: usbcore: registered new interface driver snd_usb_toneport 10月 19 19:47:03 admin123-pc kernel: usb 2-1: new SuperSpeed Gen 1 USB device number 2 using xhci_hcd 10月 19 19:47:03 admin123-pc kernel: usb 2-1: New USB device found, idVendor=2109, idProduct=0817, bcdDevice= 1.94 10月 19 19:47:03 admin123-pc kernel: usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0 10月 19 19:47:03 admin123-pc kernel: usb 2-1: Product: USB3.0 Hub 10月 19 19:47:03 admin123-pc kernel: usb 2-1: Manufacturer: VIA Labs, Inc. 10月 19 19:47:03 admin123-pc kernel: hub 2-1:1.0: USB hub found 10月 19 19:47:03 admin123-pc kernel: usb 1-1: new high-speed USB device number 2 using xhci_hcd 10月 19 19:47:03 admin123-pc kernel: usb 1-1: New USB device found, idVendor=2109, idProduct=2817, bcdDevice= 1.94 10月 19 19:47:03 admin123-pc kernel: usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0 10月 19 19:47:03 admin123-pc kernel: usb 1-1: Product: USB2.0 Hub 10月 19 19:47:03 admin123-pc kernel: usb 1-1: Manufacturer: VIA Labs, Inc. 10月 19 19:47:03 admin123-pc kernel: hub 1-1:1.0: USB hub found 10月 19 19:47:03 admin123-pc kernel: usb 1-4: new high-speed USB device number 3 using xhci_hcd 10月 19 19:47:03 admin123-pc kernel: usb 1-4: New USB device found, idVendor=05e3, idProduct=0610, bcdDevice=60.60 10月 19 19:47:03 admin123-pc kernel: usb 1-4: New USB device strings: Mfr=0, Product=1, SerialNumber=0 10月 19 19:47:03 admin123-pc kernel: usb 1-4: Product: USB2.0 Hub 10月 19 19:47:03 admin123-pc kernel: hub 1-4:1.0: USB hub found 10月 19 19:47:03 admin123-pc kernel: usb 1-1.4: new full-speed USB device number 4 using xhci_hcd 10月 19 19:47:03 admin123-pc kernel: usb 1-1.4: New USB device found, idVendor=1a86, idProduct=9354, bcdDevice=90.00 10月 19 19:47:03 admin123-pc kernel: usb 1-1.4: New USB device strings: Mfr=0, Product=0, SerialNumber=0 10月 19 19:47:03 admin123-pc kernel: usbcore: registered new interface driver usbhid 10月 19 19:47:03 admin123-pc kernel: usbhid: USB HID core driver 10月 19 19:47:03 admin123-pc kernel: usb 1-4.1: new full-speed USB device number 5 using xhci_hcd 10月 19 19:47:03 admin123-pc kernel: usb 1-4.1: New USB device found, idVendor=33a7, idProduct=2388, bcdDevice= 2.00 10月 19 19:47:03 admin123-pc kernel: usb 1-4.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 10月 19 19:47:03 admin123-pc kernel: usb 1-4.1: Product: fingerprint module 10月 19 19:47:03 admin123-pc kernel: usb 1-4.1: Manufacturer: Jiangxi OMS Microelectronics Co.,Ltd. 10月 19 19:47:03 admin123-pc kernel: usb 1-4.1: SerialNumber: ofilm_pc_000049 10月 19 19:47:03 admin123-pc kernel: usb 1-1.5: new high-speed USB device number 6 using xhci_hcd 10月 19 19:47:03 admin123-pc kernel: usb 1-1.5: New USB device found, idVendor=2109, idProduct=8817, bcdDevice= 0.01 10月 19 19:47:03 admin123-pc kernel: usb 1-1.5: New USB device strings: Mfr=1, Product=2, SerialNumber=3 10月 19 19:47:03 admin123-pc kernel: usb 1-1.5: Product: USB Billboard Device 10月 19 19:47:03 admin123-pc kernel: usb 1-1.5: Manufacturer: VIA Labs, Inc. 10月 19 19:47:03 admin123-pc kernel: usb 1-1.5: SerialNumber: 0000000000000001 10月 19 19:47:04 admin123-pc kernel: input: HID 1a86:9354 as /devices/pci0000:00/0000:00:05.0/0000:06:00.0/usb1/1-1/1-1.4/1-1.4:1.0/0003:1A86:9354.0002/input/input15 10月 19 19:47:04 admin123-pc kernel: hid-generic 0003:1A86:9354.0002: input,hidraw1: USB HID v1.10 Keyboard [HID 1a86:9354] on usb-0000:06:00.0-1.4/input0 10月 19 19:47:04 admin123-pc kernel: input: HID 1a86:9354 as /devices/pci0000:00/0000:00:05.0/0000:06:00.0/usb1/1-1/1-1.4/1-1.4:1.1/0003:1A86:9354.0003/input/input16 10月 19 19:47:04 admin123-pc kernel: hid-generic 0003:1A86:9354.0003: input,hidraw2: USB HID v1.10 Mouse [HID 1a86:9354] on usb-0000:06:00.0-1.4/input1 10月 19 19:47:04 admin123-pc kernel: input: HID 1a86:9354 as /devices/pci0000:00/0000:00:05.0/0000:06:00.0/usb1/1-1/1-1.4/1-1.4:1.2/0003:1A86:9354.0004/input/input17 10月 19 19:47:04 admin123-pc kernel: hid-generic 0003:1A86:9354.0004: input,hidraw3: USB HID v1.10 Mouse [HID 1a86:9354] on usb-0000:06:00.0-1.4/input2可以讲讲大概都是什么意思吗?
这份日志主要是在记录 USB 系统初始化,以及电脑识别已有设备的过程。里面没有出现USB disconnect,所以这段内容没有显示设备断开事件。
日志集中在19:47:03~19:47:04,结合控制器初始化信息来看,很像一次开机时的设备识别过程;不能把每条记录都理解为你手动插入了一次设备。
是的,我应该是那个时间点重启了一次电脑。
1.每行前面的内容是什么
例如:
10月 19 19:47:03 admin123-pc kernel:分别表示:记录时间、电脑名称,以及这条消息来自 Linux 内核。
2. USB 系统初始化
这些内容:
ACPI: bus type USB registered usbcore: registered new interface driver hub ehci_hcd: ... ohci_hcd: ... xhci_hcd: ...表示系统正在注册USB 支持、加载控制器和集线器驱动。这些不是外接设备的插拔记录。
其中:
new USB bus registered, assigned bus number 1 new USB bus registered, assigned bus number 2表示控制器建立了 USB总线 1 和总线 2。一个控制器可以提供多个逻辑总线,不代表你插了两个设备。
3. 系统识别一个设备的过程
以这个集线器为例:
usb 1-1: new high-speed USB device number 2 using xhci_hcd usb 1-1: New USB device found, idVendor=2109, idProduct=2817 usb 1-1: Product: USB2.0 Hub usb 1-1: Manufacturer: VIA Labs, Inc.意思是:
| 内容 | 含义 |
|---|---|
1-1 | USB 总线 1 的根集线器下,1 号端口 |
high-speed | 此次连接使用 USB 高速模式 |
device number 2 | 系统本次分配的设备地址,不是序列号或固定插口编号 |
using xhci_hcd | 由 xHCI 控制器驱动管理 |
idVendor=2109 | 厂商编号 VID |
idProduct=2817 | 产品编号 PID |
Product | 设备提供的产品名称 |
Manufacturer | 设备提供的厂商名称 |
一个设备的识别过程会输出多行,所以十行日志不等于插了十个设备。
4. 你这份日志里有哪些设备
| 端口 | 日志中的设备 |
|---|---|
usb1、usb2 | 控制器提供的根集线器 |
2-1 | USB 3.0 集线器,2109:0817 |
1-1 | USB 2.0 集线器,2109:2817 |
1-4 | 另一个 USB 2.0 集线器,05e3:0610 |
1-1.4 | 未提供产品名称的设备,1a86:9354 |
1-4.1 | 指纹模块,33a7:2388 |
1-1.5 | 名为USB Billboard Device的设备,2109:8817 |
5. 这个“未知设备”实际上提供了键鼠接口
末尾几行很有用:
USB HID v1.10 Keyboard [HID 1a86:9354] USB HID v1.10 Mouse [HID 1a86:9354] USB HID v1.10 Mouse [HID 1a86:9354]说明1a86:9354这个 USB 设备向系统提供了:
- 一个键盘接口。
- 两个鼠标类接口。
它们属于同一个 USB 设备的多个接口,不代表一定有一个实体键盘和两只实体鼠标。这种表现与键鼠复合设备或KVM 模拟接口相符,但仅凭日志还不能确认它就是你的 KVM。
程序之前显示“未知 USB 设备”,是因为它没有提供Product名称;系统仍然识别出了它的键鼠接口。