USB 設備消息氾濫 dmesg(和控制台)
當 USB 滑鼠插入我的筆記型電腦時,dmesg 被以下消息淹沒:
usb 3-1: USB disconnect, device number 28 usb 3-1: new low-speed USB device number 29 using xhci_hcd usb 3-1: New USB device found, idVendor=045e, idProduct=00cb usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0 usb 3-1: Product: Microsoft USB Optical Mouse usb 3-1: Manufacturer: PixArt usb 3-1: ep 0x81 - rounding interval to 64 microframes, ep desc says 80 microframes input: PixArt Microsoft USB Optical Mouse as /devices/pci0000:00/0000:00:14.0/usb3/3-1/3-1:1.0/input/input39 hid-generic 0003:045E:00CB.001C: input: USB HID v1.11 Mouse [PixArt Microsoft USB Optical Mouse] on usb-0000:00:14.0-1/input0 usb 3-1: USB disconnect, device number 29 usb 3-1: new low-speed USB device number 30 using xhci_hcd usb 3-1: New USB device found, idVendor=045e, idProduct=00cb usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0 usb 3-1: Product: Microsoft USB Optical Mouse usb 3-1: Manufacturer: PixArt usb 3-1: ep 0x81 - rounding interval to 64 microframes, ep desc says 80 microframes input: PixArt Microsoft USB Optical Mouse as /devices/pci0000:00/0000:00:14.0/usb3/3-1/3-1:1.0/input/input40 hid-generic 0003:045E:00CB.001D: input: USB HID v1.11 Mouse [PixArt Microsoft USB Optical Mouse] on usb-0000:00:14.0-1/input0
看起來好像滑鼠不斷被移除然後重新發現。
當我登錄控制台(即
CTRL+ALT+F1
)時,這些消息也會淹沒我的控制台。有沒有辦法解決這個問題,讓這些消息不會打擾我?
臨時解決方案(重啟後會重置):
(作為根)
sysctl -w kernel.printk="3 4 1 7"
以上內容的永久版本:
- 在 中創建一個文件
/etc/sysctl.d/
,也許no_msgs.conf
(必須以 .conf 結尾)- 文件內容:
kernel.printk = 3 4 1 7
- 以 root 身份執行:(使用上面使用的任何文件名)這將立即生效,並在每次重新啟動時再次設置。
sysctl -p /etc/sysctl.d/no_msgs.conf
參數為
kernel.printk
:(按順序,從左到右)
- console_loglevel:比這更高優先級(更低的數字!)的消息將被列印到控制台
- default_message_loglevel:沒有明確優先級的消息將使用此優先級列印
- minimum_console_loglevel:console_loglevel 可以設置的最小(最高)值
- default_console_loglevel:console_loglevel 的預設值
這些值會影響 printk() 列印或記錄錯誤消息時的行為。有關不同日誌級別的更多資訊,請參閱“man 2”系統日誌。
本質上,我們將值從預設值4降低到3,因此拒絕列印“警告( 4 )”類型的消息,只有更差的類型消息才允許列印到控制台。(3=錯誤,2=暴擊,1=警戒,0=緊急(哦哦!))
如果您發現3沒有停止消息,請嘗試
2 4 1 7
,但實際上,您應該查看是什麼讓您的滑鼠不斷重新連接。也許它沒有得到足夠的力量?嘗試將其插入電腦上的其他埠,或者更好地將其插入自供電集線器。設備不應該那樣振盪。
眾所周知,如果在 Linux上不總是輪詢PixArt OEM 滑鼠,它們會在執行級別 1 或 3 中每分鐘斷開/重新連接。內部緩衝區溢出,FW 崩潰,然後它們重新連接。驅動程序的預設行為
usbhid
只是等待中斷。基礎知識: https ://github.com/sriemer/fix-linux-mouse
我現在已經將此滑鼠的更新檔送出到****linux-usb郵件列表:
https://marc.info/?l=linux-usb&m=154159427814212&w=2
核心引導選項
usbhid.quirks=0x045e:0x00cb:0x00000400
也HID_QUIRK_ALWAYS_POLL
將為您啟用。另一種選擇是啟動
gpm
服務。然後gpm
是輪詢滑鼠,您可以在虛擬終端上實際使用它。