• 締切済み
  • 暇なときにでも

ログがローテイトされなくなった.

fedora11です。 3月頃からapacheを実行しています。 分からないことだらけで、あちこち弄ってました。 4月までは、次のようにログがローテイトされてました。 /var/log /var/log/massages /var/log/massages-20110414 /var/log/massages-20110418  ・  ・ /var/log/httpd/ /var/log/httpd/access_log /var/log//httpd/access_log-20110414 /var/log//httpd/access_log-20110418  ・  ・ 2011.04.18の後、全てのログファイルが、-yyyymmddで分離されず、元のファイルにどんどん追加される一方になりました。 (今まで気にしなかったのもひどいですが。) /etc/logrotate.confの内容は、デフォルト設定のままです。 「ローテイトする/しない」という設定どこかにありましたっけ。 よろしくお願いします。

共感・応援の気持ちを伝えよう!

  • 回答数2
  • 閲覧数1614
  • ありがとう数2

みんなの回答

  • 回答No.2

>[root@betasei etc]# crontab -l これはrootユーザのcronのエントリしか示さないのでちょっと意味が違います。 普通は/etc/cron.daily/logrotate というスクリプトでローテートし、このスクリプトは/etc/crontab の設定から起動されます。 なので、/etc/crontab にその記載がなければローテートされません。 CentOSのデフォルトでは下記のエントリがあります。 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 rootユーザで /etc/cron.daily/logrotate と手動で動かしてみてローテートされるかどうか試すのも手です。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

その後、調べてましたら、fedoraの場合、anacronというやつで実行していることまで、分かりました。 http://d.hatena.ne.jp/eth0jp/20110301/1298972224 今回の質問は、少々、的を外してましたので、もう少し自分で研究してみて、それでも分からなかったら、改めて質問させていただきます。 今回は、お手数かけて済みませんでした。

質問者からの補足

レスが遅くなりました。 他の作業で忙殺されていました。 >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 この設定、どうやって表示させるんでししたでしょうか。 消してしまったかもしれません。 crontabに設定した自作スクリプトの内容はここにあります。 -------------------------------------------------------------- [root@betasei cron]# pwd /var/spool/cron [root@betasei cron]# ls -l 合計 4 -rw------- 1 root root 86 2011-05-28 07:18 root [root@betasei cron]# cat root 35 6 * * * /usr/local/my_sh/samba_set.sh 10 7 * * * /usr/local/my_sh/samba_reset.sh /etc/ 階層下のcron関係ファイルは、こんな風にあります。 -------------------------------------------------------------- [root@betasei etc]# ls -l /etc/cron* -rw-r--r--. 1 root root 0 2009-03-09 17:15 /etc/cron.deny -rw-rw-rw-. 1 root root 391 2011-05-19 07:27 /etc/crontab -rw-rw-rw-. 1 root root 421 2011-05-18 10:44 /etc/crontab~ /etc/cron.d: 合計 8 -rw-r--r--. 1 root root 43 2009-04-14 23:22 0hourly -rw-r--r--. 1 root root 268 2010-10-05 07:42 smolt /etc/cron.daily: 合計 32 ・ ・ -rwxr-xr-x. 1 root root 118 2009-05-15 18:22 cups -rwxr-xr-x. 1 root root 180 2003-07-10 04:36 logrotate -rwxr-xr-x. 1 root root 669 2009-02-26 11:38 makewhatis.cron -rwxr-xr-x. 1 root root 174 2007-08-25 08:31 mlocate.cron ・ ・ /etc/cron.hourly: 合計 4 -rwxr-xr-x. 1 root root 341 2009-04-14 23:22 0anacron /etc/cron.monthly: 合計 4 -rwxr-xr-x. 1 root root 111 2009-03-06 03:14 readahead-monthly.cron fedora11には、GUIのログビューアが入ってまして、そのcron のログみると、 starting logrotate という行があります。 実行しようとしてるんでしょうか。 -------------------------------------------------------------------------------------- ・ ・ Jul 26 03:01:01 betasei CROND[17494]: (root) CMD (run-parts /etc/cron.hourly) Jul 26 03:01:01 betasei run-parts(/etc/cron.hourly)[17494]: starting 0anacron ・ ・ Jul 26 03:47:01 betasei anacron[17506]: Job `cron.daily' started Jul 26 03:47:01 betasei run-parts(/etc/cron.daily)[17510]: starting 0logwatch Jul 26 03:47:16 betasei run-parts(/etc/cron.daily)[18032]: finished 0logwatch Jul 26 03:47:16 betasei run-parts(/etc/cron.daily)[17510]: starting cups Jul 26 03:47:16 betasei run-parts(/etc/cron.daily)[18039]: finished cups Jul 26 03:47:16 betasei run-parts(/etc/cron.daily)[17510]: starting logrotate Jul 26 03:47:16 betasei run-parts(/etc/cron.daily)[18047]: finished logrotate Jul 26 03:47:16 betasei run-parts(/etc/cron.daily)[17510]: starting makewhatis.cron Jul 26 03:47:17 betasei run-parts(/etc/cron.daily)[18133]: finished makewhatis.cron Jul 26 03:47:17 betasei run-parts(/etc/cron.daily)[17510]: starting mlocate.cron Jul 26 03:47:17 betasei run-parts(/etc/cron.daily)[18144]: finished mlocate.cron Jul 26 03:47:17 betasei run-parts(/etc/cron.daily)[17510]: starting prelink Jul 26 03:47:17 betasei run-parts(/etc/cron.daily)[18156]: finished prelink Jul 26 03:47:17 betasei run-parts(/etc/cron.daily)[17510]: starting readahead.cron Jul 26 03:47:17 betasei run-parts(/etc/cron.daily)[18167]: finished readahead.cron Jul 26 03:47:17 betasei run-parts(/etc/cron.daily)[17510]: starting rpm Jul 26 03:47:27 betasei run-parts(/etc/cron.daily)[18178]: finished rpm Jul 26 03:47:27 betasei run-parts(/etc/cron.daily)[17510]: starting tmpwatch Jul 26 03:47:27 betasei run-parts(/etc/cron.daily)[18216]: finished tmpwatch Jul 26 03:47:27 betasei anacron[17506]: Job `cron.daily' terminated (mailing output) Jul 26 03:47:27 betasei anacron[17506]: Normal exit (1 job run) crontab のしくみがよく分からないです。

