13 June 2013

前々回 zfs の Root File System にインストールするところまでできたので、 環境構築を行なっていきます。

標準のインストーラーを完全無視して進めたため、いろいろな設定が抜けています。 まだネットもつながらないし。。

rootパスワード設定

rootパスワードがまだ設定されていないので、ログインして passwd でパスワード設定しておく。

ネットワーク設定など

/etc を直接編集してもいいけど typo の恐れがあるので、一応ツールでやります。

# sysinstall

とし、Configure -> Networking -> Interfaces とたどって設定。

/etc/rc.conf に以下のような内容が追記される。

ifconfig_em0="DHCP"
ipv6_activate_all_interfaces="YES"
hostname=ernie.sesame"

また /etc/resolv.conf には以下のような内容が追記される。

# Generated by resolvconf
nameserver 192.168.11.1

他にもDNSサーバーがあれば追加する。

その他もろもろ

sysinstall して Configure -> Networking -> sshd にチェックを入れる。

/etc/rc.conf に

sshd_enable="YES"

が追加される。

/etc/rc.conf に

# Set dumpdev to "AUTO" to enable crash dumps, "NO" to disable
dumpdev="NO"

も追記しておく。 crash dumpはお好みで “AUTO” に。

タイムゾーン設定

インストーラーを使わなかった場合、タイムゾーンの設定もまだなので、設定します。 sysinstall して Configure -> Time Zone を選ぶ。

UTC で Yes を選び、タイムゾーンは Asia -> Japan を選ぶ。 (/usr/share/zoneinfo/Asia/Tokyo/etc/localtime へコピーされるらしい。)

時刻を合わせる

ワンショットの ntpdate よりも ntpd を使う方が望ましいので、 ntpd を設定します。

/etc/rc.conf に以下を追加

ntpd_enable="YES"

/etc/ntp.conf を開いて、

server 0.freebsd.pool.ntp.org

みたいになっている部分を必要に応じて書き換える。(サーバーを変える必要があるとき。)

パッケージインストール

このままではまともに使えないぐらい、ソフトが入っていないので、サードパーティー製ツールを入れていきます。

環境によっては package を使用するのに、プロキシを乗り越えないといけない場合があります。 その場合 FTP_PROXY 環境変数を設定します。

システム全体に設定するために /etc/profile

export FTP_PROXY="http://your.proxy.server:port_number"

のように書いておく。

ついでに /etc/csh.login にも

setenv FTP_PROXY "http://your.proxy.server:port_number"

のように書いておく。

# pkg_add -r bash nano vim emacs gmake cvs subversion git global autoconf automake libtool flex bison guile binutils gawk

といった感じでインストール。

ログインシェル変更

bash好みの人は

# chsh -s bash

ports をセットアップ

ports をセットアップ。 インストール時に入れなかった場合は、 /usr/ports ディレクトリがないと思います。 インスールメディアから ports をすでにインストールしている場合も、たぶん古いので、更新するのがよいです。

まず、snapshot を /var/db/portsnap/ ディレクトリへダウンロードしないといけない。

プロキシのせいで

# portsnap fetch
Looking up portsnap.FreeBSD.org mirrors... none found.
Fetching public key from portsnap.FreeBSD.org... failed.
No mirrors remaining, giving up.

と出て失敗する場合は、環境変数 HTTP_PROXY を設定しておく。

export HTTP_PROXY="http://your.proxy.server:port_number"

最初に fetch する。

# portsnap fetch

/var/db/portsnap/ 以下にダウンロードされる。

続いて extract する。

# portsnap extract

/usr/ports に展開される。

次回からは portsnap fetch (portsnap cron)&& portsnap update で更新する。

ユーザーアカウント作成

インストーラーを使わなかった場合、まだ一般ユーザーが作られていないため、作成します。

ユーザーアカウントを作る前に、

# zfs create /home/USER_NAME

でユーザーのホームディレクトリ用にパーティションを切る。 これは必須ではないけれど、ZFS の運用では細かくパーティションを切るのがスタンダードのようだ。 (ユーザーのホームディレクトリ単位で、スナップショットとったりできる。)

# adduser

質問に答えて行きながら、設定します。 管理者は

Invite foo into other groups? []:

と聞いてきたところに、wheel と入力する。 wheel グループに所属していないと、 su コマンドが使えないなど不自由するので。

グループを作成

例えば、GID 2000 で gitusers というグループを作りたい場合

# pw groupadd gitusers -g 2000

次に、メンバーを group に加える。 例えば、 gitusers というグループに taro と hanako を加える場合は

# pw groupmod gitusers -m taro,hanako

とする。

次回に続きます。



blog comments powered by Disqus