Wie speichere ich Protokolldateien auf einer anderen Partition?

Wie speichere ich Protokolldateien auf einer anderen Partition?

Ich habe folgendes:

uname -a :

2.6.31-14-generic-pae #48-Ubuntu SMP Fri Oct 16 15:22:42 UTC 2009 i686 GNU/Linux

df -h:

Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1             9.4G  2.6G  6.4G  29% /
udev                  247M  168K  247M   1% /dev
none                  247M     0  247M   0% /dev/shm
none                  247M   40K  247M   1% /var/run
none                  247M     0  247M   0% /var/lock
none                  247M     0  247M   0% /lib/init/rw
/dev/sda3              40G  5.6G   32G  15% /var/lib/svn

/dev/sda1 ist der Ort, an dem sich der Webserver befindet, und /dev/sda3 ist der Ort, an dem wir SVN hosten.

/dev/sda1 ist nur 10 GB groß, wie Sie sehen, und manchmal werden die Apache2-Protokolldateien so groß, dass sie viel Speicherplatz beanspruchen und ich Fehler beim Hochladen von Dateien sehe. Das Entfernen von access.log behebt das Problem tatsächlich.

Idealerweise sollte /dev/sda3 25 GB und /dev/sda1 25 GB groß sein, aber die Leute, die diese VM hosten, sagen, dass das sehr schwierig ist und dass Daten verloren gehen könnten und so.

Ich möchte Apache-Protokolle auf /dev/sda3 speichern, statt auf /dev/sda1, wo sie gehostet werden.

Wie gehe ich dabei vor? Das Bearbeiten einer einfachen Apache-Conf-Datei reicht vielleicht nicht aus, oder? Danke!

PS: Ich bin kein Systemadministrator!

Antwort1

Sie können den Speicherort der Protokolldateien konfigurieren inapache2In /etc/httpd/conf/httpd.conf:

 ErrorLog "/var/log/httpd/error_log"

 <IfModule log_config_module>                    
     CustomLog "/var/log/httpd/access_log" common
 </IfModule>

Wenn Sie das Gefühl haben, dass Apache zu viele Informationen protokolliert, können Sie die Protokollebene in ändern /etc/httpd/conf/httpd.confaufwarnen,KritikoderAlarm(siehedie Apache-Dokumentationsseitefür weitere Informationen zu Loglevel-Werten):

 LogLevel warn

Wenn das nicht ausreicht, können Sie auch die logrotateKonfiguration fürapache2im/etc/logrotate.d/httpdlogrotatefürapache2wird normalerweise als täglicher Cron-Job konfiguriert.

verwandte Informationen