• 온라인 도구
  • - 계산기
    • 문자 수
  • - 다운로드
    • TikTok 다운로드
    • DouYin 다운로드
  • - 웹 도구
    • BASE64
    • Base64→이미지
    • 이미지→Base64
    • URL 인코딩
    • JavaScript
    • 타임스탬프
    • 유니코드 변환기
    • JSON 형식
    • 확장자 수정
    • 목록 만들기
    • CSS 최적화
  • - 암호화 도구
    • MD5 암호화
    • 랜덤 생성기
  • - 이미지 도구
    • 이미지 압축
    • QR 코드 생성기
    • QR 코드 리더
    • 배경 화면 미리보기
    • 이미지 EXIF
  • - 정보 시트
    • 혈액형 유전
    • 의류 사이즈
  • [email protected]
DopuBox
  • English
  • Español
  • Français
  • 日本語
  • 한국어
  • 简体中文
  • 繁體中文
全部 ニュース Meta Code 文化・アート
Linuxタスクスケジューリングプロセスcrondコマンドの使用方法と注意事項
2022-01-06

一、crond概要 コンセプト

crondの概念とcrontabは分割できない。crontabは、UnixおよびクラスUnixのオペレーティングシステムで一般的に使用されるコマンドで、周期的に実行されるコマンドを設定します。このコマンドは、標準入力デバイスからコマンドを読み出し、後で読み取りおよび実行するために「crontab」ファイルに保存します。ギリシャ語chronos(χρ?νο?),本来は時間です。crondはその守護プロセスです

crondはlinuxの下で周期的にあるタスクを実行したり、あるイベントの処理を待ったりするためのデーモンです。windowsの下の計画タスクと似ています。オペレーティングシステムのインストールが完了すると、デフォルトでこのサービスツールがインストールされ、crondプロセスが自動的に起動します。crondプロセスは毎分、実行するタスクがあるかどうかを定期的にチェックします。実行するタスクがある場合は、すると、自動的にタスクが実行されます。

Linuxでのタスクスケジューリングは,システムタスクスケジューリングとユーザタスクスケジューリングの2つに分類される.

lシステムタスクスケジューリング:システムが周期的に実行する作業、例えばキャッシュデータをハードディスクに書き込み、ログクリーンアップなど。/etcディレクトリの下にcrontabファイルがあります。これがシステムタスクスケジューリングのプロファイルです。

/etc/crontabファイルには、次の行が含まれます。

  SHELL=/bin/bash

  PATH=/sbin:/bin:/usr/sbin:/usr/bin

  MAILTO=root

  HOME=/

  # run-parts

  01 * * * * root run-parts /etc/cron.hourly02 4 * * * root run-parts /etc/cron.daily22 4 * * 0 root run-parts /etc/cron.weekly42 4 1 * * root run-parts /etc/cron.monthlyの最初の4行はcrondタスクの実行を構成するための環境変数で、最初の行SHELL変数はシステムがどのshellを使用するかを指定し、ここはbashで、2行目のPATH変数はシステムの実行コマンドの経路を指定し、3行目のMAILTO変数はcrondのタスクの実行情報を指定してrootユーザーに電子メールで送信し、MAILTO変数の値が空であれば、タスク実行情報がユーザーに送信されないことを示し、4行目のHOME変数はコマンドまたはスクリプトの実行時に使用するホームディレクトリを指定します。6行目から9行目の意味は、次のセクションで詳しく説明します。ここではあまり言わない。

lユーザタスクスケジューリング:ユーザデータバックアップ、タイミングメールアラートなど、ユーザが定期的に実行する作業。ユーザーはcrontabツールを使用して、自分の計画タスクをカスタマイズできます。すべてのユーザー定義crontabファイルは/var/spool/cronディレクトリに保存されます。ファイル名はユーザー名と一致します。

二、crontabツールの使用 (1)crontabの使用様式

crontabでよく使用されるフォーマットは、次の2つです。

  crontab [-u user] [file]

  crontab [-u user] [-e|-l|-r |-i]

オプションの意味は次のとおりです。

l-u user:あるユーザを設定するためのcrontabサービス、例えば「-u ixdba」はixdbaユーザを設定するcrontabサービスを表し、このパラメータは一般的にrootユーザが実行する。

