в /proc/acpi/alarm писать нужно время в таймзоне биоса.
. /etc/init.d/functions SourceIfNotEmpty /etc/sysconfig/clock valid_date(){ biosdate=$(date $utcswitch -d "$timespec $tz") && echo Setting alarm on $biosdate ... } write_alarm(){ if [ -w /proc/acpi/alarm ] ; then date $utcswitch -d "$timespec $tz" +'%Y-%M-%d %H:%M:%S' > /proc/acpi/alarm else echo "/proc/acpi/alarm isn't writable!" return -1 fi } tz=`date +%Z` if [ "$*" == "" ]; then read timespec || exit 0 else timespec="$*" fi [ "$UTC" == "yes" ] && utcswitch="-u" || utcswitch="" if valid_date && write_alarm; then echo "alarm installed, test it (remember that is BIOS timezone): " echo -n " " ; cat /proc/acpi/alarm else echo Can\'t setup alarm! exit -1 fi