MacBook AirでOpenSolaris

MacBook AirにネイティブでOpenSolarisを動かすことができました。内蔵キーボード、オーディオ、ビデオは追加のセットアップをせずに動作します。内蔵WiFiやCompizは追加設定で動作します。(English)

必要なもの

  • MacBook Air SuperDrive
  • OpenSolaris 2008.11 Development Builds or later
    : OpenSolaris 2008.05ではbug 6724581のため内蔵キーボードが認識されないので、OpenSolaris 2008.11以降をインストールするようオススメします。もしOpenSolaris 2008.05をインストールしたい場合は、バスパワーのUSBハブ、USB外付けキーボード、サードパーティ製USB CD/DVDドライブ(MacBook Air SuperDriveがUSBハブ経由でOpenSolaris CDを起動できないため)が必要になります。また、インストール終了後は、内蔵キーボードを有効にするため、パッケージをsnv_95以降にアップデートする必要があります。

インストール

  1. Mac OS Xのdiskutilコマンドを使ってパーティションをリサイズ
    MacBook Airはたった80GBのHDD(または60GBのSSD)しかないので、パーティションサイズを事前に十分に見積もっておく必要があります。私の場合は20GBをSolarisに、さらに20GBをVistaに割り当てました。Mac OS Xにもっと空き容量を増やしたい場合は、Mac OS X 10.5インストール時に、プリンタドライバ、追加フォント、不要な言語、バンドルアプリケーション(iWeb, GarageBand, iMovieなど)を選択解除すればよいでしょう。

    $ diskutil resizeVolume /dev/disk0s2 34.1G "MS-DOS FAT32" Windows 20G "Journaled HFS+" Solaris 20G
    Started resizing on disk disk0s2 Mac OS X
    Verifying
    Resizing Volume
    Adjusting Partitions
    Formatting new partitions
    Formatting disk0s4 as Mac OS Extended (Journaled) with name Solaris
    Formatting disk0s3 as MS-DOS (FAT32) with name Windows
    [ + 0%..10%..20%..30%..40%..50%..60%..70%..80%..90%..100% ] 
    Finished resizing on disk disk0
    /dev/disk0
       #:                       TYPE NAME                    SIZE       IDENTIFIER
       0:      GUID_partition_scheme                        \*74.5 Gi    disk0
       1:                        EFI                         200.0 Mi   disk0s1
       2:                  Apple_HFS Mac OS X                34.0 Gi    disk0s2
       3:       Microsoft Basic Data WINDOWS                 20.0 Gi    disk0s3
       4:                  Apple_HFS Solaris                 20.1 Gi    disk0s4
    

  2. GPT (GUID Partition Table)からMBR (Master Boot Record)への変更
    現在のところOpenSolarisはGPTハードディスクから起動することができません。手動でfdiskコマンドを使って変更する必要があります。MBRに変更すると、ディスクユーティリティGUIでパーティションマップを表示することができなくなりますのでご注意下さい。

    $ sudo fdisk -e /dev/disk0
    Password:
    fdisk: could not open MBR file /usr/standalone/i386/boot0: No such file or directory
    Enter 'help' for information
    fdisk: 1> p
    Disk: /dev/disk0	geometry: 9729/255/63 [156301488 sectors]
    Offset: 0	Signature: 0xAA55
             Starting       Ending
     #: id  cyl  hd sec -  cyl  hd sec [     start -       size]
    ------------------------------------------------------------------------
     1: EE 1023 254  63 - 1023 254  63 [         1 -     409639] 
     2: AF 1023 254  63 - 1023 254  63 [    409640 -   71250736] HFS+        
     3: 0B 1023 254  63 - 1023 254  63 [  71922520 -   41943040] Win95 FAT-32
     4: AF 1023 254  63 - 1023 254  63 [ 113865560 -   42173744] HFS+        
    fdisk: 1> setpid 1
             Starting       Ending
     #: id  cyl  hd sec -  cyl  hd sec [     start -       size]
    ------------------------------------------------------------------------
     1: EE 1023 254  63 - 1023 254  63 [         1 -     409639] 
    Partition id ('0' to disable)  [0 - FF]: [EE] (? for help) AF
    fdisk:\*1> q
    Writing current MBR to disk.
    Device could not be accessed exclusively.
    A reboot will be needed for changes to take effect. OK? [n] y
    

  3. マルチブートのためにrEFItブートローダをインストール
    rEFIt Version 0.11ではMacBook Airをサポートします。rEFIt.mpkgアイコンをダブルクリックしてrEFItインストーラを起動します。次にターミナルを開いて、enable-always.shスクリプトを実行します。

    $ sudo /efi/refit/enable-always.sh
    Password:
    + sudo bless --folder /efi/refit --file /efi/refit/refit.efi --labelfile /efi/refit/refit.vollabel --setBoot
    
    rEFItは起動画面でOpenSolarisをLinuxアイコンで表示します。このアイコンは新しいアイコンで置き換えることができます。 os_linux.icns os_linux.icns を/efi/refit/icons/ディレクトリにコピーして下さい。

  4. OpenSolaris Live CDを起動してインストール
    起動時にoption(alt)キーを押しっぱなしにしてSuperDriveから起動します。OpenSolarisのインストールは問題なくできると思います。

