Bu sıralar sizler ile linux suncular üzerinde hayatımı kolaylaştıran betikleri paylaşıyorum. Umarım sizlerin de işine yarıyordur bu betikler.
Tahimin edebileceğiniz üzere her gün belirli olarak veri tabanı ve sunucu dosyalarının yedeklerini alıyorum. Hafıza ile ilgili problemim olduğu için bu yedekleri ayda birkaç sefer silmek durumunda kalıyorum. Eğer silinmez ise, bir süre sonra sunucuda hiç yer kalmıyor ve sunucu servisleri çalışmalarını durduruyorlar. Geçenlerde Erciyes’e kayak yapmaya gittiğimde sunucudaki hafızanın %95 inden fazlasının dolduğunun haberini alınca, biraz sıkıntıya sokmuştu bu durum beni 🙂
Yedeklerimizi /mnt/backups/ dizininde sakladığımzı varsayalım ve her gece saat 2 de 7 günden eski olan yedek dosyalarımızı silmeye başlayalım.
İşleme başlamadan önce hangi dosyaların silineceğinin denemesini yapalım.
find /mnt/backups/ -type f -mtime +7
komutu ile hangi dosyaların silineceğinin listesini görürüz. Buradaki +7 sayısı, bize gün değerini yansıtmakta. Bunu dilediğiniz gibi değiştirebilirsiniz.
Eğer kaşımıza gelen listeden eminsek devam edebiliriz.
Öncelikle crontab -e komutu ile zamanlanmış görev listemizi düzenleme ekranına gidelim
#### REMOVE OLD BACKUPS #### 0 2 * * * /bin/find /mnt/backups/ -type f -mtime +7 -exec rm -rf {} \;
yukarıdaki komutu yapıştıralım. Bundan sonra her gece saat 2 de belirlediğimiz dizindeki koşulumuza uyan dosyalar silinecek.