Crontab は、Linux でのスケジュール設定ファイルで、システム プログラム、スクリプト、コマンド、タスクを設定した時間に実行できます。 . 、インターバルおよびサイクル動作。 Crontab の最小時間粒度は分です。つまり、Crontab の設定では、対象タスクを最大 1 分に 1 回実行できますが、それ以上の頻度で実行することはできず、他の方法を使用するしかありません。
関連する学習の推奨事項: linux ビデオ チュートリアル
たとえば、プログラムを 30 秒ごとに実行したい場合はどうすればよいでしょうか。
これを回避する方法はまだあります。 1 つのアイデアは、Crontab に 2 つの構成を追加することです。1 つは通常のスケジュール用で 1 分ごとに実行され、もう 1 つは実行前に 30 秒待機するというものです。
# Need these to run on 30-sec boundaries, keep commands in sync. * * * * * /path/to/executable param1 param2 * * * * * ( sleep 30 ; /path/to/executable param1 param2 )
この方法は少し堅くて奇妙に感じますが、うまくいきます。この方法は、実際には 1 行に短縮できます:
* * * * * /bin/bash -l -c "/path/to/executable; sleep 30 ; /path/to/executable"
もう 1 つの方法は、watch コマンドを使用することです:
$ watch --interval .30 script_to_run_every_30_sec.sh
ただし、watch はコマンド ライン ツールなので、次のように使用できます。 nohup コマンドを使用すると、バックグラウンドで実行できます。
SystemD タイマー
使用している Linux システムに SystemD がある場合は、SystemD タイマーを使用して、いつでもプログラムをスケジュールできます。もちろん、理論的にはナノ秒レベルの粒度でプログラムをスケジュールできます。 、それをするのはちょっとおかしいです。つまり、タスク スケジューリングの柔軟性は Cron よりもはるかに高く、sleep のようなつまらないソリューションを使用する必要はありません。
1 行で構成を完了する crontab と比較すると、SystemD タイマーの確立は若干複雑ですが、「1 分あたり」よりも小さい粒度でタスクのスケジュールをより適切に実装するには、この方法を試してみる価値があります。
SystemD タイマーの実装原理は、システム サービスと SystemD タイマーの 2 つの部分だけです。 SystemD タイマーがスケジューリングを実行し、タスクはサービス内に書き込まれます。
これは簡単な例です。目標は、システム ロガーに 10 秒ごとに「Hello World」を出力させることです;
/etc/systemd/system/helloworld.service
[Unit] Description=Say Hello [Service] ExecStart=/usr/bin/logger -i Hello World
/etc/systemd/system/helloworld.timer
[Unit] Description=Say Hello every 10 seconds [Timer] OnBootSec=10 OnUnitActiveSec=10 AccuracySec=1ms [Install] WantedBy=timers.targethelloworld.timer里并没有声明service的名称,那它和service是如何关联的呢?没错,因为它们的名称相同,都是helloworld。
システム全体でこのタイマーを使用する場合は、これら 2 つのファイルを次の場所に配置する必要があります。 /etc/systemd/system。特定のユーザーに使用したい場合は、~/.config/systemd/user に配置します。このタイマーをすぐに実行したい場合は、次のコマンドを実行する必要があります。
systemctl enable --now helloworld.timer
の –now タグにより、タイマーがすぐに実行されます。それ以外の場合、操作はシステムが再起動されるか、ユーザーがログインした後にのみトリガーされます。
[タイマー]このセクションの各フィールドの機能は次のとおりです:
- OnBootSec – システムの起動から何秒後かスケジューリングの開始
- OnUnitActiveSec – 関連サービスを繰り返しスケジュールする時間間隔。 cron ジョブなどのスケジュールされたアクションを決定するのは、この構成行です。
- AccuracySec – タイマーの精度。デフォルトは 1 分で、cron と非常によく似ています。より高い値が必要になる場合もありますが、精度が向上するとシステム消費量が増加し、CPU がより頻繁にウェイクアップされます。上記の設定では 1ms となっていますが、これは明らかに賢明な決定ではありません。通常、これを 1 (1 秒) に設定できます。これは、1 分未満の時間粒度のタイマー精度要件には十分です。このため、実際のプログラムを実行すると、「Hello World」メッセージの出力が 1 秒程度遅れることがよくあります。この 1 秒程度の遅延が問題ないと思われる場合は、このように設定するとよいでしょう。
SystemD タイマーと Crontab タイマーは同じではないことがわかります。タスクのスケジュール期間は、年、月、日、時、分の期間に従って設定されず、最初の期間に基づいています。 time 実行時に開始され、毎回 1 サイクルの時間が追加されます。 Crontab のような時間設定方法が気に入っている場合は、SystemD タイマーもそれをサポートしているため、次のように OnBootSec と OnUnitActiveSec を削除し、OnCalendar に置き換える必要があります。は例です:
OnCalendar=*-*-* *:*:00,10,20,30,40,50
最後に、デフォルトでは、SystemD タイマーとサービスは同じ名前に関連付けられます。必要に応じて、次のように指定して、[Timer] ペアで構成することもできます。 単位フィールド。
上記のメソッドはすべて、分未満の粒度でスケジュールされたスケジューリング タスクを実装できます。それぞれに利点があります。 SystemD タイマーはより形式的に見えますが、少し複雑です。 Crontab sleepこの方法は扱いにくいですが、いくつかの小さなタスクには使えないわけではありません。
以上がCrontab に毎秒タスクを実行させる方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

