@ -39,27 +39,41 @@ backup_delete_old_files_by_date()
file_max_count_every_day=$3
file_max_count_every_month=$4
file_max_count_every_year=$5
by_week=$6
[[ "$file_max_count_every_day" == '' ]] && file_max_count_every_day=2
[[ "$file_max_count_every_month" == '' ]] && file_max_count_every_month=2
[[ "$file_max_count_every_year" == '' ]] && file_max_count_every_year=2
backup_delete_old_files_by_regex "${backup_dir}" "${file_name_template//'@DATE'/'.*'}" "${file_max_count_every_day}" 'm_01d|y_03m_01d'
backup_delete_old_files_by_regex "${backup_dir}" "${file_name_template//'@DATE'/'.*m_01d'}" "${file_max_count_every_month}" 'y_03m_01d'
backup_delete_old_files_by_regex "${backup_dir}" "${file_name_template//'@DATE'/'.*y_03m_01d'}" "${file_max_count_every_year}" '________NOTHONG___________'
if [[ "$by_week" == "" ]]; then
backup_delete_old_files_by_regex "${backup_dir}" "${file_name_template//'@DATE'/'.*'}" "${file_max_count_every_day}" 'm_01d|y_03m_01d'
backup_delete_old_files_by_regex "${backup_dir}" "${file_name_template//'@DATE'/'.*m_01d.*'}" "${file_max_count_every_month}" 'y_03m_01d'
backup_delete_old_files_by_regex "${backup_dir}" "${file_name_template//'@DATE'/'.*y_03m_01d.*'}" "${file_max_count_every_year}" '________NOTHONG___________'
else
backup_delete_old_files_by_regex "${backup_dir}" "${file_name_template//'@DATE'/'.*'}" "${file_max_count_every_day}" '1v-|11v-'
backup_delete_old_files_by_regex "${backup_dir}" "${file_name_template//'@DATE'/'.*1v.*'}" "${file_max_count_every_month}" '11v-'
backup_delete_old_files_by_regex "${backup_dir}" "${file_name_template//'@DATE'/'.*11v-.*'}" "${file_max_count_every_year}" '________NOTHONG___________'
fi
# test
# for (( y = 2001; y < 2010; y++ )) do for (( m = 1; m < 10; m++ )) do for (( d = 1; d < 10; d++ )) do touch "backup_${y}y_0${m}m_0${d}d.zip"; backup_delete_old_files_by_date ./ "backup_@DATE\.zip" 2 2 2; sleep 0.15; done; done; done;
# for (( y = 2001; y < 2010; y++ )) do for (( v = 10; v < 51; v++ )) do touch "backup_${y}y_01m_01d-${v}v-10H.zip"; backup_delete_old_files_by_date ./ "backup_@DATE\.zip" 2 2 2 week; sleep 0.15; done; done;
}
mkalias_with_prefix 'backup_delete_old_files_by_date'
backup_date()
{
return $(date +%Yy_%mm_%dd-%Vv-%Hh_%Mm_%Ss)
}
mkalias_with_prefix 'backup_date'
backup_firefox()
{
backup_dir=$1
[ "$backup_dir" = '' ] && printf "Укажите папку для бекапа\n" && return
#ask_continue && return
cd ~
file="${backup_dir}/$(hostname)_mozilla_backup_$(date +%Yy_%mm_%dd-%Hh_%Mm_%Ss ).tgz"
file="${backup_dir}/$(hostname)_mozilla_backup_$(backup_ date).tgz"
tar cvpzf "${file}" \
--exclude=.mozilla/firefox/*.*/Cache \
.mozilla
@ -75,7 +89,7 @@ backup_home()
#ask_continue && return
cd /home
file="${backup_dir}/$(hostname)_home_backup_$(date +%Yy_%mm_%dd-%Hh_%Mm_%Ss ).tgz"
file="${backup_dir}/$(hostname)_home_backup_$(backup_ date).tgz"
sudo tar cvpzf "${file}" \
--exclude=*home_backup*.tgz \
--exclude=*/Загрузки/* \
@ -105,27 +119,46 @@ backup_home()
}
mkalias_with_prefix 'backup_home'
backup_()
backup_etc ()
{
in_dir=$1
[ "$in_dir" = '' ] && printf "\n" && return
ask_continue && return
backup_dir=$1
[ "$backup_dir" = '' ] && printf "Укажите папку для бекапа\n" && return
#ask_continue && return
cd /
file="${backup_dir}/$(hostname)_sys_etc_backup_$(backup_date).tgz"
sudo tar cvpzf "${file}" \
/etc
echo "${file}"
}
#mkalias_with_prefix 'backup_'
mkalias_with_prefix 'backup_etc '
backup_()
backup_sys ()
{
in_dir=$1
[ "$in_dir" = '' ] && printf "\n" && return
ask_continue && return
backup_dir=$1
[ "$backup_dir" = '' ] && printf "Укажите папку для бекапа\n" && return
#ask_continue && return
cd /
file="${backup_dir}/$(hostname)_sysbackup_$(backup_date).tgz"
sudo tar cvpzf "${file}" \
--exclude=/*_sysbackup_*.tgz \
--exclude=/proc \
--exclude=/dev \
--exclude=/lost+found \
--exclude=/mnt \
--exclude=/run/media \
--exclude=/sys \
--exclude=/home \
--exclude=/media \
--exclude=/var/log \
--exclude=/var/cache \
--exclude=/var/lib/flatpak \
--exclude=/var/tmp \
--exclude=/usr/share \
--exclude=/tmp \
--exclude=/opt \
/
echo "${file}"
}
#mkalias_with_prefix 'backup_'
mkalias_with_prefix 'backup_sys '
backup_()
{
in_dir=$1
[ "$in_dir" = '' ] && printf "\n" && return
ask_continue && return
}
#mkalias_with_prefix 'backup_'