Home > Linux

Linux Archive

cron


linux(centos)のcronについてまとめよう。

cronとは定期的にある処理を実行してくれる機能である。
例えば、1分毎にディレクトリの使用量を監視したりということもできたりする。

■ユーザ設定型cron
基本的には以下のコマンドで編集を行う。
・設定方法
crontab -e

ユーザ毎の設定となるため、一般ユーザで設定した場合、
root権限が必要なコマンドを実行することはできない。

・設定ファイル
/var/spool/cron/*

設定ファイルは直接編集することは推奨されていないが、
現在何のcronが実行されているのかの確認を行う場合はここで見るのが便利。

・設定方法
分 時 日 月 曜日 [実行コマンド]

例1
毎日1時1分にlsコマンドを発行

1 1 * * * ls

例2
1分ごとにlsコマンドを発行
*/1 * * * * ls

■システム型cron
正式にはシステム型cronとかいう名前はないが、ユーザ型のcronと区別するためにつけてみた。
cron.dailyとかcron.hourとかのことをいう。

■設定ファイル
設定は/etc/crontabに記述されており、こういう感じになってます 。
—crontab—
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/

# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly

これを見ると毎時1分毎に/etc/cron.hourlyを
毎日4時2分に/etc/cron.dailyを
毎週4時22分に/etc/weeklyを
毎月1日の4時42分に/etc/cron.monthlyを
チェックして実行するものがあれば実行している。

・/etc/cron.houly
見た感じ特に何もファイルはない。

・/etc/cron.daily
デフォルトで以下のファイルがある。
00-logwatch
logrotate
slocate.cron
00-makewhatis.cron
prelink
tmpwatch
0anacron
rpm
yum.cron

logwatchとlogrotateとanacronくらいしかわからんな。。
一つ一つは今度見ていきます。


・/etc/cron.weekly
00-makewhatis.cron
0anacron
yum.cron

・/etc/cron.monthly
0anacron


■押さえておきたいポイント
・cronの設定方法※必須
・オプションで指定できるもの(MAILTO)とか
・毎時、毎日、毎週、毎月の単位で自動で実行されているものもある
・logwatchとかlogrotateとかは重要なのでやる

ドコモ DNS逆引きメール送信制限

自宅から自分の携帯(ドコモ)にメールを送信したところ
以下のエラーメッセージがでてメールが送れなかった。

以下、エラーメッセージ
The original message was received at Thu, 14 May 2009 00:47:49 +0900
from localhost [127.0.0.1]

—– The following addresses had permanent fatal errors —–
< **********@docomo.ne.jp>
(reason: 550 Unknown user **********@docomo.ne.jp)

—– Transcript of session follows —–
… while talking to mfsmax.docomo.ne.jp.:
>>> >>> DATA
< << 550 Unknown user **********@docomo.ne.jp
554 5.0.0 Service unavailable



ドコモでも逆引きとかしてて、DDNSだとメールが送れないのかと思ったけどそういうわけではなかったです。


こっち側のせいだった。。。。
ドコモのメール設定で[ドメイン受信設定]でドメイン設定をしたら
無事受け取れる様になりました。


んで、ちと気になってDNSが登録されていない状況でやっても
受信ができたので、どうやらドコモは逆引きでメールをはじいたりはしてないのかなと思います。


参考URL:
参考1
参考2

man追加

manの追加方法

デフォルトで”/etc/man.conf”の”MANPATH”を読み込んでいる。
そのため新たにmanページを追加したい場合はここにPATHを追加する。

デフォルトパス
—–
MANPATH /usr/man
MANPATH /usr/share/man
MANPATH /usr/local/man
MANPATH /usr/local/share/man
MANPATH /usr/X11R6/man
—–

apacheのman pageを追加したい場合以下の設定を追加する。
—–
MANPATH /usr/local/apache2/man
—–

これで”man httpd”とかができる。

今日のヒトリゴト

■シェルについて

・if文で何かを含んでいるものを検索したいときは以下のようにする

if [[ $STATE = "OK" ]]; then

return 0

else

return 1

fi

・関数作成
hello.shという名前で以下の関数を定義。
hello() {
echo $1
}

# source hello.sh
# hello “Hello Worl”
hello World

今日のヒトリゴト

・32bit版OSで認識できるメモリは最大4Gbyte(実質3G弱)までだが、linuxのPAEというものを使用すると36bitまで広がり、最大16Gくらいまで使えるようになるらしい。

・LPO(Landing Page Optimization)とは自社サイトへのアクセスがコンバージョン率に結びつきやすいように、ランディングページを調整・改善することらしい。一番の目的はランディングページでの離脱率を抑えること。

ホーム > Linux

Search
Feeds
Meta

Return to page top