電源に接続されている場合にのみバックアップし、一定期間内にのみバックアップします。

電源に接続されている場合にのみバックアップし、一定期間内にのみバックアップします。

私は、Ubuntu 16.04を実行しているラップトップで毎日のバックアップにDeja Dup(Ubuntuの標準バックアップアプリケーション)を使用します。バックアップを作成するには多くの電力が必要なため、ラップトップが電源に接続されている場合にのみバックアップを自動的に開始したいと思います。

また、現地時間(CET / CEST)(24時間制)8時から9時45分の間にバックアップが自動的に開始されることは望ましくありません。

最後に、毎日複数のバックアップを自動的に作成したくはありませんが、可能であればバックアップが自動的に作成されることを願っています。手動で開始されたバックアップが考慮されるかどうかは関係ありません。

次のコマンドを使用してバックアップを開始できます。

deja-dup --backup

しかし、他のアプリケーションによって速度が遅くならないように、最も低い優先順位で実行されることを望んでいます。

nice -n 19 deja-dup --backup

もちろん、Deja Dupを有効にしてバックアップを開始する他の方法も許可されています。

できるもちろん、私が望むことを正確に実行するプログラムやスクリプトを書いて解決策を見つけるように強制します。しかし、それはLinuxであり、おそらくよりシンプルでエレガントな方法があります。それでもスクリプトが生成される可能性がありますが、解決策を強制しながら考えたよりも短くてエレガントになる可能性があります。しかし、これを持ってゴルフをするのはやめましょう。 :D

ベストアンサー1

私が考えることができる最もエレガントな解決策は、特定の時間内に1日に1回バックアップスクリプトを実行するように調整できるcrontabを設定することです。

「電源に接続されている」確認のために、私の場合、次のコマンドが機能しました。

root@debian:/home/gv/Desktop/PythonTests# upower -i /org/freedesktop/UPower/devices/line_power_AC |grep online
    online:              yes

次のようにスクリプトに含めることができます。

onpower=$(upower -i /org/freedesktop/UPower/devices/line_power_AC |grep online |awk -F " " '{print $NF}')
if [[ "$onpower" == "yes" ]];then 
deja-dup --backup
fi

おすすめ記事