merhaba
wiki dosyalarından edindiğim bilgilerle AutoMySQLBackup isminde bir betik bbuldum kendime göre ayarlarını yaptım /etc/cron.daily klasörüne kopyaladım. programı manuel çalıştırabiliyorum ve /etc/cron.daily/backups/daily içerisine yedeklerimi alabiliyorum. fakat ben bunu otomatik yapmasını istiyorum, yani hergün saat 7:00 de otomatik yedek alsın. bunun için crontab isimli dosyaya şunları yazdım ;
00 07 * * * kullanici /etc/cron.daily/automysqlbackup.sh
ama otomatik çalıştıramadım. büyük ihtimalle yanlış yere yazdım ve nereye yazağımı bilmiyorum. birde kullaniciyi yazdıktan sonra komutu çalıştırmak için şifre isteyecekmi, isteyecekse şifreyi nasıl ve nereye yazmalıyım?
Bir betikle halledilebilir. Betik yazmayı bilen bir arkadaş yardımcı olacaktır.
0 7 * * * şeklinde deneyin.
o şekilde de denedim ama olmuyor. acaba başka bir dosyaya mı yazmam gerekiyordu veya komuttamı hata var?
cat /etc/crontab
çıktısını görebilir miyiz?
Aslında /etc altında olduğu için kullanıcı olarak root girmeniz gerekebilir.
# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# m h dom mon dow user command
17 * * * * root cd / && run-parts --report /etc/cron.hourly
25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
30 7 * * * kullanici /etc/cron.daily/automysqlbackup.sh
#
kullanici
yazan yere
root
yazın. Yani en alttaki satır
30 7 * * * root /etc/cron.daily/automysqlbackup.sh
olacak.
teşekkür ederim yardım eden arkadaşlara sorunumu çözdüm. nasıl çözdüğüme gelince
öncelikle çalışacak dosyayı /home/kullanici dizinimde /yedek isminde bir dizin açarak oraya kopyaladım
yani dosya /home/kullanici/yedek dizini içerisinde, birde yedek dizinine backups dizini oluşturdum yedekleri bunun içine atsın diye.
sonra dosya içerisinde yani çalışacak betik dosyam automysqlbackup.sh içerisinde
BACKUPDIR="/home/kullanici/yedek/backups" olarak ayarladım ve kaydettim (betik içerisinde kullanıcı adı, database adı, şifre bilgilerinide ayarlamak gerekiyor)
crontab -e komutu ile kendi kullanıcım için crontab dosyasını açıyoruz.
buraya şu komutu girdim
# m h dom mon dow command
30 7 * * * sh /home/kullanici/yedek/automysqlbackup.sh
kaydettim ve çalıştığını gördüm. kendi crontab dosyasında hangi görevlerin olduğunu görmek için
crontab -l komutunu kullanabilirsiniz.
Geçmiş olsun. Açıklamanız için teşekkürler.