![Xubuntu 15.04 でサスペンド フックが動作しない](https://rvso.com/image/1127605/Xubuntu%2015.04%20%E3%81%A7%E3%82%B5%E3%82%B9%E3%83%9A%E3%83%B3%E3%83%89%20%E3%83%95%E3%83%83%E3%82%AF%E3%81%8C%E5%8B%95%E4%BD%9C%E3%81%97%E3%81%AA%E3%81%84.png)
私は使っていますこの吊り下げフック12.10 の頃から Ubuntu と Kubuntu を使っていましたが、昨日 Xubuntu 15.04 をクリーンインストールしたら、突然動作しなくなったことに気付きました。ファイルを作成し、/usr/lib/pm-utils/sleep.d/45fixusbwakeup
そこにスクリプトをコピーして、いつものように実行可能にしましたsudo chmod +x /usr/lib/pm-utils/sleep.d/45fixusbwakeup
。私は専門家ではありませんし、このフックは私の場合は常に動作していたので、今何が問題なのか見当もつきません。
基本的に必要なのは、コンピューターがスリープ状態になる前、または起動するたびに、次の 3 つのコマンドが実行されることです。
sudo -s
echo USB0 > /proc/acpi/wakeup
echo USB2 > /proc/acpi/wakeup
また、ターミナル コマンドでサスペンドするとスクリプトは問題なく動作しますが、Xubuntu の従来のログアウト--->サスペンド ボタンでは動作しないので、これは Xubuntu に関連した問題だと思います。実際には、を介してサスペンドしており、それが問題を引き起こしているとsudo pm-suspend
思います。xfce4-session-logout --suspend
答え1
xfce4-session は、systemd システムで systemd-sleep を使用します (pm-suspend ではありません)。systemd-sleep フックは、次のテンプレートを使用して /lib/systemd/system-sleep に配置する必要があります。
#!/bin/sh
case $1/$2 in
pre/*)
echo "Going to $2..."
;;
post/*)
echo "Waking up from $2..."
;;
esac
...そして実行可能になります。systemd のもう 1 つの注意点は、このディレクトリ内のスクリプトが、名前に基づいて順番に実行されるのではなく、同時に実行されることです (pm-utils の場合のように)。
答え2
起動時にコマンドを実行するには
コマンド(削除sudo -s
)を.shファイルを作成し、 で実行可能にしますchmod +x <filename>
。
作成する新しいbash スクリプトを含みgksudo -s root <path_to_other_bash_script>
、実行可能にします。
ファイルを作成する。デスクトップディレクトリにサフィックスを追加し~/.config/autostart
ます。ない場合はフォルダーを作成してください。
以下のものを。デスクトップファイル:
[デスクトップエントリー] 名前=2番目のbashスクリプトの名前 Exec=パス/to/second/script タイプ=アプリケーション
bash スクリプト内に存在するコマンドは起動時に実行されます。