diff --git a/CHANGELOG.md b/CHANGELOG.md index ae190437..03ab0c8e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,7 @@ In Development * On multi-homed machines, Postfix now binds to the right network interface when sending outbound mail so that SPF checks on the receiving end will pass. * Backup times were displayed with the wrong time zone. * On low-usage systems, don't hold backups for quite so long by taking a full backup more often. +* Nightly status checks might fail if any domains had non-ASCII characters. v0.16 (January 30, 2016) ------------------------ diff --git a/conf/management-initscript b/conf/management-initscript index 5067396c..1e5f9cf9 100755 --- a/conf/management-initscript +++ b/conf/management-initscript @@ -27,9 +27,9 @@ EXEC_AS_USER=root # Ensure Python reads/writes files in UTF-8. If the machine # triggers some other locale in Python, like ASCII encoding, -# Python may not be able to read/write files. Here and in +# Python may not be able to read/write files. Set also # setup/start.sh (where the locale is also installed if not -# already present). +# already present) and management/daily_tasks.sh. export LANGUAGE=en_US.UTF-8 export LC_ALL=en_US.UTF-8 export LANG=en_US.UTF-8 diff --git a/management/daily_tasks.sh b/management/daily_tasks.sh index 52bf4602..3cea74b1 100755 --- a/management/daily_tasks.sh +++ b/management/daily_tasks.sh @@ -1,6 +1,14 @@ #!/bin/bash # This script is run daily (at 3am each night). +# Set character encoding flags to ensure that any non-ASCII +# characters don't cause problems. See setup/start.sh and +# the management daemon startup script. +export LANGUAGE=en_US.UTF-8 +export LC_ALL=en_US.UTF-8 +export LANG=en_US.UTF-8 +export LC_TYPE=en_US.UTF-8 + # Take a backup. management/backup.py | management/email_administrator.py "Backup Status" diff --git a/setup/start.sh b/setup/start.sh index 5612ab3f..ab6d3055 100755 --- a/setup/start.sh +++ b/setup/start.sh @@ -10,8 +10,8 @@ source setup/preflight.sh # Ensure Python reads/writes files in UTF-8. If the machine # triggers some other locale in Python, like ASCII encoding, -# Python may not be able to read/write files. Here and in -# the management daemon startup script. +# Python may not be able to read/write files. This is also +# in the management daemon startup script and the cron script. if [ -z `locale -a | grep en_US.utf8` ]; then # Generate locale if not exists