ラズベリーパイをおいしく料理してみる(6)-RAM上で動作させるために設定を変更する(その2)

今回は前回の続き。RAM上で動作させるためにスワップとテンポラリの領域設定を変更しましたが、お気づきの方もいるかと思いますが、ファイル出力されるものとして大事なものがまだ残っています。そう、ログファイル です。
今回はログファイルに関する設定を変更します。
(念のため再度書きますが、これから実施する設定でGUI環境が動作するかについては未確認なのでその点はご了承ください。)

1.ログファイルの設定変更に際し注意すること

 SDカード上に出力するようになっているログファイルに関する設定を変更します。これが完了すればSDカードへの書き込みはほぼなくなるはずです。
また、この設定の後はログとして出力された情報は再起動時には消滅します。なので、必要なものに関してはバックアップを取るようにしましょう。

 

2.出力先設定の変更

以降の手順で logの出力先をRAMディスク上に変更し、SDカードには記録しないようにします。

(1)マウントポイント設定の変更

/etc/fstab ファイルを更新して、OS起動時に、/var/logディレクトリが RAMディスク上にマウントされるように設定します。

対象設定ファイル : /etc/fstab

<変更前>

proc             /proc            proc     defaults           0        0
/dev/mmcblk0p1   /boot            vfat     defaults           0        2
/dev/mmcblk0p2   /                ext4     defaults,noatime   0        1
# a swapfile is not a swap partition, so no using swapon|off from here on, use dphys-swapfile swap[on|off] for that
# tmpファイルをRAMディスク上に展開する
tmpfs            /tmp             tmpfs    defaults,size=32m,noatime,mode=1777       0        0
tmpfs            /var/tmp         tmpfs    defaults,size=16m,noatime,mode=1777       0        0

 

<変更後>

proc             /proc            proc     defaults           0        0
/dev/mmcblk0p1   /boot            vfat     defaults           0        2
/dev/mmcblk0p2   /                ext4     defaults,noatime   0        1
# a swapfile is not a swap partition, so no using swapon|off from here on, use dphys-swapfile swap[on|off] for that
# tmpファイルをRAMディスク上に展開する
tmpfs            /tmp             tmpfs    defaults,size=32m,noatime,mode=1777       0        0
tmpfs            /var/tmp tmpfs defaults,size=16m,noatime,mode=1777 0 0
# /var/logディレクトリをRAMディスク上に展開する <- 追記した
tmpfs            /var/log         tmpfs    defaults,size=32m,noatime,mode=0755       0        0 <- 追記した

 

(2)変更の確認

設定を変更した後、再起動して変更が有効になっていることを確認します。

$ df -h
ファイルシス        サイズ   使用    残り   使用%  マウント位置
rootfs             15G   2.1G    12G    15%  /
/dev/root          15G   2.1G    12G    15%  /
devtmpfs          215M      0   215M     0%  /dev
tmpfs              44M   224K    44M     1%  /run
tmpfs             5.0M      0   5.0M     0%  /run/lock
tmpfs              88M      0    88M     0%  /run/shm
/dev/mmcblk0p1     56M   9.5M    47M    17%  /boot
tmpfs              32M      0    32M     0%  /tmp
tmpfs              16M      0    16M     0%  /var/tmp
tmpfs              32M    96K    32M     1%  /var/log

以上の結果より、設定が有効になっていることが確認できました。

 

3.出力内容の変更

記録するログの設定を変更してRAMディスク容量を節約することにします。

(1)変更前の状況の確認

変更の前に、現在のログ出力状況を確認しておきましょう。

$ ls -l /var/log
合計 96
-rw-r—– 1 root adm     510 8月 6 16:44 auth.log
-rw-r—– 1 root adm     867 8月 6 16:40 daemon.log
-rw-r—– 1 root adm    1161 8月 6 16:40 debug
-rw-r–r– 1 root adm   13354 8月 6 16:40 dmesg
-rw-r—– 1 root adm   21094 8月 6 16:40 kern.log
-rw-r—– 1 root adm       0 8月 6 16:40 lpr.log
-rw-r—– 1 root adm       0 8月 6 16:40 mail.err
-rw-r—– 1 root adm       0 8月 6 16:40 mail.info
-rw-r—– 1 root adm       0 8月 6 16:40 mail.log
-rw-r—– 1 root adm       0 8月 6 16:40 mail.warn
-rw-r—– 1 root adm   20070 8月 6 16:40 messages
drwxr-xr-x 2 root root    100 8月 6 16:40 news
-rw-r—– 1 root adm   22337 8月 6 16:40 syslog
-rw-r—– 1 root adm       0 8月 6 16:40 user.log

