Udev mesajlarını nasıl gizleyebilirim?


9

Bir usbhub (7 sopa) taktığımda udev konsolda birçok mesaj görüntüler. Bu mesajları gizleyebilir veya / dev / null adresine gönderebilir miyim?

Yanıtlar:


8

CentOS, ben alamadım udevben basit bir USB thumbstick taktığınızda mesajlar. Bunun yerine:

[sdb] Assuming drive cache: write through

birkaç kere.

Ama bu değil udev, ya da syslogsize konsolda bahsetmiyorum. Bunu kendiniz, öldürerek syslogdya da emin olabilirsiniz rsyslogd(Lütfen bunun bir üretim sunucusu olmadığından emin olun, umarım USB hub'ları ve tüm bunları takmakla bu değildir :) ve USB cihazını tekrar takmak.

Mesajlar hala açılır, bu yüzden Ulrich'in belirttiği gibi, bu çekirdek veya USB modülünden geliyor, bu da kernel.printkherhangi bir sistem hizmeti kullanmadan size bu mesajları göstermek için kullanılıyor.

Linux belgelerinden bir alıntı sysctl/kernel.txt:

Printk içindeki dört değer şunları gösterir: sırasıyla console_loglevel, default_message_loglevel, minimum_console_loglevel ve default_console_loglevel.

Bu değerler, hata iletileri yazdırılırken veya günlüğe kaydedilirken printk () davranışını etkiler. Farklı loglevels hakkında daha fazla bilgi için bkz. 'Man 2 syslog'.

  • console_loglevel: daha yüksek önceliğe sahip iletiler konsola yazdırılacaktır
  • default_message_level: açık bir önceliği olmayan mesajlar bu öncelikle yazdırılacaktır
  • minimum_console_loglevel: console_loglevel'in ayarlanabileceği minimum (en yüksek) değer
  • default_console_loglevel: console_loglevel için varsayılan değer
    #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             */

Dolayısıyla, printk argümanları için yukarıda belirtilen değerleri kullanarak, çekirdeğin bilgi mesajları veya konsoldaki basit uyarılar hakkında kapanmasını sağlayabilirsiniz. Örneğin,

echo "3 3 3 3" > /proc/sys/kernel/printk

USB başparmak çubuğu eklerimin sessiz kalmasını sağladı. Bir yeniden başlatmanın içinden geçmesini istiyor musunuz, bir satır ekleyin /etc/sysctl.conf:

kernel.printk = 3 3 3 3

5

Evet, syslog'un nasıl çalıştığını anlamanız koşuluyla, farklı bir syslog kanalına geçerek:

Udev kılavuzundan:

   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.

Artık /etc/udev/udev.confbu değeri düzenleyebilir ve değiştirebilirsiniz.


tamam cevap verdiğin için teşekkürler Tüm usb-udev mesajlarının gizli olduğunu hangi Syslog değerini kullanmam gerektiğini nasıl öğrenebilirim?
jsterr

"Tesis Düzeyi" veya "Önem Düzeyi" değerlerini kullanmak zorunda mıyım? Bkz en.wikipedia.org/wiki/Syslog#Facility_Levels
jsterr
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.