UbuntuベースのオペレーティングシステムであるPop!_OSを実行していますが、一時停止の前後にnordvpn disconnect
実行したいと思います。nordvpn connect
私は次のコードを使用しています。このアーチLinux Wikiそして、システムが起きたときにnordvpn connect
/コマンドを実行する方法はありません。nordvpn disconnect
ファイルを追加し99nordvpn-reload
て/lib/systemd/system-sleep/
実行可能にしましたsudo chmod a+x 99nordvpn-reload
。このファイルのコードは次のとおりです。
#!/bin/sh
case $1/$2 in
pre/*)
nordvpn disconnect
;;
post/*)
nordvpn connect
;;
esac
スリープモードで目覚めてjournalctl -u systemd-suspend.service
ディスプレイを起動します。
Jun 13 22:08:38 pop-os [4520]: /usr/lib/systemd/system-sleep/99nordvpn-reload failed with exit status 1.
また、ローカルユーザーとしてコマンドを実行してみました。
#!/bin/sh
case $1/$2 in
pre/*)
sudo -u $USER nordvpn disconnect
;;
post/*)
sudo -u $USER nordvpn connect
;;
esac
しかし、$USER
の出力に置き換えられますecho $USER
。ただし、以前と同じエラーメッセージが表示されます。私はこのエラーがnordvpn
私がインストールしたローカルまたはパッケージに関連している$USER
と仮定して実行コマンドを試しましたsudo -u $USER
。
に基づいてこのスレッド、次の内容でグローバル実行ファイルを作成してみました/usr/local/bin/nordvpn-reload
。
#!/bin/bash
nordvpn disconnect;nordvpn connect
内容を/lib/systemd/system-sleep/99nordvpn-reload
次のように変更します。
#!/bin/sh
case $1/$2 in
pre/*)
exit 0
;;
post/*)
/usr/local/bin/nordvpn-reload
;;
esac
しかし、今回もいつものようなエラーが発生します。どんな提案/提案/追加読書にも感謝します。
答え1
Ubuntu 20.04 LTSで同様のことを試しましたが、次のスクリプトで機能しました/lib/systemd/system-sleep/nordvpn-reload
。
#!/bin/sh
case $1 in
pre)
nordvpn disconnect
;;
post)
nordvpn connect
;;
esac
答え2
pre)
私の場合は、次の行を変更する必要がありました。@moritz-shroederからの返信NordVPNが実際にオフになっていることを確認してください。
#!/bin/sh
case $1 in
pre)
pkill -9 nordvpn
;;
post)
nordvpn connect
;;
esac
ご覧のとおり、pkill
ここではsignalを使用しています9
。これは、nordpnに実際にプロセスを終了するように指示します。何らかの理由でdisconnect
簡単な方法で十分ではありません。
詳細をご覧ください。pkill
ここ