Перенаправление Stderr не работает

Домашняя страница vnStat ( http://humdi.net/vnstat/ ) перечисляет следующие как «Подобные программы» под заголовком «Ссылки»:

  • ntop
  • darkstat
  • MRTG
  • bwm-ng
  • iftop
  • IPTraf

У меня был опыт работы с IPTraf (много лет назад), но он все еще работает довольно хорошо. И похоже, что большинство из них можно скомпилировать и упаковать для Solaris 11. http://www.unixpackages.com/ имеет службу подписки, которая сделает это за вас, если вы захотите воспользуйтесь их услугами. В противном случае configure; делать; сделайте установку прочь!

2
30.03.2017, 07:18
2 ответа

Вы не сделали ничего плохого, mbuffer повторно открывает / dev / tty , если он не может читать из своей стандартной ошибки , нарушая ваше перенаправление.

Вы можете использовать параметр -q , чтобы отключить вывод состояния. Согласно документации, вы можете использовать -l для записи статуса в файл с

mbuffer -m 60M -f -o /tmp/temp_video.h264 -l errors.txt &

, но журнал статуса содержит ошибки: он всегда переходит к стандартной ошибке , а не к журналу .

Вот как это исправить.

  1. Загрузите исходный код пакета

     apt-get source mbuffer
    
  2. Добавьте патч (для этого требуется пакет quilt )

     cd mbuffer-20161115
    одеяло новый 13-status-log.patch
    одеяло добавить mbuffer.c
    
  3. Отредактируйте mbuffer.c и измените строку 461 (в Debian 8) или 472 (в Debian 9) на

     nw = write (Log, buf, strlen (buf));
    
  4. Сохранить патч

     обновление квилта
    
  5. Перестройте пакет (для этого требуются пакеты dpkg-dev и devscripts )

     dch -n «Исправить журнал состояния, чтобы учесть параметр -l».
    dch -r игнорируется
    dpkg-buildpackage -us -uc
    

    (если dpkg-buildpackage жалуется на отсутствие зависимостей, установите их и повторите попытку)

  6. Установите обновленный пакет

     sudo dpkg -i ../mbuffer_*-?.1_*. деб
    
4
27.01.2020, 21:59

Я являюсь автором mbuffer и просто хочу отметить, что журнал состояния не содержит ошибок. Намерение всегда заключалось в том, чтобы избежать записи сообщений о состоянии в журнал, поскольку это портит журнал и делает его нечитаемым, если пользователь явно не запрашивает об этом.

Это достигается повышением уровня детализации до 4 с помощью "-v 4".

Поскольку поведение по умолчанию вызывает путаницу, и есть также опция -Q для подавления сообщений о состоянии в журнале, я планирую включить сообщения о состоянии в журнал в будущих выпусках также на уровне детализации 3.

С уважением,

Томас

1
27.01.2020, 21:59

Теги

Похожие вопросы