How to mount NTFS filesystem with read/write support on CentOS / RHEL linux
NTFS filesystem เป็น filesystem ของทาง windows ซึ่งโดยปกติแล้ว Linux ค่ายต่างๆ และ Mac OS X ต่างไม่ support file system ตัวนี้ แต่โชคยังดีที่ได้มีการพัฒนา ntfs-3g ขึ้นมา ซึ่งนำโดย Szabolcs Szakacsits ให้สามารถใช้งาน NTFS ได้ทั้งการ “อ่าน” และ “เขียน” ข้อมูลโดยไม่ต้อง compile ใหม่ และที่สำคัญมี version free ให้เราได้ใช้งานกันด้วย คือ “community edition” และสำหรับ version เสียตังค์(มั้ง) คือ proprietary version เรียกว่า “Tuxera NTFS”
สำหรับวิธีการทำให้ CentOS / RHEL Linux สามารถใช้งาน hard disk ที่มี file system แบบ NTFS ขั้นแรกสำหรับคนที่ไม่มี epel repo จะต้อง install epel repo ซะก่อน ซึ่งตัวอย่างด้านล่างเป็นตัวอย่างการ install epel repo สำหรับ RHEL 6 และ CentOS 6 สำหรับ CentOS และ RHEL version อื่นๆสามารถดู URL สำหรับการ download เพื่อไปติดตั้งได้ที่ RPM repository for RHEL and CentOS
[shell][root@ezylinux ~]# rpm -ivh http://download.fedora.redhat.com/pub/epel/6/x86_64/epel-release-6-5.noarch.rpm
Retrieving http://download.fedora.redhat.com/pub/epel/6/x86_64/epel-release-6-5.noarch.rpm
warning: /var/tmp/rpm-tmp.GCQQ4D: Header V3 RSA/SHA256 Signature, key ID 0608b895: NOKEY
Preparing… #################################### [100%]
1:epel-release #################################### [100%]
[/shell]
เมื่อ install epel repo เสร็จแล้วให้ใช้คำสั่ง yum install เพื่อติดตั้ง fuse-ntfs-3g ตามตัวอย่างด้านล่าง
[shell]
[root@ezylinux ~]# yum install fuse-ntfs-3g
Loaded plugins: refresh-packagekit, rhnplugin
This system is not registered with RHN.
Setting up Install Process
Resolving Dependencies
–> Running transaction check
—> Package ntfs-3g.x86_64 2:2011.4.12-3.el6 set to be updated
–> Finished Dependency Resolution
Dependencies Resolved
=========================================================================
Package Arch Version Repository Size
=========================================================================
Installing:
ntfs-3g x86_64 2:2011.4.12-3.el6 epel 247 k
Transaction Summary
=========================================================================
Install 1 Package(s)
Upgrade 0 Package(s)
Total download size: 247 k
Installed size: 624 k
Is this ok [y/N]: y
Downloading Packages:
ntfs-3g-2011.4.12-3.el6.x86_64.rpm | 247 kB 00:00
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Warning: RPMDB altered outside of yum.
Installing : ntfs-3g-2011.4.12-3.el6.x86_64 1/1
Installed:
ntfs-3g.x86_64 2:2011.4.12-3.el6
Complete!
[/shell]
เมื่อติดตั้งเสร็จแล้วก็สามารถใช้คำสั่ง mount.ntfs-3g เพื่อ mount NTFS filesystem มาใช้งานได้เลย จากตัวอย่างด้านล่าง เป็นการ mount /dev/sdb1 ไปที่ /ntfs
[shell][root@ezylinux ~]# mount.ntfs-3g /dev/sdb1 /ntfs/[/shell]
หลังจากรันคำสั่งข้างบนแล้วสามารถตรวจสอบว่า mount ได้สำเร็จหรือยังด้วยคำสั่ง mount ซึ่งจะเห็น /ntfs ถ้า mount ได้สำเร็จ
[shell][root@ezylinux ~]# mount
/dev/sda2 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")
/dev/sda1 on /boot type ext4 (rw)
/dev/sda5 on /home type ext4 (rw)
/dev/sdb1 on /ntfs type fuseblk (rw,allow_other,blksize=4096)
[/shell]
ส่วนถ้า mount ไม่สำเร็จให้ลองใช้คำสั่ง lsmod ดู ถ้าไม่พบข้อความประมาณ “fuse 66138 2” เหมือนตัวอย่างด้านล่าง ให้ลองใช้คำสั่ง modprobe แล้วลอง mount ใหม่อีกรอบ
[shell][root@ezylinux ~]# lsmod |grep fuse
fuse 66138 2[/shell]
ตัวอย่างคำสั่ง modprobe
[shell][root@ezylinux ~]# modprobe -l fuse[/shell]