Ways to access ntfs from linux
Click here to load reader
-
Upload
ashwin-pawar -
Category
Technology
-
view
1.745 -
download
1
description
Transcript of Ways to access ntfs from linux
Ways to acesss an NTFS volume from Linux
Ashwin Pawar [email protected]
Aug-2010
Three primary ways you can access an NTFS volume from Linux are:
First:
By Installing an Integrated ntfs-kernel-driver also called (LKM – Loadable Kernel
Module)
Download: http://fr2.rpmfind.net/linux/sourceforge/l/project/li/linux-ntfs/OldFiles/
Module name : kernel-module-ntfs-2.6.x.x
FUSE: NOT REQUIRED (As the support for ntfs is integrated in the kernel itself)
Once LKM is loaded, verify it via /proc/modules or /proc/filesystems
Advantage: Easy to Install & and allows for Read-only access on NTFS volumes.
Limitations: Only Read, No write
License: GPL/FREE Or open-source (You decide the labeling, I prefer the word
‘free’ )
AUTHOR:
Integrated kernel-ntfs-driver was written by Anton Altaparmakov.
Born in the Year, 1976
Second :
By Installing an 'ntfsmount' driver, which is part of the package (suite) called
'ntfsprogs'.
'ntfsmount' is a read/write userspace NTFS filesystem driver. Technically it connects
FUSE with ‘libntfs’. ntfsmount (part of the ntfsprogs) is a read/write userspace NTFS
driver. It provides a full read-write access on NTFS volumes, excluding writing
compressed and encrypted files, changing file ownership, access right.
Org: :Liux-ntfs.org
Website: http://www.linux-ntfs.org
Download: http://sourceforge.net/projects/linux-ntfs/files/
Module name: ntfsprogs-2.0.0.tar.gz
Download: http://packages.sw.be/ntfsprogs/ (Old files, In case you have an older kernel)
FUSE: REQUIRED (Linux 2.6.14 and up have FUSE support included in the official
kernel.That means, If you have a running kernel version of 2.6.14 or above, you need not
download FUSE separately)
FUSE Download: http://sourceforge.net/projects/fuse/files/fuse-2.X/
After you install FUSE and ntfsprogs, you can mount your volumes using ‘ntfsmount’
driver by typing:
# ntfsmount /dev/hda1 /mnt/
License: FREE/GPL
AUTHOR:
ntfsmount driver was written by Yura Pakhuchiy, with contributions from YuvalFledel
and Szabolcs Szakacsits.
Born in the Year, 1987
Third :
By Installing an ntfs-3g driver.
NTFS-3G is a stable, read/write NTFS driver for Linux, Mac OS X, FreeBSD, NetBSD,
OpenSolaris, QNX, Haiku, and other operating systems. It provides safe handling of the
Windows XP, Windows Server 2003, Windows 2000, Windows Vista, Windows Server
2008 and Windows 7 NTFS file systems.
Company: Tuxera
website: http://www.tuxera.com/ Or http://ntfs-3g.com is one and the same company.
Download: http://www.tuxera.com/community/ntfs-3g-download/
Module: ntfs-3g-2010.10.2.tgz (The latest stable version is ntfs-3g-2010.10.2, released
on October 3, 2010).
FUSE: REQUIRED (Linux 2.6.14 and up have FUSE support included in the official
kernel.That means, If you have a running kernel version of 2.6.14 or above, you need not
download FUSE separately)
Mounting:
You can mount your volumes by typing:
# ntfs-3g /dev/sda1 /mnt/windows
or
# mount -t ntfs-3g /dev/sda1 /mnt/windows
For more Info:
http://www.tuxera.com/community/ntfs-3g-manual/
License: FREE/GPL (Free version is basically a Community edition and is called
'NTFS-3g'). It is used widely in GNU/Linux distributions, including Fedora, Ubuntu, and
others.
Proprietary License: Paid. This a high-performance driver called 'Tuxera NTFS' which
is available commercially for embedded devices and can be bought from their online-
shop directly.
Reason behind free & Paid licensing :Well, to start with NTFS-3G was introduced by one
of the senior Linux NTFS developers, Szabolcs Szakacsits in July 2006 under the
GNU/Linux distributions. Later the developers of NTFS-3G formed a company, Tuxera
Ltd., to further develop and enhance the code. Hence, the free "community edition", and
the Paid "Tuxera NTFS" driver came into existance.
AUTHOR:
ntfs-3g driver was written by Szabolcs Szakacsits.
Born in the Year, 1970
FUSE (Filesystem in Userspace) :
FUSE (Filesystem in Userspace) is a simple interface for userspace programs to export a
virtual filesystem to the linux kernel. “In a typical developer's language, Its a OS plugin
to hijack file system calls to a user-mode file system” . FUSE also aims to provide a
secure method for non privileged users to create and mount their own filesystem
implementations.
FUSE is a free/GPL software. The FUSE system was originally part of A Virtual
Filesystem (AVFS), but has since split off into its own project on SourceForge.net.
Supported OS: FUSE is available for Linux, FreeBSD, NetBSD (as PUFFS),
OpenSolaris, and Mac OS X. It was officially merged into the mainstream Linux kernel
tree in kernel version 2.6.14.
Linux-2.4.X
Native port. FUSE versions 2.X up to 2.5.X support kernels 2.4.21 or later (although
FUSE 2.6.x userspace tools can be used in combination with a FUSE 2.5.x kernel
module).
Linux-2.6.X
Native port. New FUSE versions (2.6.X) support all 2.6 kernels.
Linux 2.6.14
With this version, FUSE support is included in the official kernel.
Source code download:
http://sourceforge.net/projects/fuse
Conclusion:
As a reader when you start searching or looking for information on google, chances are
you might come across various terminologies and sources of information on ntfs-kernel-
driver, ntfsmount and ntfs-3g driver, FUSE etc, which can be a little daunting if you are
new to this subject, especially if you find either too much of information or too less, and
this is exactly what happened with me and I decided to piece together all these different
sources of information in one place. With little over 4 days, I could piece it together.
In the following summary , I am trying my best to sum up the information on this vast
topic in an easy to understand and consumable form.
To set things straight, the first possible way I mentioned at the beginning is a kernel
integrated driver as the name suggests, it primarily works in the kernel space (In a literal
sense it means editing the kernel code) and allows for READ-ONLY access and that's
perhaps the biggest disadvantage of this driver, which of course led to a further
development and new technological in-roads. However, if you just needed to read the
data on your ntfs volume from Linux, this is just enough.
Next comes the 'ntfsprogs' and 'ntfs-3g' drivers, well these are the two different drivers
(projects) and both these ntfs drivers make use of what is called "FUSE (Filesystem In
Userspace) API". Infact, it’s the FUSE that made it possible. What FUSE does is, it
provides a frame-work that provides only a "bridge" to the actual kernel interfaces. What
that means is that -: It gives you an Userspace Filesystem platform without editing the
kernel code, in other words running filesystem code in userspace and NOT in kernel
space.
Disclaimer:
With this basic information in mind, I would encourage readers to do their own research
and tests before implementing any solution.
References
http://www.ntfs-3g.org/
http://fuse.sourceforge.net/
Note: Tested on redhat EL4