l file:fileはコマンドファイルの名前で、fileをcrontabのタスクリストファイルとしてcrontabにロードすることを示します。コマンドラインにこのファイルが指定されていない場合、crontabコマンドは標準入力(キーボード)に入力されたコマンドを受け入れ、crontabにロードします。

l-e:ユーザーのcrontabファイルの内容を編集します。ユーザーを指定しない場合は、現在のユーザーのcrontabファイルを編集します。

l-l:あるユーザーのcrontabファイルの内容を表示し、ユーザーを指定しない場合は、現在のユーザーのcrontabファイルの内容を表示します。

l-r:/var/spool/cronディレクトリからユーザーのcrontabファイルを削除し、ユーザーを指定しない場合は、現在のユーザーのcrontabファイルをデフォルトで削除します。

l-i:ユーザーのcrontabファイルを削除するときに確認メッセージを表示します。

(2)crontabファイルの意味

ユーザーが作成したcrontabファイルでは、各行はタスクを表し、各行の各フィールドは設定を表し、そのフォーマットは6つのフィールドに分けられ、最初の5つは時間設定セグメントで、6番目のセグメントは実行するコマンドセグメントで、フォーマットは以下の通りです。

minute hour day month week commandそのうち:

l minute:分を表し、0から59までの任意の整数であってもよい。

l hour:時間を表し、0から23までの任意の整数であってもよい。

l day:日付を表し、1から31までの任意の整数であってもよい。

l month:月を表します。1から12までの任意の整数です。

l week:曜日を表し、0から7までの任意の整数であってもよく、ここの0または7は日曜日を表します。

l command:実行するコマンドは、システムコマンドでも、自分で作成したスクリプトファイルでも構いません。

上記のフィールドでは、次の特殊文字も使用できます。

lアスタリスク(*):monthフィールドがアスタリスクの場合、他のフィールドの制約条件を満たした後、毎月コマンド操作を実行するなど、可能なすべての値を表します。

lカンマ(,):カンマで区切られた値でリスト範囲を指定できます。たとえば、「1,2,5,7,8,9」

l中棒(-):整数間の中棒で整数範囲を表すことができ、例えば「2-6」で「2,3,4,5,6」を表す。

l正斜線(/):正斜線で時間の間隔周波数を指定できます。例えば、「0-23/2」は2時間ごとに実行されることを示します。また、正斜線はアスタリスクとともに使用できます。たとえば*/10はminuteフィールドで使用すると、10分ごとに実行されることを示します。

(3)crontabファイルの例

0*/3**/usr/local/apache 2/apachectl restartは、3時間おきにapacheサービスを再起動することを示します。

  30 3 * * 6 /webdata/bin/backup.sh

毎週6時30分に/webdata/bin/backupを実行することを表す.shスクリプトの操作。

  0 0 1,20 * *  fsck /dev/sdb8

毎月の1番と20番のチェック/dev/sdb 8ディスクデバイスを示します。

  10 5 */5 * *  echo "">/usr/local/apache2/log/access_logは、毎月の5日、10日、15日、20日、25日、30日の5時10分にapacheログのクリーンアップを実行することを示します。

三、crontabツールの使用上の注意事項 (1)環境変数の問題に注意

crontabを作成した場合がありますが、このタスクは自動的に実行できません。このタスクを手動で実行しても問題ありません。これは、一般的にcrontabファイルに環境変数が構成されていないためです。

crontabファイルで複数のスケジューリングタスクを定義する場合、特に注意しなければならない問題は環境変数の設定です。私たちが手動でタスクを実行するときは、現在のshell環境で行われているので、プログラムはもちろん環境変数を見つけることができますが、システムが自動的にタスクを実行するときは、環境変数はロードされません。そのため、crontabファイルでタスクの実行に必要なすべての環境変数を指定する必要があります。これにより、システムがタスクスケジューリングを実行する際に問題はありません。

(2)システムユーザのメールログの整理に注意

各タスクのスケジューリングが完了すると、システムはタスク出力情報を現在のシステムユーザーに電子メールで送信します。これにより、日々蓄積され、ログ情報が非常に大きくなり、システムの正常な動作に影響を与える可能性があります。そのため、各タスクをリダイレクトすることが重要です。

たとえば、crontabファイルでログ出力を無視する形式を設定できます。

