Директива Sudo для чтения файла журнала

Выбор отдельных проектов в репо требует двух шагов и может быть затруднен, если у вас есть странная структура репо. Если вы просто перемещаете все проекты в другое репо, я бы сделал следующее:

svnadmin dump path/to/oldrepo > myrepos.dump

Затем вы загрузите их в новое репо с помощью:

svnadmin load path/to/newrepo < myrepos.dump

Если вы действительно хотите выбрать отдельные репозитории, тогда svndumpfilter можно использовать в результирующем файле myrepos.dump :

cat myrepos.dump |svndumpfilter include name_of_project > name_of_project.dump

Затем вы загружаете отдельные дампы проекта, как указано выше, с помощью команды svnadmin load .

Если вам не нужна история, проще всего использовать svn export , чтобы вытащить проекты, которые вам нужны, а затем svn добавить их в новый репозиторий.

1
01.10.2015, 03:38
1 ответ

Строка sudoers

 apache ALL = (ALL) NOPASSWD: / var / log / maillog 
 

разрешает ] пользователь apache , чтобы выполнить файл / var / log / maillog . Но ваш сценарий выполняет grep , поэтому эта строка не применяется.

Судо работает по команде. Невозможно использовать его, чтобы разрешить доступ к определенному файлу с помощью какой-либо команды. Вы можете разрешить команду grep bounced / var / log / maillog , если это все, что вам нужно. Но если вы хотите просто разрешить пользователю apache читать из / var / log / maillog с помощью любой программы, то вам следует добавить apache ] в список управления доступом для этого файла.

setfacl -m user:apache:r /var/log/maillog

Эта команда должна выполняться каждый раз при повторном создании файла из-за ротации журнала. Это делается автоматически в достаточно свежих версиях logrotate . Если ваша версия слишком старая, добавьте эту команду в конфигурацию logrotate как запись postrotate .

1
27.01.2020, 23:49

Теги

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