2010年4月1日 星期四

在linux中加入ntfs的檔案格式

1.如何可以讀到NTFS的檔案呢?
ANS..
在編kernel時要加入NTFS的選項
File systems --->DOS/FAT/NT Filesystems --->
中的項目要選擇。

如果有選進去在系統中應該可以找到ntfs的檔案系統
/mnt/usb # cat /proc/filesystems | grep ntfs
ntfs
這樣就可以mount ntfs的檔案系統了!雖然可以看但是會出現
mkdir: cannot create directory '11111': Operation not permitted
無法寫入的問題。


軟體下載點

http://www.tuxera.com/community/ntfs-3g-download/


於是參考一下出於
http://www.linuxconfig.org/How_to_mount_partition_with_ntfs_file_system_and_read_write_access


How to mount partition with ntfs file system and read write access
Article Index
1. Introduction
2. Mount NTFS file system with read only access
2.1. NTFS kernel support
2.2. Identifying partition with NTFS file system
2.3. Mount NTFS partition
3. Mount NTFS file system with read write access
3.1. Install addition software
3.1.1. Fuse Install
3.1.2. ntfs-3g install
3.2. Mount ntfs partition with read write access


1. Introduction

Purpose of this article is to provide to reader step by step guide, how to mount partition with NTFS file system on the Linux operating system. This article consists of two parts:

  • mount NTFS file system read only access
  • mount NTFS file system with read write access

2. Mount NTFS file system with read only access

2.1. NTFS kernel support

Majority of current Linux distributions supports NTFS file system out of the box. To be more specific, support for NTFS file system is more feature of Linux kernel modules rather than Linux distributions. First verify if we have NTFS modules installed on our system.

ls /lib/modules/2.6.18-5-686/kernel/fs/ | grep ntfs 

check for NTFS kernel support


NTFS module is presented. Let's identify NTFS partition.

2.2. Identifying partition with NTFS file system

One simple way to identify NTFS partition is:

fdisk -l | grep NTFS 

Identifying partition with NTFS file system

There it is: /dev/sdb1

2.3. Mount NTFS partition

First create a mount point:

mkdir /mnt/ntfs 

Then simply use mount command to mount it:

mount -t ntfs /dev/sdb1 /mnt/ntfs 

Mount NTFS partition using linux
Now we can access NTFS partition and its files with read write access.

3. Mount NTFS file system with read write access

Mounting NTFS file system with read write access permissions is a bit more complicated. This involves installation of addition software such as fuse and ntfs-3g. In both cases you probably need to use your package management tool such as yum, apt-get, synaptic etc.. and install it from your standard distribution repository. Check for packages ntfs-3g and fuse. We take the other path which consists of manual compilation and installation fuse and ntfs-3g from source code.

3.1. Install addition software

3.1.1. Fuse Install

Download source code from: http://fuse.sourceforge.net/

wget http://easynews.dl.sourceforge.net/sourceforge/fuse/fuse-2.7.1.tar.gz 

Compile and install fuse source code:
Extract source file:

tar xzf fuse-2.7.1.tar.gz 

Compile and install

cd fuse-2.7.1
./configure --exec-prefix=/; make; make install

Compile and install fuse source code

3.1.2. ntfs-3g install

Download source code from: http://www.ntfs-3g.org/index.html#download

wget http://www.ntfs-3g.org/ntfs-3g-1.1120.tgz 

Extract source file:

tar xzf ntfs-3g-1.1120.tgz 

Compile and install ntfs-3g source code
NOTE: Make sure that you have pkg-config package installed, otherwise you get this error message:

checking for pkg-config... no
checking for FUSE_MODULE... configure: error: FUSE >= 2.6.0 was not found. Either it's not fully
installed (e.g. fuse, fuse-utils, libfuse, libfuse2, libfuse-dev, etc packages) or files from an old
version are still present. See FUSE at http://fuse.sf.net/
cd ntfs-3g-1.1120
./configure; make; make install

Compile and install ntfs-3g source code

3.2. Mount ntfs partition with read write access

mount -t ntfs-3g /dev/sdb1 /mnt/ntfs/ 

NOTE: ntfs-3g recommends to have at least kernel version 2.6.20 and higher.

linuxconfig.org~# mount -t ntfs-3g /dev/sdb1 /mnt/ntfs/
WARNING: Deficient Linux kernel detected. Some driver features are
not available (swap file on NTFS, boot from NTFS by LILO), and
unmount is not safe unless it's made sure the ntfs-3g process
naturally terminates after calling 'umount'. If you wish this
message to disappear then you should upgrade to at least kernel
version 2.6.20, or request help from your distribution to fix
the kernel problem. The below web page has more information:
http://ntfs-3g.org/support.html#fuse26