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

↑ 「デスクトップ環境の構築(KDE4 on FreeBSD with Gnome/XFCE)」のページへ

↑ トップページへ

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

★

 デスクトップ環境の構築(KDE4 on FreeBSD with Gnome/XFCE) - 1. FreeBSDのインストールとGUI環境構築前に行う作業


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

  1. FreeBSDのインストール

    1. インストール前に用意しておく情報

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

      • ネットワーク関連の情報
        まずは、DHCPを使うかどうか(IPアドレスを自動取得とするかどうか)。
        DHCPを使わない場合、
        • IPアドレス
        • DNSサーバーのアドレス
        • サブネットマスク
      • 自分のユーザー設定情報
        • ログインID
        • パスワード
        • フルネーム
      • ディスク容量
        「40GB+自分で使う容量」を用意して下さい。KDE4のコンパイルでかなりの容量を使うので、インストールする時でも、40GB要ります。
      補足 FreeBSDは、その後のアプリケーションのインストールとか、セキュリティアップデートとか、セットアップに関する作業は、大抵、ネットワークに繋がっていないと、まず、できません。なので、インストレーションの段階でネットワークの設定をしておいて、インストールが終わったらネットワークは起動できているという状態にする必要があります。
      FreeBSDは、基本的にrootユーザー(=スーパーユーザー)以外は、できる作業に制限があります。なので、rootでログインしていろいろなことをやりたくなるのですが、rootユーザーに割り当てられるディスク領域(ホームディレクトリ)は、結構少ないので、ホームディレクトリの豊富な一般ユーザーを自分用に作成して、それでログインして、セットワーク作業の時にスーパーユーザーになって作業するという方式を採った方が、間違いが起こりにくくなります。その関係で、インストール時に自分用のユーザー設定はやっておいた方が絶対にいいです。
    2. インストールの手順

      1. CDを入れて起動。
      2. 国を選択(選択値 : 110 Japan)。
      3. キーボードを選択(選択値 : Japanese 106)。
      4. SysInstallメニューが表示される。インストール方法を選択(選択値 : Standard)。
      5. User Confirmation Requestedのダイアログ(HDDのシリンダ数等に間違いがないかの確認。)が表示されることがある。Yesを選択。(問題があるかも知れないから、聞かれるわけですが、大抵の場合、問題ないはずなので、このまま行きます。とはいうものの、自己責任でお願いします。)
      6. FDisk Partition Editorが表示される。
        1. インストールする領域が空き領域でない場合は、一旦削除(D(Delete Slice)をキーイン)。
        2. インストールする空き領域を選択してスライス作成(C(Create Slice)をキーイン)。
        3. 作成する領域の容量の確認を求められるので、OK。
        4. ファイルフォーマットの確認を求められるので、[165](FreeBSDのファイルフォーマットの意味)であることを確認してOK。
        5. 念のため、起動可能スライスにする(S(Set Bootable)をキーイン)。
        6. Q(Finish)を選択して、FDisk Partition Editorを終了。
      7. Install Boot Manager for Driveで、ブートマネージャーの扱いの確認を求められるので、適切なものを選択してOK。(私の場合は、別のブートマネージャーを使用して、複数OS使用しているので、「ad0 None」(ブートマネージャーはインストールしない。)を選択してます。)
      8. Disc Label Editorが表示される。画面上部にFreeBSDをインストールする領域が表示されていることを確認して、A(Auto)を選択する。Partitionが作成されたことを確認して、Q(Finish)を選択して、Disc Label Editorを終了する。(特に知識がないのであれば、A(AUTO)しかないです。)
      9. Choose DistributionでFreeBSDの中の何をインストールするかを聞かれるので、「All」を選択して、OKを押す。
      10. Choose Install Mediaで、どこからインストールするかを聞かれるので、「CD/DVD」を選択して、OKを押す。
      11. User Confirmationで「本当にインストールするか」最終確認を求められるので、Yesを押す。Messageが表示されるので、OKを押す。(ここからファイルのコピーが始まって、インストールが始まります。ここまでの作業は取消可能ですが、このステップが終わるともう取消できません。また、次のステップまではちょっと間が空きます。)
      12. (ここからはインストール後の設定作業です。)Network Setupでネットワークのセットアップをするか聞かれるので、Yesを押す。
      13. 複数ネットワークアダプタがある場合、ネットワークアダプタを選択する画面が表示されるので、使用するネットワークアダプタを選択してOKを押す。
      14. IPv6を使用するか聞かれるので、Noを押す。
      15. DHCPを使用するか聞かれるので、適切な方(Yes or No)を選択する。(WindowsのTCP/IPのネットワーク設定で、IPアドレスとかを「自動的に取得する」としている場合は、Yes、そうではなくてIPアドレスの欄に「196.168.128.64」といったような具体的な値が入っている場合は、Noを選択します。)
      16. ネットワークの設定値を聞かれるので、入力する。
        Host localhostと入力
        Domain localdomainと入力
        DNS Domain Name Serverのアドレスを入力する。(上でDHCPにYesと回答した場合は、既にアドレスが入っているので、特に入力不要。)
        IP Address PCのIPアドレスを入力する。(上でDHCPにYesと回答した場合は、既にアドレスが入っているので、特に入力不要。)
        Mask Subnet Maskを入力する。(上でDHCPにYesと回答した場合は、既にアドレスが入っているので、特に入力不要。)
      17. 設定したネットワークを起動するか聞かれるので、Yesを押す。
      18. Network Gatewayとして使用するか聞かれるので、Noを押す。
      19. Network Serviceがどうのこうのと聞かれるので、Noを押す。
      20. SSHログインを使用するかと聞かれるので、Noを押す。
      21. FTPアクセスを受け付けるかと聞かれるので、Noを押す。
      22. NFSサーバーとして使用するかと聞かれるので、Noを押す。
      23. NFSクライアントとして使用するかと聞かれるので、Noを押す。
      24. Console Customizeをするかと聞かれるので、Noを押す。
      25. Time Zoneの設定を求められるので、Yesを押す。
        1. UTCかと聞かれるので、Noを押す。
        2. Select Time Zoneメニューが表示されるので、まず地域を選択して、その後国(orタイムゾーン)を選択する。(通常はAsia→Japan。私は、今は香港在住なので、Asia→Hong Kong。)
        3. 確認を求められるので、OKを押す。
      26. (7.xのみ)Linux Compatibilityを利用するか聞かれるので、Noを押す。
      27. Mouse Typeを聞かれるので、Noを押す。
      28. Package Collectionを見るかと聞かれるので、Noを押す。(ここで見てもしゃあないと思います。)
      29. ユーザーを追加するか聞かれるので、Userを選択してOKを押す。
      30. ユーザー登録画面が表示されるので、
        Login ID ログインIDを入力。
        Password パスワードを入力。(8.xは、二カ所に入力)
        Full Name ユーザーのフルネームを入力
        Member Groups wheel,operatorと入力。
        を入力してAddを押す。必要な登録が済んだら、Exitを選択してOKを押す。
        補足 Member Groupsにwheelと入力するのは結構ポイントです。FreeBSDだとスーパーユーザーしかできないことというのが結構ある(セキュリティ上の理由ですが。)のですが、wheelをGroup Memeberに設定しておくと、ログオフすることなくスーパーユーザーになれる(suコマンドが使える、逆にwheelユーザーグループに入れておかないとsuコマンドが使えない)ようになります。インストールとか設定でスーパーユーザーでの作業は結構あるので、これはやっておかないと、結構困ります。
      31. 管理者のパスワード設定を求められるので、入力して設定する。
      32. SysInstallメニューに戻るので、ExitInstallを選択して、SysInstallメニューを終了する。
      33. (Ver.7.xの場合)すぐに再起動されるので、CD/DVDドライブのイジェクトボタンを押して、インストールメディアを取り出す。(これをやらないと、再度インストールが始まってしまう。)
        (Ver.8.xの場合)CD/DVDドライブがイジェクトされ、「メディアを取り出して、OKボタンを押せ」というメッセージが表示されるので、インストールメディアを取り出して、OKボタンを押す。すると再起動される。
  2. GUI環境構築前に行う作業

    1. FreeBSDのアップデート

      ここからの作業は、rootでログインして行ってください。
      CDに入っているバージョンが最新とは限らないので、FreeBSDのアップデートをしておきます。コマンドプロンプトから、以下のコマンドを打ってください。(fetchで「アップデートはありません」といわれたら、installは不要ですが。)
         # freebsd-update fetch[ENTER]
         # freebsd-update install[ENTER]
    2. sendmailの無効化

      /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. シェアドメモリの拡張

      /etc/sysctl.confを開いて、以下の記述を追加します。FreeBSDでデフォルトで確保してあるシェアドメモリは32MB程度らしく、メモリがふんだんに搭載されている最近の環境であれば、拡張しておいた方がパフォーマンスが上がるそうです。ザクッと搭載メモリの半分くらいをシェアドメモリとして指定してやるのが良いようです。
         kern.ipc.shmmax=搭載メモリ(バイト単位)の半分
         kern.ipc.shmall=上記で設定したshmmax/4096
      (メモリが2GBの場合
         kern.ipc.shmmax=1073741824
         kern.ipc.shmall=262144)
      (メモリが256MBの場合
         kern.ipc.shmmax=134217728
         kern.ipc.shmall=32768)
      コマンドプロンプト(#)で、ee /etc/sysctl.confと打つとエディタが開きます。上記の記載を入力して、[ESC]→[c]→[c]→[Enter]で、保存、[ESC]→[a]→[Enter]で、エディタ終了です。(UNIXの熟練者は、eeではなく、viとやるようですが、私はまだ修行が足りません。)
      念のため、ここで再起動しておきます。
    4. portsツリーの更新

      アプリケーションをインストールするためにはportsツリーを構築しておかないといけないので、それをここでします。コマンドプロンプトで、以下の入力をして、Enterキーを押します。
         # portsnap fetch && portsnap extract[ENTER]
      10〜30分ほどかかるので、気長に待ちます。
      (&& というのは、一連のコマンドを続けて実行させるための記号です。こんなんを見るとCUIも便利だなと思います。)
    5. portupgardeとportmasterのインストール

      アプリケーションのバージョン管理に使用するportupgradeとportmasterをインストールしておきます。コマンドプロンプトで、以下の入力をして、Enterキーを押します。
         # cd /usr/ports/ports-mgmt/portupgrade[ENTER]
         # make config-recursive && make package-recursive clean[ENTER]
         # cd /usr/ports/ports-mgmt/portmaster[ENTER]
         # make config-recursive && make package-recursive clean[ENTER]
      途中、インストールのオプションをどう設定するか効いてくるかもしれませんが、よく分からなければデフォルトのままで進めてください。大抵の場合は、デフォルトで問題ないはずです。portmasterのインストールはすぐ済みますが、portupgradeは、依存するパッケージが多いので、結構(今時のPCで、30分くらい、非力なPCで、1時間くらい。)かかります。
      二つもいらねぇだろ、という突っ込みはあると思いますが、
      • ネットで記事を見ていたら、portmasterではアップデートが成功したが、portupgradeでは成功しない事例がどうもあったようだ。
      • portsのバージョン検索機能としては、portupgradeに含まれるportversionの使い勝手がいいので、これを使いたい。
      というのが、理由です。ま、好みの問題っちゃ、好みの問題なので、どちらか一本で行かれてもいいでしょう。portmaster一本で行くのであれば、ここでインストールのたびに出てくる「pkgdb -u」というおまじないはいらなく(というか、効かなく)なります。
    6. pserarchのインストール

      アプリケーションのインストールの際にお目当てのアプリの場所を探すのに使うpsearchをインストールしておきます。コマンドプロンプトで、以下の入力をして、Enterキーを押します。
         # cd /usr/ports/ports-mgmt/pearch[ENTER]
         # make config-recursive && make package-recursive clean && pkgdb -u[ENTER]
      FreeBSDに標準で用意されているwhereisコマンドでも似たようなことが出来ますが、psearchはports検索用のツールですから、こっちの方が使い勝手がいいです。
    7. デバイスのインストール

      1. サウンドドライバのインストール

        FreeBSDは、インストールしただけではサウンド機能は無効になっています。以下の手順で、サウンドドライバーを起動時に読み込むようにします。
        1. 以下のコマンドを打って、メタドライバを読み込みます。
             # kldload snd_driver[ENTER]
        2. どのドライバを選んだか調べます。コマンドプロンプトで、以下のように打って、サウンドハードウェアの状況を調べます。
             # cat /dev/sndstat[ENTER]
          snd_xxxという表示があったら、これをメモします。ない場合は、サウンドデバイスの情報とおぼしきものをメモって、そのあと/boot/defaults/loader.confファイルを開いて、対応するsnd_xxxを探します。
          それから、サウンドデバイスがpcm0とかpcm1とかいう番号が振られて表示されますが、自分が使いたいサウンドデバイスがpcm0になっていることを確認してください。なっていない場合は、それがpcmの何番になっているか、メモってください。
        3. 起動ファイルに「snd_xxx_load="YES"」といった内容を追記します。
          /boot/loader.confファイルに以下の記述を追加します。
          (サウンドハードウェアがIntel ICHだった場合)
             snd_ich_load="YES"
          対応するドライバが分からなかった場合は、メタドライバを読み込んでください。
             snd_driver_load="YES"
          ただ、こうすると起動時に全部のサウンドドライバを読み込むようで、起動がちょっと遅くなります。
        4. 自分が使いたいサウンドデバイスがpcm0ではなかった場合、/etc/sysctl.confに以下の記述を追記します。
             hw.snd.default_unit=1
          (デフォルトにしたいサウンドデバイスが[pcm1]だった場合。1のところは、デフォルトにしたいサウンドデバイスがpcm2だったときは2にするとか、適宜替えてください。)

トラブルシューティング等

今回のセットアップでの主なモジュールのバージョン
portupgrade 2.4.8_1,2
portmaster 3.6.1
psearch 2.0.1

(2011年 3月21日 記)