関連するQ&A

  • apache2 ユーザ毎のログ生成は可能?

    私の利用しているレンタルサーバは、アカウント毎にapacheがはいたと思われるログファイルがあります。つまりこのログファイルはユーザのホームディレクトリ内にあり、/var/log/httpd/access.log の内容をユーザ毎に振り分けた内容です。 apacheでそのようなことをするにはどうすればよいでしょうか?

  • IPアドレスでアクセスを制限するには?

    環境は、OSはLinux Fedora10で、Apacheは2.2.10です。 「/var/log/httpd/error_log」に大量の(数秒毎)の不正と思えるアクセスが記録され、 そのIPアドレスからのアクセスを制限したいと考えています。 「/etc/httpd/conf/httpd.conf」には以下のように書いています。 <Directory "/var/www/hogehoge"> Order allow,deny Allow from all Deny from 123.45.67.89 123.45.67.90 234.45.67.89 111.222.33.44 ... </Directory> 「Deny from」の行のIPアドレスが多いせいか、HTTPDを再起動しようとすると、エラーが発生し失敗してしまいます。 (IPアドレスは1000件以上あります。IPアドレスを少なくすると、何も問題なくHTTPDは起動できます。) できれば、「Deny from」の行のIPアドレスを外部ファイルから呼び出したり、変数に定義してすっきりさせたりしたいのですが、どのようにすればよいのでしょうか。 (他にもよい方法があったら、教えてください。) よろしくお願い致します。

  • vsftpdのログが見れない。

    vsftpdのアクセスログが見れません。 /var/log/xferlogファイルを開こうとすると許可がありません。と言われます。 環境 Fedora8 宜しくお願いします。

  • 回答No.1

いろいろ考えられますね。 /etc/crontab で/etc/cron.dailyの行がコメントアウトされている。 /etc/cron.daily/logrotate が実行不可になっている。 /etc/logrotate.d/syslog で/var/log/messagesがローテートするように設定されていない。 等等。 apacheのログに関してはrotatelogsやcronologのような外部プログラムでローテートしているかもしれないので何とも言えない。 でも(fedora11は良く知らないのですが)デフォルトのままだとしたら-yyyymmddというサフィックスが付かないと思うのだけど。 messagesにもrotatelogsか何か使ってませんか?

