Имеется консольный линукс для встраиваемых систем.
Несколько вопросов
1. При втыкании флэшки на экран поверх всего (т.е. если например запущен mc, то поверх mc) выводятся примерно такие строки
usb 1-1: new high-speed number 2 using ochi-pci
usb 2-1: new full-speed number 2 using ochi-pci
usb-storage 2-1:1-0: USB Mass Storage device detected
csi host2: usb-storage 2-1:1.0
и т.д., долго все писать.
Как избавиться от этих строк? По возможности не занимаясь пересборкой ядра
2. У меня сделано что флэшка автомонтируется сама, в папку /media/flash
причем эта папка заранее создана. Т.е. вне зависимости от того, есть флэшка или нет, папка существует.
Как программно (из программы на си) определить что флэшка примонтировалась? Наличие файлов на флэшке необязательно, т.е. она может быть пустая.
Можно определить то что флэшка есть на физическом уровне, прочитать из /dev/disk/by-id или подобным способом. Но там вроде нет информации, примонтирована она или нет. А хотелось бы иметь программный способ определения, что флэшка именно примонтировалась.
Здравствуйте, 00011011, Вы писали:
0>Как избавиться от этих строк? По возможности не занимаясь пересборкой ядра
Я не шибко специалист.
Предполагаю, что есть какая-то служба, которая следит: не воткнулась ли флэшка в usb. Если найти запускатор этой службы и перенаправить stdout и stderr в файл логов?
Здравствуйте, 00011011, Вы писали:
0>Имеется консольный линукс для встраиваемых систем.
0>Несколько вопросов
https://askubuntu.com/questions/97256/how-do-i-disable-messages-or-logging-from-printing-on-the-console-virtual-termin
0>причем эта папка заранее создана. Т.е. вне зависимости от того, есть флэшка или нет, папка существует.
0>Как программно (из программы на си) определить что флэшка примонтировалась? Наличие файлов на флэшке необязательно, т.е. она может быть пустая.
Прочитать файл /proc/mounts
Здравствуйте, 00011011, Вы писали:
0>usb 1-1: new high-speed number 2 using ochi-pci
0>Как избавиться от этих строк? По возможности не занимаясь пересборкой ядра
echo 1 > /proc/sys/kernel/printk
Или добавить слово quiet в командную строку ядра.
0>2. У меня сделано что флэшка автомонтируется сама, в папку /media/flash
0>Как программно (из программы на си) определить что флэшка примонтировалась? Наличие файлов на флэшке необязательно, т.е. она может быть пустая.
Если строка с этой папкой есть в текстовом файле /proc/mounts, значит прямо сейчас в эту папку что-то примонтировано.
Каталог /proc — кладезь информации.
Здравствуйте, 00011011, Вы писали:
0>Как избавиться от этих строк? По возможности не занимаясь пересборкой ядра
Системд-журналд?
eee-linux /dev # cat /etc/systemd/journald.conf
# Managed by ansible. Editing is useless
# Sheridan
[Journal]
Storage=persistent
Compress=no
Seal=yes
SplitMode=none
SyncIntervalSec=2m
RateLimitIntervalSec=16s
RateLimitBurst=16384
SystemMaxUse=512M
SystemKeepFree=128M
SystemMaxFileSize=32M
SystemMaxFiles=16
RuntimeMaxUse=8M
RuntimeKeepFree=64M
RuntimeMaxFileSize=2M
RuntimeMaxFiles=2
MaxRetentionSec=0
MaxFileSec=0
ReadKMsg=yes
ForwardToSyslog=no
ForwardToKMsg=no
ForwardToConsole=yes
ForwardToWall=yes <---- эту опцию в no
TTYPath=/dev/tty12
MaxLevelStore=debug
MaxLevelSyslog=debug
MaxLevelKMsg=notice
MaxLevelConsole=notice
MaxLevelWall=emerg
LineMax=65536