ここでは、FreeBSDを日本語デスクトップOSとして使用する場合のインストール方法について、書きます。FreeBSDだけでデスクトップOSになるわけではなく、これはその後の作業の出発点です。デスクトップOSとして利用しようとすると、先にやって置いた方がいい内容もいくつかあって、それについても合わせてここで書いておきます。なんて、えらそうに書いてますが、実際の所、理論の裏付けなく、経験だけで書いていますので、そんなもんだと思って読んでください。
FreeBSDのインストール
bsdinstallはサードパーティのブートマネージャーには対応していないなんて書きましたが、よくよく試してみたらできました。なので、PC-BSD 9.0のDVDなど使う必要はありません。9.1にはそんな機能はなくなったし、9.0のインストーラもなんだかんだと問題あったし。で、ここではサードパーティのブートマネージャーを使う場合のディスクの領域確保についても書きます。
-
インストールの途中で、入力を求められる情報があって、そのためにインストール前に調べて揃えておかなければいけない情報があります。ここでは、それをまとめておきます。
- ネットワーク関連の情報
まずは、DHCPを使うかどうか(IPアドレスを自動取得とするかどうか)。
DHCPを使わない場合、
- IPアドレス
- DNSサーバーのアドレス
- サブネットマスク
- 自分のユーザー設定情報
- ディスク容量
portsからビルドした方がいろいろと不具合がないので、そうする場合は「30GB+自分で使用する容量」でしょうか。パッケージからインストールする場合は、「20GB+自分で使う容量」で十分でしょう。
補足 |
FreeBSDは、その後のアプリケーションのインストールとか、セキュリティアップデートとか、セットアップに関する作業は、大抵、ネットワークに繋がっていないと、まず、できません。なので、インストレーションの段階でネットワークの設定をしておいて、インストールが終わったらネットワークは起動できているという状態にする必要があります。 |
-
- CDを入れて起動。
- 「<Install>(FreeBSDをインストール)/<Shell>(Shellを起動)/<Live CD>(CDからFreeBSDを起動)」する画面が開くので、<Install>を選択します。
- キーボードのキー配置を選択するか聞かれるので、「Yes」を選択します。次に出てくるリストから使用するキーボードに合うものを選択します(大抵は、「Japanese 106」だと思いますが。)。
- ホスト名の入力を求められるので、「localhost」と入力します。
- インストールするコンポーネントを聞かれるので、[ports]と[src]を(amd64版の場合は[lib32]も)選択してください(デフォルトでは、[games]は選択されていますが、これを選択から外します。別に入れて困ることはないでしょうが。)。
- ディスク領域の割り当て画面が表示されます。
- インストールする領域を新しく作成してインストールする場合
- <Guided>/<Manual>/<Shall>の三つの選択肢が表示されますが、<Guided>を選択します。
- インストールするHDDを選択します。(一つしかHDDがないとスキップしたような気もしますが、記憶が曖昧です。)
- <Entire Disk>/<Partition>の選択肢が表示されます。ハードディスクを全てFreeBSDに割り当てるのであれば<Entire Disk>を選択し、一部を割り当てるのであれば<Partition>を選択し出てきたダイアログでFreeBSDに割り当てたい容量を指定します。OKを押すと後は自動的に/のパーティションとスワップのパーティションが確保されています。
- 設定結果が表示されるので、設定に間違いがなければ、<Finish>を選択します。
- 既に確保してある領域にインストールする場合
- <Guided>/<Manual>/<Shall>の三つの選択肢が表示されますが、<Manual>を選択します。
- HDDの領域の状態が表示されますので、インストール先のスライスを探します。インストール先のスライスにパーティションが作成されている場合は、<Delete>で全て削除します。
- <Create>コマンドで以下の二つのスライスを確保します。
- 搭載メモリの1〜2倍の領域をのぞいたサイズでの、freebsd-ufs形式でマウントポイントが「/」のパーティション
- 搭載メモリの1〜2倍のサイズの、freebsd-swap形式のパーティション
- 設定結果が表示されるので、設定に間違いがなければ、<Finish>を選択します。
Ver.9.xから「/」のパーティションを確保するだけでよくなりました。インストールが楽になるのに加えて、ディスク容量の観点でもちょっとストレスが減ります。
- インストールを開始して良いかどうかを確認する画面が表示されますので、<Commit>を選択して、インストールを開始します。(選択肢は、<Commit>/<Revert & Exit>/<Back>の三つがありますが、<Commit>は、インストール開始、<Revert & Exit>は、それまでの設定を破棄してインストール中止、<Back>は、前の設定画面に戻る、ということです。)(ここからファイルのコピーが始まって、インストールが始まります。ここまでの作業は取消可能ですが、このステップが終わるともう取消できません。また、次のステップまではちょっと間が空きます。)
- (ここからはインストール後の設定作業です。)管理者のパスワード設定を求められるので、入力して設定します。
- 次にネットワークのセットアップをします。ネットワークインターフェースのリストが表示されるので、設定するインターフェースを選択してください。9.0から無線インターフェースの設定もできるようになったので、設定についてはいろいろなパターンがあります。以下は、有線ネットワークの場合です。
- IPv4の設定をするか聞かれるので、「Yes」を選択してください。
- IPv4の設定にDHCPを使用するか聞かれるので、適切なほうを選択してください。「No」を選択すると、IPアドレス、サブネットマスク、デフォルトルーターを入れる画面が表示されます。
- IPv6の設定をするか聞かれるので、「No」を選択してください。
- DNSの設定画面が表示されるので、入力します。尚、設定にDHCPを使用した場合は、既に設定されているので、入力不要です。
- Time Zoneの設定に移ります。
- 「PCの時計の時刻はUTCか」と聞かれるので、「No」を押します。
- Select Time Zoneメニューが表示されるので、まず地域を選択して、その後国(orタイムゾーン)を選択します。(通常はAsia→Japan。)
- 確認を求められるので、OKを押します。
- 追加で有効にするサービスを選択する画面が表示されます。[sshd],[moused],[ntpd],[powerd],[dumpdev]の五つの選択肢があります。必要に応じて選択してください。(Ver.9.2までは[dumpdev」はこの画面では出てきません。次の画面での指定になります。)
- (Ver.9.2までの場合)クラッシュダンプの設定画面が表示されます。適切な方を選択してください。
- ユーザーを追加するか聞かれるので、<Yes>を選択します。
必要な事項の入力を求められるので、順次入力していきます。
Username |
ログインIDを入力。 |
Full name |
ユーザーのフルネームを入力 |
Uid |
入力しない(システム設定に任せる) |
Login group |
入力しない(システム設定に任せる) |
Invite (ユーザー) into other groups? |
「wheel operator」と入力。(wheelとoperatorの間は半角スペース) |
Login class |
入力しない(システム設定に任せる) |
Shell |
入力しない(システム設定に任せる)
(ここら辺好みですが、デスクトップOSとしてセットアップして使うと、ユーザーでコンソールでする作業は殆どないです。) |
Home directory |
入力しない(システム設定に任せる) |
Home directory permissions |
入力しない(システム設定に任せる) |
Use password-based authentication? |
入力しない(システム設定に任せる) |
Use an empty password? |
入力しない(システム設定に任せる) |
Use a ramdom password? |
入力しない(システム設定に任せる) |
Enter password |
パスワードを入力。 |
Enter password again |
もう一度パスワードを入力。 |
Lock out the accout after creation? |
入力しない(システム設定に任せる) |
入力が終わったら、入力内容が表示され、間違いがないか確認されるので、確認して<Yes>を選択します。間違いがあれば、<No>を押して修正します。
入力が終わって<Yes>を選択すると、「更にユーザーを追加するか」聞かれます。ユーザーの設定が終わっている場合は、<No>を選択してください。
補足 |
Member Groupsにwheelと入力するのは結構ポイントです。FreeBSDだとスーパーユーザーしかできないことというのが結構ある(セキュリティ上の理由ですが。)のですが、wheelをGroup Memeberに設定しておくと、ログオフすることなくスーパーユーザーになれる(suコマンドが使える、逆にwheelユーザーグループに入れておかないとsuコマンドが使えない)ようになります。インストールとか設定でスーパーユーザーでの作業は結構あるので、これはやっておかないと、結構困ります。 |
- 追加で設定を行う画面が表示されます。[Add User]/[Root Password]/[Hostname]/[Network]/[Services]/[Time Zone]/[Handbook]のメニューがあるので、設定漏れがあれば、設定してください。追加の設定がなければ、[Exit]を選択して<OK>を押してください。
- インストールを完了するか、Shellを起動して追加の設定をするか、聞かれます。サードパーティのブートマネージャーを使用している場合は、インストールしたスライスが起動可能になるようにShellで以下のコマンドを入力してください。(インストールするスライスがada0s1の場合)
# gpart bootcode -b /boot/boot ada0s1[ENTER] |
特に追加の設定がなければ、<no>を選択します。
- インストールが完了したというメッセージが表示され、<Reboot>/<Live CD>の選択肢が表示されますので、<Reboot>を選択してください。(メディアは、Ver.8.xのように自動でイジェクトされないので、ちゃんと自分でメディアを取り出してください。)
GUI環境構築前に行う作業
ここからの作業は、rootでログインして行ってください。
-
/etc/rc.confを開いて、以下の記述を追加します。デスクトップOSとして使う場合には使わないsendmailを立ち上がらせないようにするための記載です。起動時にsendmailがネットワーク探しに時間を使って、起動が遅くなったりするんですが、それを回避するためです。
sendmail_enable="NO" |
sendmail_submit_enable="NO" |
sendmail_outbound_enable="NO" |
sendmail_msp_queue_enable="NO" |
コマンドプロンプト(#)で、ee /etc/rc.confと打つとエディタが開きます。上記の記載を入力して、[ESC]→[c]→[c]→[Enter]で、保存、[ESC]→[a]→[Enter]で、エディタ終了です。(UNIXの熟練者は、eeではなく、viとやるようですが、私はまだ修行が足りません。)
ここで再起動します。
-
portsのサーバーを近くのものにすると、ダウンロードが早く済んで設定が楽だろうと思っていましたが、FreeBSDのftpサーバーからはportsのdistfilesは消えてしまったようです。そのフォルダーにあったメッセージに載っていたサイトを代わりに登録します。ただ、足しになっているかどうか確認できていません。
MASTER_SITE_OVERRIDE=http://distcache.FreeBSD.org/ports-distfiles/${DIST_SUBDIR}/ |
-
FreeBSD9.3でデフォルトで確保してあるシェアドメモリは512MBなので、そのままでもよさそうですが、せっかくなので1GBに増やします。/etc/sysctl.confを開いて、以下の記述を追加します。
kern.ipc.shmmax=1073741824
kern.ipc.shmall=262144
|
コマンドプロンプト(#)で、ee /etc/sysctl.confと打つとエディタが開きます。上記の記載を入力して、[ESC]→[c]→[c]→[Enter]で、保存、[ESC]→[a]→[Enter]で、エディタ終了です。(UNIXの熟練者は、eeではなく、viとやるようですが、私はまだ修行が足りません。)
なお、マシンのメモリ量の確認は、
# grep memory /var/run/dmesg.boot[ENTER] |
で、できます。
-
スマホも常時正確な時刻を示している昨今、PCの時計もちゃんとしておかないといけないと思うので、起動時に時計を合わせるようにします。/etc/rc.confに以下の記載をします。
ntpdate_enable="YES" |
ntpdate_flags="-b ntp1.jst.mfeed.ad.jp" |
-
CDに入っているバージョンが最新とは限らないので、FreeBSDのアップデートをしておきます。コマンドプロンプトから、以下のコマンドを打ってください。(fetchで「アップデートはありません」といわれたら、installは不要ですが。)
# freebsd-update fetch[ENTER] |
# freebsd-update install[ENTER] |
-
アプリケーションをインストールするためにはportsツリーを構築しておかないといけないので、それをここでします。コマンドプロンプトで、以下の入力をして、Enterキーを押します。
# portsnap fetch && portsnap extract[ENTER] |
10〜30分ほどかかるので、気長に待ちます。
(&& というのは、一連のコマンドを続けて実行させるための記号です。こんなんを見るとCUIも便利だなと思います。)
-
package管理の新しいユーティリティ、pkgが導入されて、パッケージの構築も週一で行われるようになったそうなので、可能な限りpackageを使います。そのためにpkgをインストールします。コマンドプロンプトで、以下の入力をしてください。
# cd /usr/ports/ports-mgmt/pkg && make install clean[ENTER]
# echo WITH_PKGNG=yes >> /etc/make.conf[ENTER]
# pkg2ng[ENTER]
|
そのあと、「/usr/local/etc/pkg/repos/FreeBSD.conf」というファイルを作成して、以下の内容を記載してください。(エラーが出たら「mkdir -p /usr/local/etc/pkg/repos」の実行がいると思いますが。)
FreeBSD: {
url: "pkg+http://pkg.FreeBSD.org/${ABI}/latest",
mirror_type: "srv",
enabled: yes
}
|
-
週一でpackageが構築されるようになったとはいえ、実は全てが用意されているわけではないので、portmasterもインストールしておきます。コマンドプロンプトで、以下の入力をして、Enterキーを押します。
# pkg install ports-mgmt/portmaster[ENTER] |
ここで、portmasterを有効にするために、ログインし直します。
-
アプリケーションのインストールの際にお目当てのアプリの場所を探すのに使うpsearchをインストールしておきます。コマンドプロンプトで、以下の入力をして、Enterキーを押します。
# pkg install ports-mgmt/psearch[ENTER] |
FreeBSDに標準で用意されているwhereisコマンドでも似たようなことが出来ますが、psearchはports検索用のツールですから、こっちの方が使い勝手がいいです。
今回のセットアップでの主なモジュールのバージョン |
pkg |
1.8.7_3 |
portmaster |
3.17.9_4 |
psearch |
2.0.2 |
(2014年 5月24日 記
2014年 7月26日 更新
2015年 8月15日 更新
2016年10月12日 更新)