« MacPortsでApache2+SquirrelMail | トップページ | MacBookの内蔵HDを250GBに交換 »

MacPortsでMacFUSE + NTFS-3g

以前のエントリ「Mac OS XからNTFSパーティションを読み書きする - MacFUSE + NTFS-3G」には、検索エンジンから非常に多くの訪問者が来られています。それにも関わらず、Paulさんのバイナリリリースはストップしたままです。

個人的にはMac OS XからNTFSの読み書きする状況はほとんどありませんが、上記ページのヒット率を見るとBoot Campを使ってMacにWindowsをインストールしている方が非常に多いのではないかと思います。

そこで、MacFUSENTFS-3gMacPortsからインストールする手順を以下で紹介します。残念ながらMacPortsからこれらをインストールしても、PaulさんのバイナリのようなNTFSパーティションのオートマウントは実現できません(mountコマンドによる手動マウント作業が必要になります)。NTFSパーティションのオートマウントはPaulさん非公開中のMacFUSE Toolsによって実現されていたためです。しかしながら、MacPortsでMacFUSEとNTFS-3gをパッケージ管理することで、これらのパッケージを常に最新のリリースに保つことが容易になります。

現在、MacPortsからインストール可能な最新のバージョンは、MacFUSEが0.4.0、NTFS-3gが1.710です。

以前にインストールしていたMacFUSEとNTFS-3gのアンインストール

もし、以前にMacPorts以外のバイナリリリースをインストールしていたのであれば、まずこれらをアンインストールします。最初に、NTFS-3gとMacFUSE Toolsのアンインストールです。

$ sudo /usr/libexec/rmpkg "NTFS-3G" "MacFUSE Tools"
Removing NTFS-3G...
Removing MacFUSE Tools...

次に、MacFUSEのアンインストールです。

$ sudo /System/Library/Filesystems/fusefs.fs/uninstall-macfuse-core.sh
Removing file: '//./Library/Extensions/fusefs.kext/Contents/Info.plist'
            :
Removing tree: '//Library/Receipts/MacFUSE Core.pkg'

以上で、MacFUSE、MacFUSE Tools、NTFS-3gのアンインストールが完了しました。

MacPortsによるMacFUSEとNTFS-3gのインストール

MacFUSEは、MacPortsではfusefsというパッケージ名になっていますので、portコマンドにこれを指定してインストールします。

$ sudo port -v install fusefs

portコマンドの実行だけでは、MacFUSEのkextモジュールが有効にならないようですので、kextloadコマンドを使って手動で有効にします。

$ sudo kextload /System/Library/Filesystems/fusefs.fs/Support/fusefs.kext
kextload: /System/Library/Filesystems/fusefs.fs/Support/fusefs.kext loaded successfully

kextstatコマンドで、正しくロードされているか確認します。

$ kextstat|grep fusefs
   119    0 0x4335e000 0x10000    0xf000     com.google.filesystems.fusefs (0.4.0) <6 5 4 3 2>

続いてNTFS-3gのインストールです。

$ sudo port -v install ntfs-3g

以上でインストールは完了です。

NTFSパーティションのマウント

NTFSパーティションを読み書きモードでマウントするには、mountコマンドを使用する必要があります。

まず、NTFSパーティションのディスクをMacに繋ぐと、初めはMac OS Xの標準のドライバでマウントされます。この状態で、NTFSパーティションのデバイス名を調べるため、以下のようにdiskutilコマンドを実行します。

$ diskutil list
/dev/disk0
   #:                   type name               size      identifier
   0:  GUID_partition_scheme                    *149.1 GB disk0
   1:                    EFI                    200.0 MB  disk0s1
   2:              Apple_HFS Macintosh HD       128.9 GB  disk0s2
   3:   Microsoft Basic Data                    19.8 GB   disk0s3
/dev/disk1
   #:                   type name               size      identifier
   0: FDisk_partition_scheme                    *149.1 GB disk1
   1:           Windows_NTFS NTFS160G           149.0 GB  disk1s1

上記の表示から、disk1s1が目的のNTFSパーティションであることが分かります。ここで、Finderの画面、または以下のコマンドを実行して該当のパーティションをアンマウントします。以下の例では、ディスクラベルは"NTFS160G"である場合です。

$ sudo diskutil unmount /Volumes/NTFS160G
Volume /Volumes/NTFS160G unmounted

次に、マウント用のディレクトリを/Volumesディレクトリに作成し、mountコマンドを実行して、今度はNTFS-3gドライバを使用して再マウントします。

$ mkdir /Volumes/NTFS160G
$ sudo mount -t ntfs-3g -o ping_diskarb,volname="NTFS160G" /dev/disk1s1 /Volumes/NTFS160G

以上です。

|

« MacPortsでApache2+SquirrelMail | トップページ | MacBookの内蔵HDを250GBに交換 »

mac」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/181807/16168119

この記事へのトラックバック一覧です: MacPortsでMacFUSE + NTFS-3g:

« MacPortsでApache2+SquirrelMail | トップページ | MacBookの内蔵HDを250GBに交換 »