0*/3**/usr/local/apache 2/apachectl restart>/dev/null 2>&1"/dev/null 2>&1"は、標準出力を/dev/nullにリダイレクトし、標準出力が/dev/nullにリダイレクトされているため、標準エラーも/dev/nullにリダイレクトされ、ログ出力の問題が解決します。

(3)システムレベルタスクスケジューリングとユーザーレベルタスクスケジューリング

システムレベルのタスクスケジューリングは主にシステムのいくつかのメンテナンス操作を完成し、ユーザーレベルのタスクスケジューリングは主にユーザーがカスタマイズしたいくつかのタスクを完成し、ユーザーレベルのタスクスケジューリングをシステムレベルのタスクスケジューリングに配置して完成することができる(推奨しない)が、逆にだめで、rootユーザーのタスクスケジューリング操作は「crontab–uroot–e」で設定することができる。スケジューリングタスクを/etc/crontabファイルに直接書き込むこともできますが、rootユーザーの下でタイミング再起動システムを作成するタスクでも無効な/etc/crontabファイルにタスクを置く必要があります。

以上はLinuxタスクスケジューリングプロセスcrondの使用過程と注意事項です。読んでくれてありがとう。皆さんの役に立つことを望んでいます。引き続き注目してください。私たちはもっと優秀な文章を共有するように努力します。


ソース元URL:https://dopubox.com/article/p/be3002026631003e

기타 도구
  • 문자 수 TikTok 다운로드 DouYin 다운로드 BASE64 Base64→이미지 이미지→Base64 URL 인코딩 JavaScript 타임스탬프 유니코드 변환기 JSON 형식 확장자 수정 목록 만들기 CSS 최적화 MD5 암호화 랜덤 생성기 이미지 압축 QR 코드 생성기 QR 코드 리더 배경 화면 미리보기 이미지 EXIF 혈액형 유전 의류 사이즈
  • 民藝・イズ・ビューティフル。 日本文化と黒人文化が融合する「アフロ民藝」とは?
    2024-05-30

    「韓国版純烈」K4の「アダルトKポップ」 日本デビュー曲USEN1位も獲得 コアな追っかけも
    2024-05-30

    “家形埴輪”大集合、総選挙も 「住宅展示場の気分で」、奈良
    2024-06-01

    ビルケンシュトック、創業から250年の歴史を振り返る2冊を出版
    2024-06-01

    富士山麓のダイナミックな食材を味わう“奥・山梨”のガストロノミー〈Restaurant SAI 燊〉。
    2024-06-01

    ニコライ・バーグマンが手がける北欧のジュエリーブランド〈フローラダニカ〉旗艦店が南青山にオープン。
    2024-06-03

    ジャスパー・モリソンの名言「…が「普通」のものより役にたつことはない。」【本と名言365】
    2024-06-03

    レイモンド・ローウィの名言「優れたインダストリアルデザインは、…」【本と名言365】
    2024-06-04

    2025年春に「直島新美術館」が誕生。既存の活動から新しい価値創造を目指す
    2024-06-04

    「企画展 歌と物語の絵 ―雅やかなやまと絵の世界」(泉屋博古館東京)開幕レポート。歌、物語、絵画が織りなす芸術世界へ
    2024-06-04

    「犬派?猫派?」(山種美術館)開幕レポート。初公開から名作まで勢揃い
    2024-06-04

    石川九楊の個展「石川九楊大全」が上野の森美術館で2ヶ月連続開催へ
    2024-06-05

    田名網敬一「TANAAMI!! AKATSUKA!! / 45 rpm」展、集英社マンガアートヘリテージ トーキョーギャラリーで開催
    2024-06-04

    105歳で死去した画家弥勒祐徳さん おごらず、黙々と、ひたすらに神楽など描く
    2024-06-05

    そごう・西武が百貨店として初めてNFTマーケット開設、NFT作品約100点を発売
    2024-06-06

    青森で来年夏に音楽祭 沖澤のどかさんが総監督
    2024-06-06

    藤井、棋聖戦5連覇へ白星発進
    2024-06-06

    写真家の吉田ルイ子さん死去 「ハーレムの熱い日々」
    2024-06-06

    なぜ、いま「先住民の現代アート」なのか? 『美術手帖』2024年7月号は、「先住民の現代アート」特集
    2024-06-06

    パートナーとの強い絆から生まれた、ベンジャミン・ブリテンの代表作【クラシック今日は何の日?】
    2024-06-06

    ©  Dopu Box
    💛