Quando eu conecto um usbhub (7 sticks), o udev exibe muitas mensagens no console. Posso ocultar essas mensagens ou enviá-las para / dev / null?
No CentOS, não recebo udev
mensagens quando conecto um simples polegar USB. Em vez disso, recebo:
[sdb] Assuming drive cache: write through
algumas vezes.
Mas isso não é udev
, ou syslog
mencionar isso para você no console. Você mesmo pode saber disso, matando syslogd
ou rsyslogd
(por favor, certifique-se de que este não é um servidor de produção, espero que não seja isso com a inserção de hubs USB e tudo o mais :): e reinserindo o dispositivo USB.
As mensagens ainda aparecem, como Ulrich mencionou, isto é proveniente do kernel, ou do módulo USB, para ser exato, que é usado kernel.printk
para mostrar essas mensagens, sem usar nenhum serviço do sistema.
Um trecho da documentação do linux sysctl/kernel.txt
:
Os quatro valores em printk indicam: console_loglevel, default_message_loglevel, minimum_console_loglevel e default_console_loglevel respectivamente.
Esses valores influenciam o comportamento printk () ao imprimir ou registrar mensagens de erro. Veja 'man 2 syslog' para mais informações sobre os diferentes níveis de log.
- console_loglevel: mensagens com prioridade mais alta que isso serão impressas no console
- default_message_level: mensagens sem prioridade explícita serão impressas com essa prioridade
- minimum_console_loglevel: valor mínimo (mais alto) no qual console_loglevel pode ser configurado
- default_console_loglevel: valor padrão para 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 */
Portanto, usando os valores acima mencionados para os argumentos do printk, você pode fazer o kernel calar a boca sobre mensagens informativas ou avisos simples no console. Por exemplo,
echo "3 3 3 3" > /proc/sys/kernel/printk
fez minhas inserções do thumbtick USB ficarem silenciosas. Deseja fazê-lo permanecer durante uma reinicialização, adicione uma linha a /etc/sysctl.conf
:
kernel.printk = 3 3 3 3
Sim, mudando para um canal syslog diferente, desde que você entenda como o syslog funciona:
No manual do 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.
Então agora você pode editar /etc/udev/udev.conf
e alterar esse valor.