cron が sh スクリプトを実行しないのはなぜですか?

cron が sh スクリプトを実行しないのはなぜですか?

ヘッドセットが切断されたり、PC がスリープ モードになったりするとヘッドセットの設定が解除され続けるため、gnome-schedule を使用して、ヘッドセットをフォールバック オーディオ デバイスとして設定するスクリプトを作成しました。

とにかく、crontab は次のようになります:

SHELL=/bin/sh
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/home/dmitry/bin
* * * * * headsetfix 

/home/dmitry/bin/headsetfixは

#!/bin/sh
pacmd set-default-sink alsa_output.usb-Logitech_Inc_Logitech_USB_Headset_H540_00000000-00-H540.analog-stereo
pacmd set-default-source alsa_input.usb-Logitech_Inc_Logitech_USB_Headset_H540_00000000-00-H540.analog-stereo

ターミナルからは問題なく実行されます。実行可能に chmod されていることを確認しました。また、cron から実行される「which headsetfix」は「/home/dmitry/bin/headsetfix」を出力するので、何が問題なのかはわかりません。

関連情報