Saya telah membuat skrip cadangan untuk mencadangkan data dunia di server Minecraft saya setiap jam menggunakan cron, tetapi karena dunia terus-menerus diedit oleh pemain, tar memberi tahu saya bahwa file berubah saat mereka dibaca. Saya menambahkan --ignore-command-error ke tar dalam skrip dan yang menekan kesalahan ketika saya menjalankannya secara manual, namun cron masih mengirim pesan email yang mengatakan bahwa file diubah ketika sedang dibaca, dan akhirnya membanjiri surat saya karena itu berjalan satu jam sekali. Adakah yang tahu cara memperbaikinya? Ini skripnya:
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
tidakcron
,-s
berartiselinux context
.....Alih-alih mem-pipkan semuanya ke
/dev/null
(yang mungkin meninggalkan Anda tanpa petunjuk tentang apa yang terjadi jika terjadi kesalahan), Anda dapat menyalurkan skrip Anda untuk mencatat file seperti ini:Dan untuk berhenti menerima email, cukup setel
MAILTO
variabel ke string kosong di awal file crontab Anda:sumber
Jika Anda tidak ingin mail untuk tugas cron tertentu, Anda bisa menambahkannya
>/dev/null 2>&1
di akhir baris:sumber
Anda harus menambahkan yang berikut ini ke perintah gnu tar Anda : --warning = no-file-berubah
Itu akan menekan semua pesan " % s: file berubah saat kami membacanya ". Dan dengan menggunakan solusi ini (dan tidak mengarahkan ulang semuanya ke / dev / null), Anda masih bisa mendapatkan pesan kesalahan ketika semuanya benar-benar salah ..
Dengan bendera --warning Anda dapat mengaktifkan dan menonaktifkan banyak pesan berbeda yang dicetak tar . Inilah bagian yang relevan dari manual ini dengan semua kata kunci yang dapat Anda gunakan: https://www.gnu.org/software/tar/manual/html_section/tar_27.html .
Catatan: dengan menambahkan " tidak- " di depan kata kunci, pesan akan ditekan.
sumber