代码改变世界

AutoMySQLBackup 3.0 Bug:"du: WARNING: use --si, not -H"

2015-11-05 17:42  潇湘隐者  阅读(1004)  评论(0编辑  收藏  举报

案例环境:

操作系统版本: Red Hat Enterprise Linux Server release 5.7 64bit

数据库版本 : 5.6.19 MySQL Community Server

AutoMySQLBackup: Automysqlbackup-v3.0_rc6

 

案例场景:

AutoMySQLBackup 3.0版本备份时,出现告警错误“du: WARNING: use --si, not -H; the meaning of the -H option will soon change to be the same as that of --dereference-args (-D)” 具体信息请见下面:

 
==============================================================================
Total disk space used for backup storage...
Size - Location
1.8M /u01/db_backup/mysqlbackup/
 
==============================================================================
 
###### WARNING ######
Errors reported during AutoMySQLBackup execution.. Backup failed
Error log below..
du: WARNING: use --si, not -H; the meaning of the -H option will soon
change to be the same as that of --dereference-args (-D)
 
================================== End of Backup =============================
==============================================================================

 

出现这个错误是因为在 Red Hat Enterprise Linux 5.7上的du命令不符合POSIX标准规范。具体参考官方的AutoMySQLBackup 3.0 warning on du in Centos (5.7)

The POSIX specifications are. It seems, that the Centos 5.7 version of du is not POSIX compliant, but will soon be. I have done my best to use only POSIX compliant syntax to assure the bug-free running on most systems. Unfortunately, I can't take care of every system and distribution, which chooses to defy POSIX syntax. For other people and myself, it would be a good idea to get the options of du on Centos 5.7, so please post 'du --help'.

如下所示,在命令du --help中,你就能从帮助信息中看到下面信息:

clip_image001

 

可以通过修改脚本/usr/local/bin/automysqlbackup 找到下面脚本,修改脚本将“ echo `du -hsH "${CONFIG_backup_dir}"` 修改为 echo `du -hs "${CONFIG_backup_dir}"` 即可解决问题。

clip_image002

 

在Red Hat Enterprise Linux Server release 6.6 就不会有这个问题,它的du版本为8.4, Red Hat Enterprise Linux 5.7上的du命令版本为du (GNU coreutils) 5.97

# du --version
du (GNU coreutils) 8.4
Copyright (C) 2010 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
 
Written by Torbjörn Granlund, David MacKenzie, Paul Eggert,
and Jim Meyering.

参考资料:

http://sourceforge.net/p/automysqlbackup/bugs/54/