
たとえば、外出中に自宅のコンピューターで ssh を使用しているとします。何らかの理由で、コンピューターを再起動する必要があります。
# shutdown -r +10
これにより、1分ごとに警告メッセージが送信されます。wall
これは、たとえば私の両親が通常のデスクトップで使用した場合にはまったく見えません。
wall
たとえば通知を介してメッセージをデスクトップに届ける方法はありますか。
答え1
との内部はwall
非常にブロックされており、古いため、一度そこにメッセージを入れると、そこからメッセージを取り出すことは実際には不可能です。
これに対して提案された唯一の現実的なアイデアは(この問題は以前にも議論されたことがある、多くの場合、スクリプトを変更してshutdown
、reboot
dbus 経由で何かを利用できるようにするか、(1 台のコンピューターと 1 つの修正のみを扱っているため)通知送信メッセージを送信するようにします。
彼らははスクリプトだけなので、ハッキングするだけで済みます。しかし、これはおそらく推進する価値のある原因だと思います。Ubuntu に対するバグを報告し、パッチを追加してください (X 環境がない場合でも通知を送信せずに動作できることを確認してください)。必要なのは、このような使いやすさです。
これまで聞いたことがありませんでしたgxmessage
が、私は を使用しますnotify-send
。
完全なソリューションでは、複数のディスプレイ (マルチヘッド、リモート ユーザーなど) の可能性に対応する必要がありますが、ありがたいことに、昨日その部分のコードをいくつか書きました。
for display in `ps aux | grep -oE "/usr/bin/X\s[^ ]+" | cut -d " " -f 2`; do
DISPLAY=$display notify-send -u critical 'Shutdown notice' 'Save all your work. THE SYSTEM IS GOING DOWN!!' -i /usr/share/pixmaps/gnome-computer.png
done
-display
(またはフラグの代わりにエクスポートを使用しています。どちらも必要なのか--display
分からないためですnotify-send
)
答え2
zenityを使用して手動でメッセージを送信することもできます
zenity --warning --text "badp's about to restart the computer" --display=:0
もちろん、これをスクリプトに含めることもできます。
答え3
私の知る限り、これらのメッセージをグラフィカル環境で表示するためのwallコマンド用のXクライアントはありません。gxメッセージポップアップを表示するためのアプリですが、スクリプトを自分で記述する必要があります。
答え4
私のシステムでは、Wayland上のKDE Plasma 5.27.10で、wall
する仕事です。SSHで接続してwall
メッセージを送ると、通知が表示されます全てプラズマ インスタンス。(ユーザーを切り替えてメッセージを送信すると、現在のユーザーに表示され、切り替え直すと、適切なタイムスタンプが付けられたメッセージが表示されます) また、どのユーザーがメッセージを送信したかが示されます。
Wayland 上の GNOME Shell 45.3ではないサポートwall
メッセージ。
w
またはwho
コマンドを実行して、GNOME 上か、適切にサポートされていない別の DE 上かを判断することをお勧めしますwall
。