コース一覧
LinuC レベル1 102試験対策(LPIC-1対応)
cronとat

LinuC レベル1 102試験対策(LPIC-1対応)

LinuC レベル1/LPIC-1の102範囲を、シェル、ユーザーとセキュリティ、ネットワーク、システム管理の実機演習と章末問題で固めます。Linuxを安全に運用するための知識とコマンド操作を体系的に身につける25レッスンのコースです。

1
102 シェルとスクリプト
0. シェル環境18分
1. testと条件式18分
2. スクリプトの制御18分
3. cronとat15分
4. systemdタイマー18分
5. 過去問 シェル15分
2
102 ユーザーとセキュリティ
0. passwdとshadow18分
1. ユーザー管理コマンド18分
2. suとsudo18分
3. 特殊パーミッション18分
4. ホストのセキュリティ18分
5. SSHとGPG18分
6. 過去問 ユーザーとセキュリティ15分
3
102 ネットワーク
0. TCP/IPとウェルノウンポート18分
1. アドレス設定18分
2. ルーティング18分
3. 名前解決の設定18分
4. 疎通トラブルシュート18分
5. 過去問 ネットワーク15分
4
102 システム管理
0. 時刻とNTP15分
1. ロケールと文字コード18分
2. ログ管理18分
3. サービス管理の試験形式18分
4. メールと印刷のきほん15分
5. 過去問 システム管理15分

LinuC レベル1 102試験対策(LPIC-1対応)

01シェル環境
02testと条件式
03スクリプトの制御
04cronとat
05systemdタイマー
06過去問 シェル
07passwdとshadow
08ユーザー管理コマンド
09suとsudo
10特殊パーミッション
11ホストのセキュリティ
12SSHとGPG
13過去問 ユーザーとセキュリティ
14TCP/IPとウェルノウンポート
15アドレス設定
16ルーティング
17名前解決の設定
18疎通トラブルシュート
19過去問 ネットワーク
20時刻とNTP
21ロケールと文字コード
22ログ管理
23サービス管理の試験形式
24メールと印刷のきほん
25過去問 システム管理

LinuC レベル1 102試験対策(LPIC-1対応)

cronとat

cron の失点はほとんど書式です。5つのフィールドの順番、曜日の数字、実行ユーザー欄の有無。この3つを外さなければ落としません。なお、この学習環境には cron も at も入っていないため、ここは読んで覚える回です。定期実行を実際に走らせるのは、systemd タイマーの回になります。

5フィールドは分・時・日・月・曜日

1行が1つの予定で、先頭の5つが時刻、6つ目以降が実行するコマンドです。

位置フィールド取りうる値
1分0-59
2時0-23
3日1-31
4月1-12 (jan-dec も可)
5曜日0-7 (sun-sat も可)

小さい単位から大きい単位へ並び、最後に曜日が付きます。曜日は 0 と 7 の両方が日曜日で、1 が月曜、6 が土曜です。日と曜日を両方指定した場合は、どちらか一方に一致すれば実行されます。AND ではなく OR です。

記法は * が全ての値、カンマが列挙、ハイフンが範囲、*/n が n 刻みです。*/15 は毎時 0分・15分・30分・45分のことで、「今から15分後」ではありません。5フィールドの代わりに @hourly @daily @monthly @yearly @reboot も使え、@reboot だけは時刻ではなく起動に紐づきます。

書き方いつ実行されるか
0 3 * * * cmd毎日 3時ちょうど
30 9 * * 1-5 cmd平日の 9時30分

/etc/crontab には6番目に実行ユーザー欄がある

ユーザーの crontab は crontab -e で編集し、実体は Debian 系なら /var/spool/cron/crontabs/<ユーザー名> に置かれ、持ち主の権限で動きます。/etc/crontab と /etc/cron.d/* はエディタで直接編集し、5つの時刻フィールドの次に実行ユーザーの欄が入ります。

プレーンテキスト

0 3 * * * /usr/local/bin/backup.sh       # ユーザー crontab。5 + コマンド
0 3 * * * root /usr/local/bin/backup.sh  # /etc/crontab。5 + ユーザー + コマンド

ユーザー欄を書き忘れると root がコマンド名として解釈されて失敗し、逆にユーザー crontab にユーザー名を書くと、それがコマンドとみなされます。

/etc/cron.hourly から /etc/cron.monthly までの4つのディレクトリに実行可能なスクリプトを置けば、時刻を書かずにその間隔で実行できます。なお cron は指定時刻に電源が入っていないとその回を飛ばします。経過日数で判断する anacron を併用すれば取り返せます。

crontab -r は確認なしで全部消える

コマンド動作
crontab -e自分の crontab を編集する
crontab -l自分の crontab を表示する
crontab -r自分の crontab を丸ごと削除する
crontab -u user -e指定ユーザーの crontab を編集する

-r は確認を出さずに全部消します。試験は -l と並べて「一覧表示はどれか」と聞いてきます。開くエディタは環境変数 EDITOR か VISUAL で決まります。

使える人の制御は /etc/cron.allow と /etc/cron.deny です。判定には順序があり、cron.allow があればそれだけを見て cron.deny は無視されます。cron.allow が無い場合は、cron.deny に載っていないユーザーが使えます。空の cron.allow は誰も使えない、空の cron.deny は全員使える、と意味が正反対です。at にも同じ規則で /etc/at.allow と /etc/at.deny があります。

at は1回限りの予約

at は指定した時刻に1回だけ実行し、担うデーモンは atd です。atq で予約の一覧、atrm に番号を渡して取り消し、batch は時刻ではなく負荷が下がったときに実行します。

時刻の指定は柔軟です。at 10:00 は今日の10時で、過ぎていれば翌日の10時。at now + 1 hour は1時間後、at 3pm tomorrow は明日の15時、at -f script.sh 22:00 はファイルの内容を実行する予約です。at を打つと入力待ちになるので、実行したいコマンドを打ち込み Ctrl-D で終えます。

試験で狙われるところ

フィールドの順は分・時・日・月・曜日で、時が先ではありません。曜日は 0 も 7 も日曜です。日と曜日を両方書くと OR です。crontab -r は確認なしで全削除です。cron.allow があれば cron.deny は見られません。

このレッスンに出てくる用語

意味があいまいなまま進んだ語は、ここから読み直せます。

  • フィールドクラスが持つデータ
  • ディレクトリファイルを整理するフォルダのこと。
  • 判断YES/NO 分岐を表す菱形
  • 環境変数JWT_SECRET など秘匿値を渡す手段
  • 変数データに名前をつけて参照する仕組み
生田 陸人
監修生田 陸人
ゆめさくエンジニア / 現役ソフトウェアエンジニア監修者プロフィールを見る →
編集 ゆめさく編集部·公開 2026/08/09·更新 2026/08/26

関連レッスン

  • systemdタイマー

    cron の代わりに .timer と .service の対を書き、実機で有効にして動かします。

  • 過去問 シェル

    シェルとスクリプトの分野で合格水準に届いているかを10問で確かめます。

  • passwdとshadow

    /etc/passwd と /etc/shadow のフィールドを、実機から抜き出して読み解きます。

  • TCP/IPとウェルノウンポート

    頻出ポート番号を /etc/services から実際に引いて、自分の手で表を作ります。

分からないところは Tap (AI先生) に質問できます

24 時間いつでも、あなたのレベルに合わせて日本語で答えます。

復習ミニクイズ

`/etc/crontab` に `30 2 * * 1 root /usr/local/bin/backup.sh` と書かれています。この行の説明として正しいものはどれですか。