共感・感謝の気持ちを伝えよう!

質問者からの補足

早々のコメントありがとうございます。 >/etc/crontab で/etc/cron.dailyの行がコメントアウトされている。 消してしまったかもしれません。 crontabには、当時自作シェルスクリプトを登録しました。 いま、こうなってます。 [root@betasei ~]# cd /etc/ [root@betasei etc]# crontab -l 35 6 * * * /usr/local/my_sh/samba_set.sh 10 7 * * * /usr/local/my_sh/samba_reset.sh それと、当時シェルスクリプトの登録の仕方よく知らなくて、 crontab -l の代わりに、 gedit crontab で、/etc/crontab自体を書き換えてしまった虞があります。 現在の/etc/crontabのファイルの中身 --------------------------------------------------------------------- SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin/: MAILTO=root HOME=/ # .---------------- minute (0 - 59) # | .------------- hour (0 - 23) # | | .---------- day of month (1 - 31) # | | | .------- month (1 - 12) OR jan,feb,mar,apr ... # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR #sun,mon,tue,wed,thu,fri,sat # | | | | | # * * * * * command to be executed ---------------------------------------------------------------------- なお、/etc/cron にはこんなファイルが入っています。 [root@betasei etc]# ls -l cron.* -rw-r--r--. 1 root root 0 2009-03-09 17:15 cron.deny cron.d: 合計 8 -rw-r--r--. 1 root root 43 2009-04-14 23:22 0hourly -rw-r--r--. 1 root root 268 2010-10-05 07:42 smolt cron.daily: 合計 32 lrwxrwxrwx. 1 root root 45 2010-10-05 07:47 0logwatch -> ../..//usr/share/logwatch/scripts/logwatch.pl -rwxr-xr-x. 1 root root 118 2009-05-15 18:22 cups -rwxr-xr-x. 1 root root 180 2003-07-10 04:36 logrotate -rwxr-xr-x. 1 root root 669 2009-02-26 11:38 makewhatis.cron -rwxr-xr-x. 1 root root 174 2007-08-25 08:31 mlocate.cron -rwxr-xr-x. 1 root root 2181 2006-06-21 19:07 prelink -rwxr-xr-x. 1 root root 563 2009-03-06 03:14 readahead.cron -rwxr-xr-x. 1 root root 296 2009-04-16 18:30 rpm -rwxr-xr-x. 1 root root 339 2009-03-23 22:51 tmpwatch cron.hourly: 合計 4 -rwxr-xr-x. 1 root root 341 2009-04-14 23:22 0anacron cron.monthly: 合計 4 -rwxr-xr-x. 1 root root 111 2009-03-06 03:14 readahead-monthly.cron cron.weekly: 合計 8 -rwxr-xr-x. 1 root root 663 2009-02-26 11:38 makewhatis.cron -rwxr-xr-x. 1 root root 135 2009-05-20 02:04 raid-check [root@betasei etc]# 何か、お分かりでしょうか。 ややこしい話になってきて、すみません。

