У меня есть папка, полная файлов журнала, и я использую logrotate
для их вращения.
До недавнего времени у меня были только файлы журнала Apache - access.log и error.log. Я добавил новый журнал от демона, daemon.log. Журнал демона ведется демоном, работающим под пользователем www-data
.
При запуске logrotate
создает новый журнал с разрешениями 640
, пользователь root
и группа adm
. Apache может записывать в журналы доступа и ошибок с этими разрешениями, но мой демон, работающий как www-data
, не может.
На мой взгляд, есть несколько вариантов:
logrotate
, чтобы вручную указать, каким файлам журнала и какие разрешения даны права. Но это означает, что если я добавляю новый файл журнала, мне нужно не забыть настроить logrotate
для управления им. logrotate
, чтобы каким-либо образом создать исключение для файла daemon.log. Возможно ли такое? logrotate
для управления файлами журнала в этой новой папке. Достаточно просто, но я бы хотел сохранить все свои журналы вместе, если смогу. logrotate
, чтобы создавать файлы под другим пользователем и группой. Похоже, это может привести к потере информации журнала. www-data
в группу adm
и установите права доступа 660
. Мне не нравится идея непреднамеренно предоставить пользователю www-data
доступ к другим материалам. 666
. Похоже на грубое решение. Ни один из них не идеален, и я почти уверен, что пара ужасных. Есть ли другой вариант, или один из них лучше всего? Я что-то упустил?
ഫയലുകൾക്ക് എഴുതുന്നതിനായി പ്രോസസ്സിന് ആവശ്യമായ ഉടമസ്ഥാവകാശം ഉപയോഗിച്ച് ലോഗ്രോട്ടേറ്റ് ഫയലുകൾ സൃഷ്ടിക്കാൻ പ്രേരിപ്പിക്കുക എന്നതാണ് സ്റ്റാൻഡേർഡ് ഉത്തരം. (എന്തുകൊണ്ടാണ് ഇത് ലോഗ് വിവരങ്ങൾ നഷ്ടപ്പെടുത്തുന്നത് എന്ന് ഞാൻ കാണുന്നില്ല; ഇത് ഒരു അപകടസാധ്യതയാണെന്ന് നിങ്ങൾ കരുതുന്നത് എന്തുകൊണ്ടെന്ന് വിശദീകരിക്കാം.)
പ്രസക്തമായ ബിറ്റ് ലോഗ്രോട്ടേറ്റ് കോൺഫിഗറിലേക്ക്
create owner group
വരി ചേർത്താണ് നിങ്ങൾ ഇത് ചെയ്യുന്നത്. നിങ്ങൾക്ക് ഒരു പ്രത്യേക അനുമതിയോടെ ഫയലുകൾ ലഭിക്കണമെങ്കിൽ, പകരം
create mode owner group
ചേർക്കുക.
ഉദാഹരണം:
create 644 www-data www-data