notify-send
root権限を必要とするbashスクリプトを作成していますが、GNOME(またはこのコマンドをサポートする他のデスクトップシェル)を使用して、root以外のユーザーに特定の警告を知らせたいと思います。期待どおりにnotify-send
ルートシェルから呼び出すと、root以外のユーザーのデスクトップに通知が表示されません。
次のようにコマンドを呼び出そうとします。
su -c "notify-send 'my message'" -s /bin/sh someuser
( 、 を使用することも含む/bin/bash
)/usr/zsh
しかし、これらは効果がありません。
notify-send
(指定された)非rootユーザーのデスクトップに通知を表示するようにrootシェルからそれを呼び出すにはどうすればよいですか?
答え1
次のようにする必要があります。
DISPLAY=:0.0 su $USER -c "/usr/bin/notify-send 'my message'"
上記は私が以前使っていたものですroot
。もちろん、変数に実際のユーザーを指定する必要があります$USER
。