logrotate не удалось повернуть, отказано в разрешении как пользователь root

у меня проблема,с которой я не могу справиться. Я настроил logrotate на сервере centos 7, чтобы повернуть мои журналы приложений.

этот файл находится в /etc / cron.ежедневно (я даже добавил whoami, чтобы убедиться, что он работает как root):

#!/bin/sh

whoami

/usr/sbin/logrotate -v /etc/logrotate.d/myapp
EXITVALUE=$?
if [ $EXITVALUE != 0 ]; then
/usr/bin/logger -t logrotate "ALERT exited abnormally with [$EXITVALUE]"
fi
exit 0

это выполняет мою конфигурацию logrotate ...

"/opt/myapp/log/*.log" {
  daily
  create 644 root root
  rotate 5
  size 20M
  copytruncate
  missingok
  notifempty
  compress
}

вот мой каталог журналов...

[root@server log]# ls -la
total 97684
drwxr-xr-x. 3 root root      4096 Sep 28 12:41 .
drwxr-xr-x. 5 root root      4096 Sep 27 20:57 ..
-rw-r--r--. 1 root root 100015457 Sep 28 12:36 myapp.log

каждый раз, когда мы запускаем его вручную как root, он вращает журнал... но когда мы запускаем его через cron, он терпит неудачу. Вот почту он отправляет...

From root@server  Thu Sep 28 12:30:02 2017
Return-Path: <root@server>
X-Original-To: root
Delivered-To: root@server
Received: by server (Postfix, from userid 0)
        id 9C82B419; Thu, 28 Sep 2017 12:30:02 -0500 (CDT)
From: "(Cron Daemon)" <root@server>
To: root@server
Subject: Cron <root@server> run-parts /etc/cron.daily
Content-Type: text/plain; charset=UTF-8
Auto-Submitted: auto-generated
Precedence: bulk
X-Cron-Env: <XDG_SESSION_ID=10746>
X-Cron-Env: <XDG_RUNTIME_DIR=/run/user/0>
X-Cron-Env: <LANG=en_US.UTF-8>
X-Cron-Env: <SHELL=/bin/bash>
X-Cron-Env: <PATH=/sbin:/bin:/usr/sbin:/usr/bin>
X-Cron-Env: <MAILTO=root>
X-Cron-Env: <HOME=/root>
X-Cron-Env: <LOGNAME=root>
X-Cron-Env: <USER=root>
Message-Id: <20170928173002.9C82B419@server>
Date: Thu, 28 Sep 2017 12:30:01 -0500 (CDT)
/etc/cron.daily/myapp:

root <<<<<<<<< whoami output
reading config file /etc/logrotate.d/myapp
Handling 1 logs
rotating pattern: /opt/myapp/log/*.log  20971520 bytes (5 rotations)
empty log files are not rotated, old logs are removed
considering log /opt/myapp/log/myapp.log
  log needs rotating
rotating log /opt/myapp/log/myapp.log, log->rotateCount is 5
error: error opening /opt/myapp/log/myapp.log: Permission denied
set default create context

кто-нибудь столкнуться с этим или есть идеи что может быть причиной этого?

11
задан Erich
27.03.2023 6:52 Количество просмотров материала 3561
Распечатать страницу

1 ответ

оказывается, это была проблема SELinux, контекст файла не был тот, к которому logrotate имел доступ, поэтому неоднократно получал отказ в доступе.

смотрите здесь для этого ответа:SELinux fcontext

0
отвечен Erich 2023-03-28 14:40

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх