april breeze

another web programmer

photo gallery

Fix a bug in Ubuntu Official Documentation > Backups > Archive Rotation

문제가 생기는건 8일 또는 9일이 토요일일때만.

https://help.ubuntu.com/12.04/serverguide/backups-shellscripts-rotation.html

위 링크의 스크립트에서 day_num=$(date +%d) 이렇게 날짜를 뽑아오면 한자리수 날자일때 leading zero가 포함된 string을 반환한다.

이 상태로 그 아래의 if문을 통과하면 value too great for base 에러가 발생하고, 뒷 부분에서 archive_file 변수에 값을 할당하지 못해서 백업을 생성하지 못하게 된다. 위에 쓴 것처럼 8일 또는 9일이 토요일일때만.

그래서, day_num을 integer로 typecasting 하거나 0을 없애야한다. 아래처럼.

day_num=$(expr $day_num + 0) or
day_num=(${day_num#0})

comments powered by Disqus