(2)設定ファイル(rsyslog.conf)の修正(変更)

以下のように、設定ファイルを編集する。

対象設定ファイル : /etc/rsyslog.conf


 :
(前略)
 :

###############
#### RULES ####
###############

#
# First some standard log files. Log by facility.
#
auth,authpriv.*                  /var/log/auth.log
*.*;auth,authpriv.none           -/var/log/syslog
#cron.*                          /var/log/cron.log
#daemon.*                         -/var/log/daemon.log <- コメントアウト
#kern.*                           -/var/log/kern.log <- コメントアウト
#lpr.*                            -/var/log/lpr.log <- コメントアウト
#mail.*                           -/var/log/mail.log <- コメントアウ
#user.*                           -/var/log/user.log <- コメントアウト

#
# Logging for the mail system. Split it up so that
# it is easy to write scripts to parse these files.
#
#mail.info                        -/var/log/mail.info <- コメントアウト
#mail.warn                        -/var/log/mail.warn <- コメントアウト
#mail.err                         /var/log/mail.err <- コメントアウト

#
# Logging for INN news system.
#
#news.crit                        /var/log/news/news.crit <- コメントアウト
#news.err                         /var/log/news/news.err <- コメントアウ
#news.notice                      -/var/log/news/news.notice <- コメントアウト

#
# Some “catch-all” log files.
#
#*.=debug;\ <- コメントアウト
#       auth,authpriv.none;\ <- コメントアウト
#       news.none;mail.none      -/var/log/debug <- コメントアウト
*.=info;*.=notice;*.=warn;\
        auth,authpriv.none;\
        cron,daemon.none;\
        mail,news.none   -/var/log/messages

#
# Emergencies are sent to everybody logged in.
#
*.emerg :omusrmsg:*

(3)設定ファイル(rc.local)の修正(変更)

以下のように、設定ファイルを編集する。

対象設定ファイル : /etc/rc.local

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will “exit 0” on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

# Print the IP address
_IP=$(hostname -I) || true
if [ “$_IP” ]; then
printf “My IP address is %s\n” “$_IP”
fi

# 起動時ディレクトリ作成
<- 追記した
mkdir -p /var/log/ConsoleKit <- 追記した
mkdir -p /var/log/samba <- 追記した
mkdir -p /var/log/fsck <- 追記した
mkdir -p /var/log/apt <- 追記した
mkdir -p /var/log/ntpstats <- 追記した
chown root.ntp /var/log/ntpstats <- 追記した
chown root.adm /var/log/samba <- 追記した

# 起動時空ファイル作成 <- 追記した
touch /var/log/lastlog <- 追記した
touch /var/log/wtmp <- 追記した
touch /var/log/btmp <- 追記した
chown root.utmp /var/log/lastlog <- 追記した
chown root.utmp /var/log/wtmp <- 追記した
chown root.utmp /var/log/btmp <- 追記した

exit 0

 

(4)変更の確認

再起動してから状態を確認すると…

$ ls -l /var/log
合計 76
drwxr-xr-x 2 root root      40 8月 6 17:18 ConsoleKit
drwxr-xr-x 2 root root      40 8月 6 17:18 apt
-rw-r—– 1 root adm      278 8月 6 17:23 auth.log
-rw-r–r– 1 root utmp       0 8月 6 17:18 btmp
-rw-r–r– 1 root adm    13354 8月 6 17:17 dmesg
drwxr-xr-x 2 root root      40 8月 6 17:18 fsck
-rw-r–r– 1 root utmp  292292 8月 6 17:23 lastlog
-rw-r—– 1 root adm    20070 8月 6 17:17 messages
drwxr-xr-x 2 root ntp       40 8月 6 17:18 ntpstats
drwxr-xr-x 2 root adm       40 8月 6 17:18 samba
-rw-r—– 1 root adm    22337 8月 6 17:18 syslog
-rw-r–r– 1 root utmp    6912 8月 6 17:23 wtmp


 これより、ログファイル数とディレクトリの状況から、設定の変更ができていることを確認できました。

 

以上でログファイルに関する設定は終了です。


返信を残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です