как использовать syslog, чтобы избежать искажения файла журнала, когда несколько процессов просматривают один и тот же файл журнала?

Я хотел знать использование syslog, когда многопользовательские процессы пытаются записать в тот же файл журнала, что и

for i in $var do some process >> logfile & done wait 

  • fork () и exec () путаница
  • Реальный chroot на системной машине
  • Почему я иногда вижу «INIT: version 2.88 reloading» в консоли?
  • Реагировать на входящие файлы в каталоге на HP-UX
  • разделение с использованием 2 жестких дисков (SSD и не SSD) в Linux
  • Какие привилегии у меня есть (узнайте в скрипте оболочки bourne)
  • Войти в систему
  • переупорядочить GRUB для отображения Windows сверху
  • Как я могу сделать bash более удобочитаемым?
  • Использование сценария ожидания для автоматизации проверки пароля для множества маршрутизаторов
  • Где спящий режим возобновляет получение узла устройства?
  • Загрузить файл, связанный в MySQL DB, извлечь текст и вставить в db с помощью скрипта bash?
  • One Solution collect form web for “как использовать syslog, чтобы избежать искажения файла журнала, когда несколько процессов просматривают один и тот же файл журнала?”

    Ты можешь сделать

     some process | logger & 

    обрабатывать процессы и выводить их на syslog. Обратите внимание, что объектом по умолчанию будет «пользователь» и «уведомление» по умолчанию. Вы можете изменить их, используя опцию -p .

    Причина, почему это работает без проблем, заключается в том, что процессы напрямую не записываются в файл назначения. Они отправляют свои сообщения демону syslog, который управляет записью в соответствующий файл (ы). Насколько я понимаю, атомарность была бы линейной, т. Е. Каждая строка вывода из процесса переходила бы в syslog без помех, но многострочные сообщения могли бы получать линии от других процессов, смешанных.

    Linux и Unix - лучшая ОС в мире.