関連するQ&A

  • Apacheのログについて

    apacheのログの設定について苦戦しています ログローテートをしたいのですが出来ません。 ログの書式を設定したいのですが 解決方法を教えていただけないでしょうか。 httpd.confで次の設定をしています。 ・ログローテートについて CustomLog "|/opt/apache/bin/rotatelogs /opt/apache/logs/access_log.%Y%m%d 86400" hoge CustomLog "|/opt/apache/bin/rotatelogs /opt/apache/logs/error_log.%Y%m%d 86400" hoge ・ログの書式について [日時] [ホスト名] [情報レベル] [詳細] という風に設定したいです。 次の設定にしています。 LogFormat "%t %h %l %u %t \"%r\" %>s %b" hoge その他の設定はほとんどデフォルトから変更しておりません。 OS : centos 4.6 Apache version: 2.2.11 以上です。よろしくお願いします。m(_ _)m

  • webalizerのログローテーション対応

    webalizerの導入を検討しています。 下記のようなログローテションになっていますがこれをすべてwebalizerのアクセス解析に対応するためにはどのようにすればいいのでしょうか? ------------------------------ httpd-access.log(本日) httpd-access.log.1(一日前) httpd-access.log.2(二日前) httpd-access.log.3(三日前) ------------------------------ といった感じで一ヶ月分のログを/var/log以下にとっています。 confファイルではhttpd-access.logのようなを記述していますが当然ながら本日分しか取ることできません。 また下記のようなスクリプトで検索ワードをshift-jisに変換しています。 ------------------------------ #!/bin/sh cd /home/www/html/acc /usr/bin/perl /home/www/html/jconv.pl /var/log/httpd-access.log > /var/log/h ttpd-access2.log /usr/local/bin/webalizer -c /usr/local/etc/webalizer.conf -Q ------------------------------ ------------------------------ #!/usr/bin/perl use lib ('/usr/local/lib/perl5/site_perl/5.005/i386-freebsd', '/usr/local/lib/perl5/site_perl/5.6.1/mach'); use Jcode; open (IN ,$ARGV[0]); while (<IN>){ $_ =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; Jcode::convert(\$_,sjis); print $_; } close (IN); exit; ------------------------------ これをまた一ヶ月分のログローテションに対応するのにはどうしたらいいのでしょうか? ご教授いただければ幸いです。 宜しくお願いします。

  • ポートスキャンのログ

    ポートスキャンを受けているかチェックしたいんですが apacheの場合は/var/log/access.logなんですが ポートスキャンはどこのログを見れば良いのでしょう? /var/log/messageを見ましたが載ってないみたいです OSはdebianです

  • apacheでログを圧縮&再起動を掛けたい

    長い質問ですみません。随分試行錯誤した上でまだ悩んでいます。 無料プロバイダを個人運営でやっているものなんですが、 サーバーのログをhttp.confの設定でこんな感じで作成し、 CustomLog /var/log/apache/XXX.XXX.ne.jp-access.log combined これをCSV扱いしてCGIで読み取り、解析をしています。 自動的に一週間でログの切り替えを行っている様で最初はこれでよかったのですが、アクセスが増えるにつれcgiとログファイルが非常に重くなってきました。 そこで、以下のことをしようと思っています。 cronを使えば良いのではないかと思いました。 1.一定のアクセスの少ない時刻にログ圧縮をかける (圧縮ファイルは上書きでよい。どっちみちそんなに遡っては見ないので) 2.apacheを再起動する (再起動かけないと新しいlogファイルが作成されない様なので) ちなみに手動では以下の方法で出来ました。 gzip /var/log/apache/XXX.XXX.ne.jp-access.log ps x kill プロセスID /usr/sbin/apache でも自動だと kill プロセスIDがダメなんです。 同じIDでapacheが起動してくれないので・・・。 1.apacheを一定時間に確実に再起動させる方法 2.それ以外の1日単位でログファイルの切り替えを行う方法 CGIが一定ファイルを読む仕掛けになってるので現在アクティブなファイルは 同じのままという条件で のどちらかを教えてください。 ちなみに、 http://www.rfs.co.jp/server/apache/06.html の方法はhttpd.pidがwhereisとかfind探しても見つからないという 理由により挫折してますのでこれはアドバイスしないでください。 見つける方法がわかればそれでもまあいいのですが。

  • logrotateでログの整理中、httpdの再起動で不具合

    logrotateでログが整理された後、 httpサーバーが再起動されますが、 その後、WEBサイトが見れなくなります。 /etc/init.d/httpd status で見るとrunning ですが、止まっています。 /etc/init.d/httpd restart すると回復します。 /etc/logrotate.d/httpdの中の再起動部分でおかしくなっています。 /var/log/httpd/*log { missingok notifempty sharedscripts postrotate /bin/kill -HUP `cat /var/run/httpd.pid 2>/dev/null` 2> /dev/null || true endscript } /bin/kill のところです。 毎回おかしくなる訳ではなく、たまになると言う頻度、httpd restart で回復します。 どういう対応すれば良いでしょうか。。

  • fedora11でのcron設定

    fedora11,apache,php5の環境でcronを使いたいのですが、動きません。。 状況が、 fedora11 php5 apache を使用していて、cronを使ってphpの定期実行を行いたいのですが、どうしてもうまくいきません。 かなりググってはみたのですが、liuxについては初心者なので、どうにもわかりません。 設定内容が、 /etc/crontabが、 SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root HOME=/ * /1 * * * * apache /usr/bin/php /var/www/html/cron.php で、/var/log/cron でログを確認したところ Jul 28 19:00:01 host CROND[8417]: (apache) CMD (/usr/bin/php /var/www/html/cron.php) となっていてこれが一分ごとに出てきます。 cron.phpにはファイル追記の処理を書いてあります。 エラーではないようなのですが、ファイル操作が行われていないようなので動いていないようなのです。 ローカルホストでphpを実行したらちゃんと動くのでphp内のミスではないようです。 パーミッション関係だったらログにエラーが出そうなものですし、、、。困っています。。 どなたかお知恵を貸していただけませんでしょうか、よろしくお願いします。

  • /var/log/httpd/error_logに大量のエラーログ

    お世話になります。 サーバを運用しているんですが、/var/log/httpd/error_logに大量のエラーログが出ます。 環境 CENTOS4 PHP5.1.6 mysql5 apache2.0 /etc/httpd/conf/httpd.confのerror_log部分はコメントアウトして再起動しました。 エラーログをはいているなにがしかのconf設定部分があるとおもい、ずっと探しているのですが、まったくわかりません。エラーログを吐かないようにしたいのですが、どうにか良い方法ございませんでしょうか。 エラーログの中身ですが、すぐいっぱいになるため、中身を見ようと思っても容量が大きすぎてコマンドラインから開くこともままなりません。大体一時間で50G程度のエラーログが出ています。 お忙しいところ大変申し訳ございませんがどうぞよろしくお願いします。

  • ログの中にこんなメッセージが・・・

    毎度、お世話になります。 Linuxサーバー内の/var/log/messagesを覗いたら、以下の様なメッセージが出てました。 Apache(httpd)関係の起動トラブルだと思うのですが、一体どのような意味なのでしょうか? また、このエラーの対処法をご教授ください。 おねがいします。 /var/log/messages httpd: Ouch! ap_mm_create(1048576, "/var/run/httpd.mm.31254") failed httpd: Error: MM: mm:core: failed to open semaphore file (Permission denied): OS: No such file or directory 使用OS:Redhat Linux7.1J

  • Apacheのaccess.logについて

    Windows版のApacheを使ってサーバを立ち上げています。 access.logの情報を利用したいんですが、どうやらうまくログを取れていないようです。 例えば、11月26日のアクセスログを見たいのに、access.logを開いて見たら11月7日のデータしかないんです。 httpd.confでは、次のように設定しています。 LogFormat "%T %h %l %u %t \"%r\" %>s %b \"%{Referer}i\ \"%{User-Agent}i\"" combined LogFormat "%T %h %l %u %t \"%r\" %>s %b" common CustomLog log/access.log common Apacheがログを記録するのは随時ではありませんか? Linuxなら、cronとか使えばいいんですが、Windowsでは、どうすれば、当日のログを取れるんですか? よろしくお願いします。

  • Apache2.2が再起動できない問題についてです

    --- 前提・実現したいこと バーチャルホスト2つ目から3つ目を追加して、Apacheを再起動させたところ[FAILED]と出力されます。 不思議なのが、設定したバーチャルホストを3つから2つに減らしてApacheサーバを再起動したら動きます。 また、構文に誤りがないか確認しましたが「Syntax OK」と出力されました。 ご教授のほどよろしくお願いします。 ------------------------------------------------------------------------------------------------------------------------- --- 発生している問題・エラーメッセージ エラー・ログはございません。 Apache サーバを再起動した際し、[FAILED] ------------------------------------------------------------------------------------------------------------------------- --- vhostで設定した構文です。 NameVirtualHost *:80 <VirtualHost *:80> DocumentRoot /var/www/html/domain-name ServerName domain-name ServerAlias domain-name ErrorLog /var/log/httpd/domain-name/error_log CustomLog /var/log/httpd/domain-name/access_log combined <Directory "/var/www/html/domain-name"> </Directory> </VirtualHost> <VirtualHost *:80> DocumentRoot /var/www/html/domain-name ServerName domain-name ServerAlias domain-name ErrorLog /var/log/httpd/domain-name/error_log CustomLog /var/log/httpd/domain-name/access_log combined <Directory "/var/www/html/domain-name"> </Directory> </VirtualHost> <VirtualHost *:80> DocumentRoot /var/www/html/domain-name ServerName domain-name ServerAlias domain-name ErrorLog /var/log/httpd/domain-name/error_log CustomLog /var/log/httpd/domain-name/access_log combined <Directory "/var/www/html/domain-name"> </Directory> </VirtualHost>