Create a Post
cancel
Showing results for 
Search instead for 
Did you mean: 
Juan_Concepcion
Advisor

GAIA Backups

There exists an issue in GAIA presently where backups just continuously grow and cannot be setup to auto delete.  The result is that the /var/log/ directory becomes full and then causes all types of application issues.  The following will run every  2 months and auto clean any backups older than the specified number of days (30 days in example below).  The reason this method is used is because the normal cron scheduler will not accept the command through webui or cli - therefore this will use the native crontab capabilities of linux to assist in cleaning up older backups.

 

In Gaia Clish, create a root user without capability to login:

 

HostName> add user jobuser uid 0 homedir /home/jobuser
HotsName> save config

 

Note: Avoid giving the user a password and avoid giving the user any Gaia roles as they are not needed.

 

In Expert mode, create a cron job for this user:
[Expert@HostName]# crontab -u jobuser -e

 

(This creates and allows you to edit the file /var/spool/cron/jobuser).

 

 Syntax for Entry in crontab:

 

Minute

Hour

Day of Month

Month

Day of week | Command

0

0

 1

 1,3,5,7,9,11

*                   | /usr/bin/find /var/log/ -mtime +30 -wholename “/var/log/CPbackup/backups/*.tgz" -delete

 

 

Save the file: shift+: then x!

 

This will clean up backups older than 30 days @ midnight on the specified day every other month (in this example on the 1st day every two months)

7 Replies
Kalyan_Addenki
Contributor

It worked successfully after a slight change to the command

/usr/bin/find /var/log/CPbackup/backups/ -mtime +30 -name "*.tgz" -delete

Juan_Concepcion
Advisor

Worked for me can you provide error you are getting or simply doesn’t clean up as expected??

--Juan

Kalyan_Addenki
Contributor

Here is the error:

]# /usr/bin/find /var/log/ -mtime +30 -name "/var/log/CPbackup/backups/*.tgz" -delete
/usr/bin/find: warning: Unix filenames usually don't contain slashes (though pathnames do). That means that '-name /var/log/CPbackup/backups/*.tgz' will probably evaluate to false all the time on this system. You might find the '-wholename' test more useful, or perhaps '-samefile'. Alternatively, if you are using GNU grep, you could use 'find ... -print0 | grep -FzZ /var/log/CPbackup/backups/*.tgz'.

Juan_Concepcion
Advisor

This fixes it – I’ll update

/usr/bin/find /var/log/ -mtime +30 -wholename "/var/log/CPbackup/backups/*.tgz" -delete

Kalyan_Addenki
Contributor

That worked!

simoneciotti
Explorer

05 11 * * * /usr/bin/find /var/log/ -wholename "/var/log/CPbackup/backups/*.tgz" -delete

This work, every day delete old tgz file

 

0 Kudos
_Val_
Admin
Admin

You do not want to delete all but the newest file, some rotation is advised. In case your OS is corrupted, the latest backup is likely to have those corrupted files, but several previous might not.

0 Kudos

Leaderboard

Epsum factorial non deposit quid pro quo hic escorol.

Upcoming Events

    CheckMates Events