Rsnapshot:文件夹所有权权限为“备份”组而不是根

Rsnapshot:文件夹所有权权限为“备份”组而不是根

我正在使用 rsnapshot 对服务器上的 MYSQL 数据库进行每日备份。除了目录的所有权是 之外,一切都运行良好root:root。我希望它能够root:backups让我通过 ssh 连接轻松地将这些备份下载到本地计算机。 (我的 ssh 用户具有 sudo 权限,但我不想每次制作备份的本地副本时都必须输入密码。该用户是备份团体。)

/etc/rsnapshot.conf我有这一行:

backup_script /usr/local/bin/backup_mysql.sh mysql/

在文件中/usr/local/bin/backup_mysql.sh我有:

umask 0077
# backup the database
date=`date +"%y%m%d-%h%m%s"`                                                                                             
destination=$date'-data.sql.gz'
/usr/bin/mysqldump --defaults-extra-file=/root/.my.cnf --single-transaction --quick --lock-tables=false --routines data | gzip -c > $destination
/bin/chmod 660 $destination
/bin/chown root:backups $destination

结果的文件结构是:

/backups/
├── [drwxrwx---]  daily.0
│   └── [drwxrwx---]  mysql [error opening dir]
├── [drwxrwx---]  daily.1
│   └── [drwxrwx---]  mysql [error opening dir]

备份数据文件本身的所有权是正确的,如root:backups,但我无法访问该文件,因为它所在的文件夹,mysql,属于root:root

答案1

默认/etc/rsnapshot配置文件中的内容如下:

# Specify the path to a script (and any optional arguments) to run right
# after rsnapshot syncs files
# cmd_postexec   /path/to/postexec/script

您可以使用对需要更改其组所有权的结果文件cmd_postexec运行命令。chgrp

相关内容