У меня проблема в том, что я не могу обернуть голову. Я настроил logrotate на сервере Centos 7, чтобы вращать журналы моего приложения.
Этот файл находится в /etc/cron.daily (я даже добавил 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
Кто-нибудь когда-либо сталкивался с этим или есть какие-либо идеи, что может быть причиной этого?