Home

技術系のメモと日々の雑感

Linux で NTFS に書き込み

ずいぶん長い間、Linux から NTFS に書き込みをするのは危ないと言われ続けているけど、現状はどうなのか実験してみることにした。(環境は CentOS 5.1)
【お約束】 ここに書いてある内容を試した結果、どのような問題が発生してもこちらでは一切責任は負えません。

NTFS を書き込み可でマウントするにはいくつか方法があるらしいけど、今回は ntfsprogs に含まれる ntfsmount を使うことにした。
あえて書くまでもないけど参考にしたのは以下のサイト。
http://www.linux-ntfs.org/ ※ntfsporgs のソースもこのサイトに置いてある
まず ntfsprogs の動作には前提として FUSE が必要らしいので以下のサイトからダウンロードして先に入れる。
http://fuse.sourceforge.net/

# cd /usr/local/src
# tar zxvf fuse-2.7.1.tar.gz
# cd fuse-2.7.1
# ./configure --prefix=/usr/local
# make
# make install


続いて ntfsprogs を入れる。

# cd /usr/local/src
# tar zxvf ntfsprogs-2.0.0.tar.gz
# cd ntfsprogs-2.0.0
# ./configure --prefix=/usr/local/ntfsprogs --enable-fuse-module --enable-ntfsmount
# make
# make install

configure では --enable-fuse-module と --enable-ntfsmount の両方を指定しないと make が通らないみたい。
・・・と言ってもトライ&エラーを繰り返しているうちに見付けただけなのでちゃんとした根拠はないんだけど。
これで環境ができたので実際にマウントしてみる。
(/dev/sda は NTFS パーティションを切った USB 接続の HDD)

# mkdir /mnt/win-hdd
# /usr/local/ntfsprogs/bin/ntfsmount /dev/sda1 /mnt/win-hdd

特にエラーは出なかったので問題なさそう。
mount で状態を確認すると

/dev/sda1 on /mnt/win-hdd type fuseblk(rw,nosuid,nodev,default_permissions,allow_other,blksize=4096,user=root)

何やら見慣れない表示になってるな。
それでは早速ディレクトリを作ってみる。

# cd /mnt/win-hdd
# mkdir sample1
# ls -al
合計 16
drwxrwxrwx 1 root root 4096 12月 17 21:26 .
drwxr-xr-x 3 root root 4096 12月 16 22:17 ..
-rw-rw-rw- 1 root root 1209 12月 16 22:11 Windowsで書いたファイル.txt
drwxrwxrwx 1 root root    0 12月 17 21:26 sample1

無事にディレクトリができた。
また、先に Windows で書いたファイルがあったのでそれも問題なく見えている。
次はファイルを書いてみる。

# cp /var/log/dmesg sample1
# ls -al sample1
合計 24
drwxrwxrwx 1 root root     0 12月 17 21:42 .
drwxrwxrwx 1 root root  4096 12月 17 21:37 ..
-rw-rw-rw- 1 root root 17951 12月 17 21:39 dmesg

こっちも無事に書けた。
もちろんファイルを編集したりしても平気だった。
ここまでくれば、あとは NTFS ということを意識する部分はまったくなかった。
ちなみにマウントしようとしたときに

fuse: device not found, try 'modprobe fuse' first

というメッセージが出て失敗することがあるけど、この場合は言われた通りに先に「modprobe fuse」を実行すればオッケー。
早く Microsoft から NTFS の仕様が公開されて、Linux で安全にマウントして使える日が来るといいなぁ。

この記事に対するトラックバック

この記事のトラックバックURL

-

管理人の承認後に表示されます

  • From: |
  • 2013/12/16(月) 06:39:53

-

管理人の承認後に表示されます

  • From: |
  • 2013/12/04(水) 22:39:59

-

管理人の承認後に表示されます

  • From: |
  • 2013/11/29(金) 05:26:07

-

管理人の承認後に表示されます

  • From: |
  • 2013/11/18(月) 17:16:06

-

管理人の承認後に表示されます

  • From: |
  • 2013/11/15(金) 05:37:59

-

管理人の承認後に表示されます

  • From: |
  • 2013/11/13(水) 06:15:49

-

管理人の承認後に表示されます

  • From: |
  • 2013/11/06(水) 17:35:20

-

管理人の承認後に表示されます

  • From: |
  • 2013/11/06(水) 10:43:17

-

管理人の承認後に表示されます

  • From: |
  • 2013/11/03(日) 06:49:52

-

管理人の承認後に表示されます

  • From: |
  • 2013/07/14(日) 05:53:10

この記事に対するコメント

この記事にコメントする

管理者にだけ表示を許可する