『FreeBSD』 FreeBSD+ZFS+Samba+netatalk環境を構築する – FreeBSDインストール+etc

Debian/kFreeBSDで意味不明なトラブルが多発したので、結局FreeBSDをインストールしました。
トラブルも無く、時間もかからず環境構築できたので、初めからこっちを入れておくべきだった。
#普段使いのマシンはLinuxにしますが

今回は、ZFSな環境構築+αまでを書きます。

インストール

USBメモリスティックを使ってインストールしました。
USBはWindowsで書き込みソフトを使って作成しました。

インストール自体は特に躓くところは無かったと言いたいところですが、オン・ボードのeternetインタフェースからDHCPでアドレスを取得しようとしたら、アドレス取得に失敗する事象が発生しました。
Realtekのeternetインタフェースです。
手持ちのIntelなeternetカードを使ってインストールをしました。

Debian/kFreeBSDでこのマシンにインストールしたときは認識した、他のマシンでインストール済みFreeBSDが入ったHDDで起動させたときは、このインタフェースを認識したので、インストーラの問題なのかな?
インストール後に動作確認はさせていないので微妙ですが。

他に注意点があるとしたら、
○キーボード選択時にJapanese 106xを選ぶと、Caps LockとCtrlが入れ替わったキーマップになります。
○今回は、他のマシンで使っていたファイルサーバーのDiskを再利用するので、ユーザー名を登録するとき、ユーザー番号は移植元のマシンのユーザー番号とあわせないと、あとで大変になる
○suするためにwheelグループにも追加しておく
って所です。

packageを使えるようにする

FreeBSDはportsってシステムでパッケージ管理をしていると思っていたのですが、最近のFreeBSDはpkgと言うコンパイル済みバイナリのパッケージ管理ツールがあるんですね。
で、いまひとつ使い方が解っていませんので、的外れな書き方をしているかもしれませんが、

# pkg
# pkg update

で使えるようになります。

どんなパッケージが使えるのかを知りたいときには、

# pkg search hoge

で探すのかな?

emacsインストール

私はviを使えないので(ぇ)、emacsを入れます。

# pkg install emacs-nox11-24.3_14,3

Xは必要ないです。
#でも、他のパッケージを入れたら結局インストールされた。。。。。

sshでパスワードログインできるようにする

デフォルトではsshでパスワードログインできません。
他のマシンにおいてある暗号鍵を持っていくためにもsshでパスワードログインしたいのです。
#USBメディアでコピーしろって事かもしれませんが・・・

# /etc/ssh/sshd_config

PasswordAuthentication yes
を追加して

# /etc/rc.d/sshd restart

これで、リモートマシンからパスワードログインできます。
秘密鍵をコピーして、RSA鍵でログインできるようになったら無効にするのが正しい使い方な感じがします。

ロケール設定

日本語が表示出来るようにします。

# emacs ~/.login_conf

me:
:charset=UTF-8:
:lang=ja_JP.UTF-8:
を追加

再ログインしたら日本語表示されます。

ZFSを有効にする

# emacs /boot/loader.conf

zfs_load=”YES”
を追加

# emacs /etc/rc.conf

zfs_enable=”YES”
を追加

FreeBSD 10ではインストール時にZFSファイルシステムを選択できるから、上記の設定は要らないのかもしれません。
これを外して有効になるかは確認していません。

404 Blog Not Found – 備忘録 – HP ProLiant MicroServer + FreeBSD + ZFSを参考に以下の設定を追加します。

# emacs /boot/loader.conf

kern.cam.boot_delay=10000
ahci_load=”YES”
vfs.zfs.txg.timeout=”5″
kern.maxusers=512
vm.kmem_size=”4G”
vm.kmem_size_max=”6G”
vfs.zfs.arc_min=”512M”
vfs.zfs.arc_max=”4G”
を追加

設定追加後にreboot

他のマシンで使っていたZFSなpoolをimportします。

# zpool import -f vol1
# zpool import -f vol1

前に使っていたマシンでexportしていなかったため、-fオプションが必要と言われました。

# zpool status

  pool: vol1
 state: ONLINE
status: One or more devices are configured to use a non-native block size.
        Expect reduced performance.
action: Replace affected devices with devices that support the
        configured block size, or migrate data to a properly configured
        pool.
  scan: scrub repaired 0 in 0h44m with 0 errors on Sun Oct  5 01:41:33 2014
config:

        NAME        STATE     READ WRITE CKSUM
        vol1        ONLINE       0     0     0
          raidz1-0  ONLINE       0     0     0
            ada1    ONLINE       0     0     0  block size: 512B configured, 4096B native
            ada2    ONLINE       0     0     0  block size: 512B configured, 4096B native
            ada3    ONLINE       0     0     0  block size: 512B configured, 4096B native

errors: No known data errors

  pool: vol2
 state: ONLINE
status: One or more devices are configured to use a non-native block size.
        Expect reduced performance.
action: Replace affected devices with devices that support the
        configured block size, or migrate data to a properly configured
        pool.
  scan: none requested
config:

        NAME        STATE     READ WRITE CKSUM
        vol2        ONLINE       0     0     0
          raidz1-0  ONLINE       0     0     0
            ada4    ONLINE       0     0     0  block size: 512B configured, 4096B native
            ada5    ONLINE       0     0     0  block size: 512B configured, 4096B native
            ada6    ONLINE       0     0     0  block size: 512B configured, 4096B native

errors: No known data errors

Debian/kFreeBSDでは出ていなかったのですが、セクタサイズが4kByteだけれども、512byteでpoolを作っちゃったよねてな注意が。
性能落ちるって言うけれども、どのくらい落ちるのかな。
修正しようと思ったらpoolをdestroyしてから-o ashift=12をつけてpoolをcreateする必要があるとのこと

これは、あとで試す。
が、変更させようと思ったら面倒くさい。
2TB×3の空きディスクがあるので、そちらも使ったらデータの移行はできるんだけどね。

rubyのインストール

rubyで書いたスクリプトが結構あるので、rubyをインストールします。

# pkg install ruby-2.0.0.576_1,1

インストール先が
/usr/local/bin/ruby
になっているので、スクリプトの修正が必要になりました。
/usr/bin/rubyへのリンクを作るのがスマートかもです。

Sambaの設定など

Sambaの設定などは別エントリーで

実践FreeBSDサーバ構築・運用ガイド
技術評論社 (2013-05-10)
売り上げランキング: 78,125

コメントを残す

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