↑ 「FreeBSDで遊ぼう」のページへ

↑ 「デスクトップ環境の構築(XFCE on FreeBSD 10.x)」のページへ

↑ トップページへ

★ [SilverSackの自画自賛] FreeBSDで遊ぼう

★

 デスクトップ環境の構築(XFCE4.12_1 on FreeBSD 10.x) - 1. FreeBSDのインストールとGUI環境構築前に行う作業


ここでは、FreeBSDを日本語デスクトップOSとして使用する場合のインストール方法について、書きます。FreeBSDだけでデスクトップOSになるわけではなく、これはその後の作業の出発点です。デスクトップOSとして利用しようとすると、先にやっておいた方がいい内容もいくつかあって、それについても合わせてここで書いておきます。なんて、えらそうに書いてますが、実際の所、理論の裏付けなく、経験だけで書いていますので、そんなもんだと思って読んでください。

  1. FreeBSDのインストール

    1. インストール前に用意しておく情報
    2. インストールの途中で、入力を求められる情報があって、そのためにインストール前に調べて揃えておかなければいけない情報があります。ここでは、それをまとめておきます。

      • ネットワーク関連の情報
        まずは、DHCPを使うかどうか(IPアドレスを自動取得とするかどうか)。
        DHCPを使わない場合、
        • IPアドレス
        • DNSサーバーのアドレス
        • サブネットマスク
      • 自分のユーザー設定情報
        • ログインID
        • パスワード
        • フルネーム
      • ディスク容量
        portsからビルドした方がいろいろと不具合がないので、そうする場合は「30GB+自分で使用する容量」でしょうか。パッケージからインストールする場合は、「20GB+自分で使う容量」で十分でしょう。
      補足 FreeBSDは、その後のアプリケーションのインストールとか、セキュリティアップデートとか、セットアップに関する作業は、大抵、ネットワークに繋がっていないと、まず、できません。なので、インストレーションの段階でネットワークの設定をしておいて、インストールが終わったらネットワークは起動できているという状態にする必要があります。
    3. インストールの手順
      1. CDを入れて起動。
        ハードウェア依存の情報
        (Dell X300(古い!)にインストールする場合)
        10.2-RELEASE以降では、起動オプションを選択するところで、「3. Escape to loader prompt」を選んで、set hint.agp.1.disabled=1[ENTER]boot[ENTER]をキーインする必要があります。
        インストール後は、/boot/loader.confにhint.agp.1.disabled="1"とhint.drmn.1.disabled="1"を記入する必要があります。
      2. 「<Install>(FreeBSDをインストール)/<Shell>(Shellを起動)/<Live CD>(CDからFreeBSDを起動)」する画面が開くので、<Install>を選択します。
      3. キーボードのキー配置を選択するか聞かれます。次に出てくるリストから使用するキーボードに合うものを選択します(大抵は、「Japanese 106」だと思いますが。)。
      4. ホスト名の入力を求められるので、「localhost」と入力します。
      5. インストールするコンポーネントを聞かれるので、[src]を(amd64版の場合は[lib32]も)選択してください。デフォルトでは、[games]と[ports]が選択されていますが、この二つは選択から外します。[ports]は、どのみち後で最新のポーツツリーを仕入れるので、わざわざここで時間がかかることをしなくてもいいだろうとということです。[games]は使わないでしょうし。
      6. ディスク領域の割り当て画面が表示されます。
        (Ver.10.1以降の場合)
        <Auto(UFS)>/<Manual>/<Shell>/<Auto(ZFS)>の四つの選択肢が表示されます。好きなメニューを選択して作業を進めてください。<Shell>は、上級者向けなので、これを読む人はまず選択しないと思います。私もこれは使えないし、使ったことがありません。ZFSが使いたければ<Auto(ZFS)>を使うのでしょう。実は私はこれも使ったことがありません。私は、ブートマネージャーで確保した領域にインストールするので、もっぱら<Manual>なのですが、10.1になって<Auto(UFS)>と<Manual>の行き来が可能になったので、安心して使うことができるようになりました。前は、自分でパーティション設定をしたいときに<Guided>を選択した後、<Manual>に移りたいときに戸惑うことがあったのですが、ここら辺改善されました。
        (Ver.10.0の場合)
        1. インストールする領域を新しく作成してインストールする場合
          1. <Guided>/<Manual>/<Shell>の三つの選択肢が表示されますが、<Guided>を選択します。
          2. インストールするHDDを選択します。(一つしかHDDがないとスキップしたような気もしますが、記憶が曖昧です。)
          3. <Entire Disk>/<Partition>の選択肢が表示されます。ハードディスクを全てFreeBSDに割り当てるのであれば<Entire Disk>を選択し、一部を割り当てるのであれば<Partition>を選択し出てきたダイアログでFreeBSDに割り当てたい容量を指定します。OKを押すと後は自動的に/のパーティションとスワップのパーティションが確保されています。
          4. 設定結果が表示されるので、設定に間違いがなければ、<Finish>を選択します。
        2. 既に確保してある領域にインストールする場合
          1. <Guided>/<Manual>/<Shell>の三つの選択肢が表示されますが、<Manual>を選択します。
          2. HDDの領域の状態が表示されますので、インストール先のスライスを探します。インストール先のスライスにパーティションが作成されている場合は、<Delete>で全て削除します。
          3. <Create>コマンドで以下の二つのスライスを確保します。
            • 搭載メモリの1〜2倍の領域をのぞいたサイズでの、freebsd-ufs形式でマウントポイントが「/」のパーティション
            • 搭載メモリの1〜2倍のサイズの、freebsd-swap形式のパーティション
          4. 設定結果が表示されるので、設定に間違いがなければ、<Finish>を選択します。
        Ver.9.xから「/」のパーティションを確保するだけでよくなりました。インストールが楽になるのに加えて、ディスク容量の観点でもちょっとストレスが減ります。
      7. インストールを開始して良いかどうかを確認する画面が表示されますので、<Commit>を選択して、インストールを開始します。(選択肢は、<Commit>/<Revert & Exit>/<Back>の三つがありますが、<Commit>は、インストール開始、<Revert & Exit>は、それまでの設定を破棄してインストール中止、<Back>は、前の設定画面に戻る、ということです。)(ここからファイルのコピーが始まって、インストールが始まります。ここまでの作業は取消可能ですが、このステップが終わるともう取消できません。また、次のステップまではちょっと間が空きます。)
      8. (ここからはインストール後の設定作業です。)管理者のパスワード設定を求められるので、入力して設定します。
      9. 次にネットワークのセットアップをします。ネットワークインターフェースのリストが表示されるので、設定するインターフェースを選択してください。9.0から無線インターフェースの設定もできるようになったので、設定についてはいろいろなパターンがあります。以下は、有線ネットワークの場合です。
      10. IPv4の設定をするか聞かれるので、「Yes」を選択してください。
      11. IPv4の設定にDHCPを使用するか聞かれるので、適切なほうを選択してください。「No」を選択すると、IPアドレス、サブネットマスク、デフォルトルーターを入れる画面が表示されます。
      12. IPv6の設定をするか聞かれるので、「No」を選択してください。
      13. DNSの設定画面が表示されるので、入力します。尚、設定にDHCPを使用した場合は、既に設定されているので、入力不要です。
      14. Time Zoneの設定に移ります。
        1. 「PCの時計の時刻はUTCか」と聞かれるので、「No」を押します。
        2. Select Time Zoneメニューが表示されるので、まず地域を選択して、その後国(orタイムゾーン)を選択します。(通常はAsia→Japan。)
        3. 確認を求められるので、OKを押します。
      15. 追加で有効にするサービスを選択する画面が表示されます。[local_unbound],[sshd],[moused],[ntpd],[powerd],[dumpdev]の六つの選択肢があります。(Ver.10.0では、[local_unbound]がありません。)デフォルトでは、[sshd],[dumpdev]が選択されていて、私は全てチェックを外しています。
      16. ユーザーを追加するか聞かれるので、<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コマンドが使えない)ようになります。インストールとか設定でスーパーユーザーでの作業は結構あるので、これはやっておかないと、結構困ります。
      17. 追加で設定を行う画面が表示されます。[Add User]/[Root Password]/[Hostname]/[Network]/[Services]/[Time Zone]/[Handbook]のメニューがあるので、設定漏れがあれば、設定してください。追加の設定がなければ、[Exit]を選択して<OK>を押してください。
      18. インストールを完了するか、Shellを起動して追加の設定をするか、聞かれます。サードパーティのブートマネージャーを使用している場合は、インストールしたスライスが起動可能になるように、<yes>と回答した後、開いたShellで以下のコマンドを入力してください。(インストールするスライスがada0s1の場合)
           # gpart bootcode -b /boot/boot ada0s1[ENTER]
        特に追加の設定がなければ、<no>を選択します。
      19. インストールが完了したというメッセージが表示され、<Reboot>/<Live CD>の選択肢が表示されますので、<Reboot>を選択してください。(メディアは、Ver.8.xのように自動でイジェクトされないので、ちゃんと自分でメディアを取り出してください。)
  2. GUI環境構築前に行う作業

    ここからの作業は、rootでログインして行ってください。
    1. sendmailの無効化
    2. /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とやるようですが、私はまだ修行が足りません。)
      ここで再起動します。
    3. portsのFTPサーバーの設定
    4. portsのサーバーを近くのものにすると、ダウンロードが早く済んで設定が楽だろうと思っていましたが、FreeBSDのftpサーバーからはportsのdistfilesは消えてしまったようです。そのフォルダーにあったメッセージに載っていたサイトを代わりに登録します。ただ、足しになっているかどうか確認できていません。/etc/make.confに以下の記載をしてください。
         MASTER_SITE_OVERRIDE=http://distcache.FreeBSD.org/ports-distfiles/${DIST_SUBDIR}/
    5. シェアドメモリの拡張
    6. FreeBSD10.xでデフォルトで確保してあるシェアドメモリは512MBなので、そのままでもよさそうですが、せっかくなので2GBに増やします(今時メモリは4GB位積んでますよね)。/etc/sysctl.confを開いて、以下の記述を追加します。
         kern.ipc.shmmax=2147483648
         kern.ipc.shmall=524288
      コマンドプロンプト(#)で、ee /etc/sysctl.confと打つとエディタが開きます。上記の記載を入力して、[ESC]→[c]→[c]→[Enter]で、保存、[ESC]→[a]→[Enter]で、エディタ終了です。(UNIXの熟練者は、eeではなく、viとやるようですが、私はまだ修行が足りません。)
      なお、マシンのメモリ量の確認は、
         # grep memory /var/run/dmesg.boot[ENTER]
      で、できます。
    7. ntpdateの設定
    8. スマホも常時正確な時刻を示している昨今、PCの時計もちゃんとしておかないといけないと思うので、起動時に時計を合わせるようにします。/etc/rc.confに以下の記載をします。
         ntpdate_enable="YES"
         ntpdate_flags="-b ntp1.jst.mfeed.ad.jp"
    9. FreeBSDのアップデート
    10. CDに入っているバージョンが最新とは限らないので、FreeBSDのアップデートをしておきます。コマンドプロンプトから、以下のコマンドを打ってください。(fetchで「アップデートはありません」といわれたら、installは不要ですが。)
         # freebsd-update fetch[ENTER]
         # freebsd-update install[ENTER]
    11. portsツリーの更新
    12. アプリケーションをインストールするためにはportsツリーを構築しておかないといけないので、それをここでします。コマンドプロンプトで、以下の入力をして、Enterキーを押します。
         # portsnap fetch extract[ENTER]
      10〜30分ほどかかるので、気長に待ちます。
    13. pkgユーティリティのインストール
    14. package管理の新しいユーティリティ、pkgが導入されて、パッケージの構築も週一で行われるようになったそうなので、packageを使えるようpkgをインストールします。コマンドプロンプトで、以下の入力をすると、「....Do you want to fetch and install it now? (y/N)」と表示されるので、<y>を入力してEnterキーを押します。
         # pkg[ENTER]
    15. portmasterのインストール
    16. 週一でpackageが構築されるようになったとはいえ、デスクトップ環境まではportsからインストールする方が安定するようなので、portmasterもインストールします。コマンドプロンプトで、以下の入力をして、Enterキーを押します。
         # pkg install ports-mgmt/portmaster[ENTER]
    17. pserarchのインストールs
    18. アプリケーションのインストールの際にお目当てのアプリの場所を探すのに使うpsearchをインストールしておきます。コマンドプロンプトで、以下の入力をして、Enterキーを押します。
         # pkg install ports-mgmt/psearch[ENTER]
      FreeBSDに標準で用意されているwhereisコマンドでも似たようなことが出来ますが、psearchはports検索用のツールですから、こっちの方が使い勝手がいいです。
今回のセットアップでの主なモジュールのバージョン
pkg 1.10.1
portmaster 3.17.10
psearch 2.0.2

(2014年 2月15日 記
2014年11月23日 更新
2015年 8月29日 更新
2016年 4月16日 更新
2016年 8月16日 更新
2016年 9月10日 更新
2017年11月11日 更新)