こんにちは。linux初心者です。

先日、quotacheck を自動的に実行するようにしようと思い、root になって以下のスクリプト(xxxxx.sh)を作成しました。
--------------------------------------------------
#! /bin/sh
cd /home/yyyyy/script
date > xxxxx.log
/sbin/quotaoff -avug >> xxxxx.log
/sbin/quotacheck -avug
/sbin/quotaon -avug >> xxxxx.log
date >> xxxxx.log
--------------------------------------------------
以下のように root の実行権限も付けました。

--------------------------------------------------
-rwx------ 1 root root 186 Feb 26 10:27 xxxxx.sh*
--------------------------------------------------

root になって手動で sh xxxxx.sh を実行すると正常に実行されることは確認済です。
xxxxx.log には quotaoff が実行されて数分後に quotaon が実行されたことが記録されます。

root のまま、これを crontab -e で以下のように登録しました。
----------------------------------------------
0 7 * * * /home/yyyyy/script/xxxxx.sh
----------------------------------------------

ところが実行時刻後に xxxxx.log を見ると、
実行されているのは date コマンドのみだったり(2回のdateコマンドはほぼ同時刻に実行されている)、
実行後にシステムが不安定になっていたりと、うまくいっていないようです。
root で crontab -e を実行したのに、スクリプトは root で実行されていない
などが理由でしょうか?(そういうことがあるのでしょうか?)
お分かりになりましたら、教えていただけますか?