Skonfigurowałem skrypt kopii zapasowej, aby co godzinę tworzył kopie zapasowe danych świata na moim serwerze Minecraft przy użyciu crona, ale ponieważ światy są stale edytowane przez graczy, tar powiedział mi, że pliki uległy zmianie podczas ich odczytu. Dodałem --ignore-command-error do tar w skrypcie i to pomija wszelkie błędy, kiedy uruchamiam go ręcznie, jednak cron nadal wysyła wiadomość e-mail z informacją, że pliki zostały zmienione podczas odczytu, i kończy się zalewanie mojej poczty, ponieważ jest biegać raz na godzinę. Czy ktoś wie jak to naprawić? To jest skrypt:
filename=$(date +%Y-%m-%d)
cd /home/minecraft/Server/
for world in survival survival_nether survival_the_end creative superflat
do
if [ ! -d "/home/minecraft/backups/$world" ]; then
mkdir /home/minecraft/backups/$world
fi
find /home/minecraft/backups/$world -mtime +1 -delete
tar --ignore-command-error -c $world/ | nice -n 10 pigz -9 > /home/minecraft/backups/$world/$filename.tar.gz
done
crontab
niecron
,-s
środkówselinux context
.....Zamiast przesyłać wszystko do
/dev/null
(co może pozostawić Cię bez pojęcia, co się stanie, jeśli coś pójdzie nie tak), możesz przesyłać skrypty do plików dziennika w następujący sposób:Aby przestać otrzymywać wiadomości e-mail, po prostu ustaw
MAILTO
zmienną na pusty ciąg na początku pliku crontab:źródło
Jeśli nie chcesz maili do konkretnego zadania Crona, możesz po prostu dodać
>/dev/null 2>&1
na końcu wiersza:źródło
Powinieneś dodać następujące polecenie do polecenia gnu tar : --warning = no-file-change
Spowoduje to pominięcie wszystkich komunikatów „ % s: plik zmieniony podczas odczytu ”. I korzystając z tego rozwiązania (i nie przekierowując wszystkiego do / dev / null), nadal będziesz mógł otrzymywać komunikaty o błędach, gdy coś naprawdę pójdzie nie tak.
Za pomocą flagi --warning można włączać i wyłączać wiele różnych komunikatów drukowanych przez tar . Oto odpowiednia część instrukcji ze wszystkimi słowami kluczowymi, których możesz użyć: https://www.gnu.org/software/tar/manual/html_section/tar_27.html .
Uwaga: poprzez dodanie słowa „ no- ” przed słowem kluczowym wiadomość zostanie pominięta.
źródło