固定IPサービス IPプロバイダー IPP

手軽にサーバー運営が可能な固定IPサービス
FAQ よくある質問 プライバシーポリシー
ホーム サービス内容 お申し込み @ドメイン 無料ネームサーバー
009当社社員のIPP活用メモ | Bフレッツを利用して手軽にサーバ運営 固定IP接続サービス

自宅サーバーの再構築(FreeBSD8.0-Stableの追っかけ)

ラット渡辺です。

amd64バージョンのFreeBSDをatom330 (Intel D945GCLF2) にインストールして自宅サーバ化を進めていますが、ちょっと負荷試験を兼ねて FreeBSDのシステム再構築をやってみましたので、手順を書いておきます。

手順概要 (参考:FreeBSDハンドブック
(1) stable-supfile の編集
(2) cvsup の実行
(3) 以前構築した場合は、既存ファイルの削除 (chflags -R noschg ・・・)
(4) ユーザーランド(buildworld)とカーネルの再構築(buildkernel)
(5) カーネルのインストール (installkernel)
(6) 設定ファイルのバックアップ&ユーザーランドのインストール(installworld)
(7) 設定ファイルのマージ&再起動

作業はすべて root 権限で行うものとします。

(1) stable-supfile の編集
# cp /usr/share/examples/cvsup/stable-supfile /tmp
# vi /tmp/stable-supfile
host の部分を "cvsup.jp.freebsd.org" に変更します。
*default host=cvsup.jp.FreeBSD.org

(2) cvsup の実行
# cvsup -g -L 2 stable-supfile
ネットワークから更新したソースコードが手元のサーバーにインポートされていきます。
自宅のIPP環境で10分~15分くらいかかりました。

(3) 以前構築した場合は、既存ファイルの削除 (chflags -R noschg ・・・)
以下のコマンドを実行します。初めて再構築する場合は不要です。
# chflags -R noschg /usr/obj/usr && rm -r /usr/obj/usr

(4) ユーザーランド(buildworld)とカーネルの再構築(buildkernel)
/usr/srcに移動して、makeします。これが3時間ほどかかりました。
-j 4 はジョブの並列度です。なんちゃって4コアなので -j 4 にしました。

# cd /usr/src
# make -j 4 buildworld && make buildkernel
(ずっと待つ・・・)

このときの負荷ですが、 w コマンドの結果です。ロードアベレージが4を越えています。
そういう意味では、負荷テストの意味があったかな、とは思います。

atom330% w
4:24PM up 1 day, 15:58, 3 users, load averages: 4.20, 4.25, 4.03
USER TTY FROM LOGIN@ IDLE WHAT
root v0 - Mon03AM 1day -csh (csh)
me pts/0 xxx.rat.jp 2:53PM 1:09 /usr/obj/usr/src/tmp/u
me pts/1 xxx.rat.jp 3:20PM - w

CPU温度も計測できるので、計測してみました。

atom330% sysctl -a | grep temper
dev.cpu.0.temperature: 53
dev.cpu.1.temperature: 54
dev.cpu.2.temperature: 60
dev.cpu.3.temperature: 60

ずいぶん高いですね・・・起動時はCPU0で40度弱だったんですが・・

ちなみに、このコア温度計測をやるには、事前に以下のコマンドを実行します。
# kldload coretemp
起動時に coretemp カーネルモジュールを自動ロードするには
/boot/loader.conf に 「coretemp_load="YES"」の行を追加します。

おまけ HDDの温度計測をやるには、smartmontools というパッケージを
インストールして、以下のコマンドを実行すると結果がでます。(44度でした)
# /usr/local/sbin/smartctl -a /dev/ad4 | grep Temperature_Celsius | awk '{print $10}'
44

(5) カーネルのインストール (installkernel) と再起動
# make installkernel
# reboot

(6) 設定ファイルのバックアップ&ユーザーランドのインストール(installworld)
再起動後、またログインして、 root になります。
# mergemaster -p
# cd /usr/src
# make installworld

ここでハマリました。 (/)のディスク容量が足りない、と。

atom330# df
Filesystem 1K-blocks Used Avail Capacity Mounted on
/dev/ad4s1a 507630 499064 -32044 107% /
devfs 1 1 0 100% /dev
/dev/ad4s1e 507630 7422 459598 2% /tmp
/dev/ad4s1f 464978168 6997976 420781940 2% /usr
/dev/ad4s1d 3014286 17064 2756080 1% /var

FreeBSDインストーラーのデフォルト設定で、 / には 512MBしか
割り当ててなかったのですが、/boot に目一杯入っていたのが敗因です。

atom330# du /boot/
24 /boot/defaults
2 /boot/firmware
238084 /boot/kernel
2 /boot/modules
2 /boot/zfs
237294 /boot/kernel.old
476096 /boot/

仕方が無いので、 kernel.oldのデータを圧縮して別ディレクトリ /usr/tmp
に移動して230MBの空きをつくり再チャレンジ。

次に再構築する時にハマらないよう、 /boot/kernel.old を
/usr/boot/kernel.old ディレクトリを作ってシンボリックリンクを張ってごまかしました。

atom330# mkdir /usr/boot/kernel.old
atom330# cd /boot
atom330# rm -rf kernel.old
atom330# ln -s /usr/boot/kernel.old kernel.old

(カーネルの再構築が失敗して、かつ起動時に/usr をマウントしてくれないときが怖いです)

(7) 設定ファイルのマージ&再起動
# mergemaster
# reboot

(8) 動作確認
再起動後、またログインして uname -a のコマンドを実行します。
% uname -a
FreeBSD atom330 8.0-BETA4 FreeBSD 8.0-BETA4 #0: Tue Sep 15 18:07:55 JST
2009 me@atom330:/usr/obj/usr/src/sys/GENERIC amd64

ちゃんとビルド時の日付になってますね。めでたしめでたし。

お申し込み
新規お申込の流れ
ご利用方法
ルーターの設定方法
設定確認
更新手続き(会員専用)
会員規約
ユーザーへのリンク
FAQ-よくある質問
オプションサービス
当社社員のIPP活用メモ
逆引き設定
自動引落手続き
会員ページ
退会手続き

ページ上へ
Copyright (C) 2021 RAT Co.,Ltd. All Rights Reserved.