パスワードを入力せずにrtcwakeを使用する

パスワードを入力せずにrtcwakeを使用する

rtcwake -m off -s 60パスワードを入力せずに同様のことをしたいと思います。

私はvisudoを使って/ etc / sudoersに次の行を書き込みます。 %sudo ALL = NOPASSWD: /sbin/shutdown, /sbin/poweroff, /sbin/halt, /sbin/reboot

パスワードを入力しなくても電話を終了できます。ただし、パスワードなしでrtcwakeを使用すると機能しません。代わりに、次のメッセージが表示されます。

rtcwake: assuming RTC uses UTC ... rtcwake: wakeup from "off" using /dev/rtc0 at Fri Dec 18 17:45:43 2015 shutdown: Need to be root

なくなったものありますか?

答え1

すでにユーザーがいつでもシステムをシャットダウンできることを信頼しているので、ユーザーにrtcwakerootとして呼び出すようにしてください。実行visudoして/usr/sbin/rtcwakeその行に追加する/sbin/shutdownなどの操作を実行します。

答え2

これを達成するために新しいudevルールを作成できます。

40-rtc-permissions.rules次の行を置くことができますまたは(配布パネルに応じて)に新しいファイルを作成します。/lib/udev/rules.d/etc/udev/rules.d

KERNEL=="rtc0", GROUP="wheel"

グループが必ずしもホイールである必要はありません。 rtc0 デバイスにアクセスしたいユーザーのグループにすることができます。

答え3

知っていた。 /etc/rc.localに次の行を追加しました。

sudo chmod ugo+r rtc0

そして %sudo ALL = NOPASSWD: /sbin/shutdown, /sbin/poweroff, /usr/sbin/rtcwake /etc/sudoersにあります。私のアプリケーションは、重要なタスクを実行していない専用のコンピュータで実行されるため、セキュリティには気をつけません。

編集:/usr/sbin/rtcwake/ etc / sudoersに含まれているGillesの答えに基づいています。

関連情報