Linuxシステムのコアコンポーネントには、カーネル、ファイルシステム、ユーザースペースが含まれます。 1.カーネルはハードウェアリソースを管理し、基本的なサービスを提供します。 2。ファイルシステムは、データストレージと組織を担当します。 3.ユーザースペースでユーザープログラムとサービスを実行します。

メンテナンスモードは、シングルユーザーモードまたはレスキューモードを介してLinuxシステムに入力される特別な動作レベルであり、システムのメンテナンスと修理に使用されます。 1.メンテナンスモードを入力し、コマンド「sudosystemctlisolaterscue.target」を使用します。 2。メンテナンスモードでは、ファイルシステムを確認して修復し、コマンド「FSCK/DEV/SDA1」を使用できます。 3.高度な使用法には、ルートユーザーパスワードのリセット、ファイルシステムの読み取りモードと書き込みモードのマウント、パスワードファイルの編集が含まれます。

メンテナンスモードは、システムのメンテナンスと修理に使用され、管理者が簡素化された環境で作業できるようにします。 1。システム修理:破損したファイルシステムとブートローダーを修理します。 2。パスワードリセット:ルートユーザーパスワードをリセットします。 3。パッケージ管理:ソフトウェアパッケージをインストール、更新、または削除します。 GRUB構成を変更するか、特定のキーを使用してメンテナンスモードを入力することにより、メンテナンスタスクを実行した後、安全に終了できます。

Linuxネットワークの構成は、次の手順で完了できます。1。ネットワークインターフェイスを構成し、IPコマンドを使用して、構成ファイルの永続性設定を一時的に設定または編集します。 2。固定IPを必要とするデバイスに適した静的IPを設定します。 3.ファイアウォールを管理し、iPtablesまたはFirewalldツールを使用してネットワークトラフィックを制御します。

メンテナンスモードは、Linuxシステム管理において重要な役割を果たし、修復、アップグレード、構成の変更を支援します。 1.メンテナンスモードを入力します。 Grubメニューから選択するか、コマンド「sudosystemctlisolaterscue.target」を使用できます。 2。メンテナンスモードでは、ファイルシステムの修理およびシステムの更新操作を実行できます。 3.高度な使用法には、ルートパスワードのリセットなどのタスクが含まれます。 4.メンテナンスモードに入ったり、ファイルシステムをマウントできないなどの一般的なエラーは、GRUB構成をチェックしてFSCKコマンドを使用して固定できます。

Linuxメンテナンスモードを使用するタイミングと理由:1)システムが起動するとき、2)主要なシステムの更新またはアップグレードを実行するとき、3)ファイルシステムメンテナンスを実行するとき。メンテナンスモードは、安全で制御された環境を提供し、運用上の安全性と効率を確保し、ユーザーへの影響を減らし、システムセキュリティを強化します。

Linuxの不可欠なコマンドは次のとおりです。1.LS:リストディレクトリの内容; 2.CD:作業ディレクトリを変更します。 3.mkdir:新しいディレクトリを作成します。 4.RM:ファイルまたはディレクトリを削除します。 5.CP:ファイルまたはディレクトリをコピーします。 6.MV:ファイルまたはディレクトリの移動または名前を変更します。これらのコマンドは、カーネルと対話することにより、ユーザーがファイルとシステムを効率的に管理するのに役立ちます。

Linuxでは、ファイルおよびディレクトリ管理ではLS、CD、MKDIR、RM、CP、MVコマンドを使用し、許可管理はCHMOD、CHOWN、およびCHGRPコマンドを使用します。 1。LS-Lなどのファイルおよびディレクトリ管理コマンドは、詳細情報、MKDIR-Pを再帰的に作成するディレクトリを再帰的に作成します。 2。CHMOD755FILEセットファイル許可、CHOWNUSERFILEファイル所有者、CHGRPGROUPFILEの変更ファイルグループなどの許可管理コマンド。これらのコマンドは、ファイルシステム構造とユーザーおよびグループシステムに基づいており、システムコールとメタデータを介して動作および制御します。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

Safe Exam Browser
Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

ホットトピック









