Ways to access ntfs from linux


Published on

How to access Linux from windows OS

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Ways to access ntfs from linux

  1. 1. Ways to acesss an NTFS volume from Linux Ashwin Pawar ashwinwriter@gmail.com 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
  2. 2. 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
  3. 3. 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.
  4. 4. 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
  5. 5. 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