Câu trả lời:
Trên CentOS, tôi không nhận được udev
tin nhắn khi cắm một ngón tay cái USB đơn giản. Thay vào đó tôi nhận được:
[sdb] Assuming drive cache: write through
một đôi lần.
Nhưng điều này không phải udev
, hoặc syslog
đề cập điều này với bạn trên bảng điều khiển. Bạn có thể biết điều này cho chính mình, bằng cách giết syslogd
hoặc rsyslogd
(Vui lòng đảm bảo rằng đây không phải là máy chủ sản xuất, mà tôi hy vọng nó không phải là gì với việc cắm các bộ chia USB và tất cả những thứ đó :) và lắp lại thiết bị USB.
Các thông báo vẫn bật lên, như Ulrich đã đề cập, điều này đến từ kernel hoặc chính xác là mô-đun USB, sử dụng kernel.printk
để hiển thị cho bạn các tin nhắn này, hoàn toàn không sử dụng bất kỳ dịch vụ hệ thống nào.
Một đoạn trích từ tài liệu linux sysctl/kernel.txt
:
Bốn giá trị trong printk biểu thị: console_loglevel, default_message_loglevel, minim_console_loglevel và default_console_loglevel tương ứng.
Các giá trị này ảnh hưởng đến hành vi printk () khi in hoặc ghi thông báo lỗi. Xem 'man 2 syslog' để biết thêm thông tin về các loglevels khác nhau.
- console_loglevel: tin nhắn có mức độ ưu tiên cao hơn mức này sẽ được in ra bàn điều khiển
- default_message_level: tin nhắn không có mức ưu tiên rõ ràng sẽ được in với mức ưu tiên này
- minim_console_loglevel: giá trị tối thiểu (cao nhất) mà console_loglevel có thể được đặt
- default_console_loglevel: giá trị mặc định cho console_loglevel
#define KERN_EMERG "<0>" /* system is unusable */
#define KERN_ALERT "<1>" /* action must be taken immediately */
#define KERN_CRIT "<2>" /* critical conditions */
#define KERN_ERR "<3>" /* error conditions */
#define KERN_WARNING "<4>" /* warning conditions */
#define KERN_NOTICE "<5>" /* normal but significant condition */
#define KERN_INFO "<6>" /* informational */
#define KERN_DEBUG "<7>" /* debug-level messages */
Vì vậy, bằng cách sử dụng các giá trị được đề cập ở trên cho các đối số để in, bạn có thể khiến kernel im lặng về các thông báo thông tin hoặc các cảnh báo đơn giản trên bảng điều khiển. Ví dụ,
echo "3 3 3 3" > /proc/sys/kernel/printk
làm cho sự chèn ép của tôi về ngón tay cái USB trở nên im lặng. Bạn có muốn làm cho nó dính qua khởi động lại, thêm một dòng vào /etc/sysctl.conf
:
kernel.printk = 3 3 3 3
Có, bằng cách thay đổi sang một kênh syslog khác, miễn là bạn hiểu cách syslog hoạt động:
Từ hướng dẫn sử dụng udev:
udev_log
The logging priority which can be set to err ,info or the corre-
sponding numerical syslog(3) value. The default value is err.
Vì vậy, bây giờ bạn có thể chỉnh sửa /etc/udev/udev.conf
và thay đổi giá trị này.