設定

  • Wireless LAN
    ネットワーク接続は不安定ですが、内蔵wireless LAN (Broadcom BCM4328 802.11a/b/g/n)はndis-1.2を使って32-bitカーネルのみ動作します。64-bitドライバの場合はシステムがpanicします。

    1. unrarコマンドを使って<Mac OS X Install Disc 1>/Boot Camp/drivers/BroadcomXPInstaller.exeを解凍します。Vista用ドライバ(BroadcomInstaller.exe and BroadcomInstaler64.ext)はNDISで動作しません。
    2. ndisドライバをビルドします。"How to build a driver?"の手順に従って下さい。ドライバをビルドする前に、SUNWgcc, SUNWflexlex, SUNWonbld がインストールされていることを確認して下さい。
    3. ドライバを/kernel/drv/bcmndisと/kernel/misc/ndisapiにコピーしたら、add_drvコマンドでシステムにドライバを追加します。
      # add_drv -i '"pci14e4,4328"' bcmndis
      

  • ビデオ
    ビデオはCompiz Fusion以外はそのままで快適に動作します。Compizはdefect 1334でハングアップするので、新しいmesa 7.0.3バイナリが必要です。

    1. 新しいmesa 7.0.3バイナリとインストールスクリプトをダウンロードします:

    2. インストールスクリプトは/tmp/new-binariesにファイルがあることを前提にしているため、バイナリを/tmp/new-binariesに展開します。

      $ mkdir /tmp/new-binaries
      $ cd /tmp/new-binaries
      $ tar xfz ~/new-binaries-32.tar.gz
      $ tar xfz ~/new-binaries-64.tar.gz
      

    3. X11サーバを停止してからインストールスクリプトを実行します。

      $ pfexec svcadm disable gdm
      console login: username
      Password: xxxxxxxx
      $ pfexec sh ~/install-bin.csh
      $ pfexec /usr/sbin/svcadm enable gdm; exit
      

    4. Compizを有効にする
      システム->設定->外観の設定->Visual Effectsを開き、"Normal", "Extra", "Custom"のいずれかを選択します。"Keep settings"ダイアログで"Keep Settings"ボタンをクリックします。

    5. Compizをカスタマイズして白い帯を削除
      デスクトップ画面の上下に白い帯が表示されると思います。この帯はCompizをカスタマイズすると削除できます。システム->設定->CompizConfig設定マネージャ->Effects->Window Decorationを開き、"Shadow Radius"の値を8.0000から8.5000(またはそれ以上)に変更します。

  • 右マウスボタンのエミュレーション
    システム->設定->キーボード->アクセシビリティを開き、「キーボードからアクセシビリティの機能をON/OFFできるようにする」チェックボックスをクリックします。次に「マウス・キー」タブをクリックし、「キーボードでポインタを制御できるようにする」チェックボックスをクリックします。最後に.xmodmaprcと.xprofileファイルを作り、右の"command"キーを右マウスボタンに割り当てます。

    $ vi ~/.xmodmaprc
    keycode 116 = Pointer_Button3
    
    $ xmodmap ~/.xmodmaprc
    
    $ vi ~/.xprofile
    xmodmap ~/.xmodmaprc
    

  • 時間帯
    GMTとの時間差を調整するため、/etc/rtc_configからzone_lagエントリを削除します。

    # vi /etc/rtc_config
    zone_info=Japan
    zone_lag=-32400 <- この行を削除、またはコメントアウト
    

参照

投稿されたコメント:

コメント
  • HTML文法 不許可
About

sasanuma

Search

Archives
« 4月 2014
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
今日