私は Linux 初心者で、cron を使ってタスクをスケジュールする方法を最近知りました。これまで手動で使用していた小さなシェル スクリプトがあります。
sudo apt-get check && sudo apt-get update && sudo apt-get upgrade && sudo apt-get autoremove && sudo apt-get autoclean
毎日手動で実行しないように cron を使用してスケジュールを設定したいのですが、どうやらできないようです。続行するには sudo パスワードが必要だからですか? アップグレードなどを自動承認せずにこれを機能させる方法はありますか?
答え1
代わりに「unattended-upgrades」を使用することをお勧めします。
その目的は、最新のセキュリティ (およびその他の) アップデートを自動的に適用してコンピューターを最新の状態に保つことです。[1]
インストールするには:
sudo apt install unattended-upgrades
動作させる方法については、以下をお読みください。ここ。
質問に対処するには、独自の「crontab」ファイルを使用する必要なく/etc/crontab
、ファイルを編集してユーザーを使用してコマンドを実行します。root
sudo
nano /etc/crontab
次のような行を追加します:
45 21 * * * root apt-get update > /home/ravexina/out.log
これは、毎晩「21:45」にユーザーapt-get update
を使用して実行されroot
、出力が に記録されます/home/ravexina/out.log
。