毎日のサーバーリブートcron?


14

割り当てられた時間にdaiyを実行し、ubuntuサーバーを再起動するcronジョブを作成したい。

rebootcronでのみ追加しようとしましたが、機能していませんが、CLIから実行しようとすると機能します。

特定の時間にサーバーを毎日再起動するために、cronにどのコマンドを追加する必要があるかをアドバイスしてください。


サーバーを毎日再起動する必要があるのはなぜですか?これは、あなたが間違ったことをしていることを示しています。多分。
gertvdijk

2
@gertvdijkマシンを定期的に再起動する必要がある状況に遭遇しました。〜30時間の稼働時間の後に悪いメモリリークが発生する独自のソフトウェア。
jrg

1
ゲームサーバー(咳)Minecraft(咳)は、しばしば何百ものプロセスに突入するか、何らかの形で分岐します。
カズウルフ

この投稿は有用ですaskubuntu.com/questions/327015/…–
ケビン

一部のアプリケーションが時間の経過とともにメモリをリークしているという問題がある場合は、そのアプリケーションサービスを再起動することをお勧めします。
ソレンA

回答:


26

次のコマンドを実行する必要があります。

/sbin/shutdown -r now

ルートpirviligesと。その方法は、ユーザーのcrontabではなく、rootのcrontabを使用することです。A sudo通常のcrontabコマンドの前には、その処理を行います。

sudo crontab -e

ヒント:あなたが好きなもののためにシェルの標準エディタを切り替えることができますcrontabし、visudosudo update-alternatives --config editorして、お好みのエディタを選択します。

crontabを編集するには、ファイルに次の行を追加する必要があります。

# For more information see the manual pages of crontab(5) and cron(8)
# 
# m h  dom mon dow   command  

@daily root /sbin/shutdown -r now

ここの「@daily」は、毎日午前0時のショートカットです(「0 0 * * *」に相当)。ところで-なぜ毎日再起動したいのですか?

編集- 以下についてはhttps://help.ubuntu.com/community/CronHowtoを参照してください:「Crontabコマンドは通常、ユーザーアカウントに属するcrontabファイルに保存されます(そしてユーザーのアクセス許可レベルで実行されます)。管理権限を必要とするコマンドを定期的に実行し、ルートcrontabファイルを編集します:sudo crontab -e "

編集-コメントに対して@charlesbridgeに感謝-回答を編集してフルパスを含める


2
cronを使用すると、常にフルパスを使用するのが最も安全です/sbin/shutdown -r
。–チャールズブリッジ

1
時刻の設定とコマンドの間のルートは何ですか?@daily / sbin / shutdown -rだけで、rootユーザーのcronファイルに入れてはいけませんか?TIA
Ominus

3
次のコマンドの効果は同じです/sbin/reboot
マークヴァンフーミッセン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.