Paragon Technologie GmbH Leo-Wohleb-Straße 8 • 79098 Freiburg, Germany Tel. +49-761-59018-201 • Fax +49-761-59018-130 Website: www.paragon-software.com E-mail: sales@paragon.software.com Paragon NTFS&HFS+ for Linux 9.5 User manual Copyright© 1994-2017 Paragon Technologie GmbH. All rights reserved.
User manual 2 Abstract This document covers implementation of NTFS and HFS+ file systems support in Linux operating systems using Paragon NTFS&HFS+ file system driver. Basic installation procedures are described. Detailed mount options description is given. File system creation (formatting) and checking utilities are described. List of supported NTFS/HFS+ features is given with limitations imposed by Linux. There are also advanced troubleshooting section.
Paragon NTFS&HFS+ for Linux 9.5 Contents 1 Introduction 1.1 Historical review . . . . . . 1.2 Paragon UFSD technology 1.3 How UFSD works on Linux 1.4 Key features . . . . . . . . . . . . . 4 4 4 5 5 2 System requirements 2.1 Hardware requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Software requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 7 7 3 Installation 3.1 Shipment . . . . . 3.2 Components . . . 3.
User manual 8.2 8.3 8.4 8.5 8.6 8.7 4 Main functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Using the sysdump utility to collect both platform system information and metadata Changing the name of output archive . . . . . . . . . . . . . . . . . . . . . . . . . . Output file description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Delivering collected data to Paragon . . . . . . . . . . . . . . . . . . . . . . . . . . Privacy policy . . . . . . .
1 1.1 Paragon NTFS&HFS+ for Linux 9.5 Introduction Historical review Historically, different operating systems supported different file systems. Sharing files among different platforms was not an easy task. For instance, documents that were created in Windows and are stored on NTFS partitions may be inaccessible under Linux, because Linux does not include full support for NTFS. For example, open-source NTFS-3G NTFS driver does not support random write access to compressed files.
User manual 6 Note: NTFS, HFS+ and exFAT drivers for Linux as well as utilities were written using UFSD SDK. 1.3 How UFSD works on Linux Modern operating systems are based on the concept of Installable File System drivers (IFS). User simply needs to provide an operating system with the proper file system driver to work with the file system in usual manner. Paragon NTFS&HFS+ for Linux 9.5 includes NTFS and HFS+ drivers for Linux environment. Once appropriate components of Paragon NTFS&HFS+ for Linux 9.
Paragon NTFS&HFS+ for Linux 9.5 • Sparse files support. HFS+ specific features: • Both case sensitive and case instensitive types of HFS+ file system are supported; • During file copy operation (using cp command) on Linux only ‘data’ fork is copied; • Support replay native HFS+ journal. NTFS compatibility information: File system version Comments NTFS version 1.2 Originates from Microsoft Windows NT 4.0 NTFS version 3.0 Originates from Microsoft Windows 2000 NTFS version 3.
User manual 2 8 System requirements This topic highlights requirements to hardware and software that may be used to run Paragon NTFS&HFS+ for Linux 9.5. 2.1 Hardware requirements Minimum hardware requirements: • Processor: Intel Pentium 300 MHz and higher, or compatible; • both 32- and 64-bit CPUs are supported; • 16MB of RAM. Due to unique technology NTFS&HFS+ for Linux drivers have low system requirements.
Paragon NTFS&HFS+ for Linux 9.5 Development Environment A development environment is required to compile Linux drivers and utilities. Please verify that these tools are all functional. The easiest way is to choose the developer toolkit when installing Linux.
User manual 3 10 Installation This section describes workflows related to installing and using Paragon NTFS&HFS+ for Linux driver. 3.1 Shipment The setup files for each product of the family are provided as the downloadable TGZ archives, which can be downloaded from the company site. 3.
Paragon NTFS&HFS+ for Linux 9.5 Unpacking Setup Files The setup files of the Linux-based version of the NTFS & HFS+ for Linux are provided in the form of a gzip archive. The archive should be copied to the hard disk and decompressed. For example: For the NTFS & HFS+ for Linux driver and utilities: • create separate folder: $ mkdir /usr/tmp/ufsd • change the current directory to the new one $ cd /usr/tmp/ufsd • use tar utility to unpack initial archive $ tar -xf /path/to/the/initial/archive/ufsd\_*.tar.
User manual 12 $ sudo mount -t ufsd . 3.4 Uninstalling driver To completely remove the drivers and the utilities from the current Kernel, one should dismount all NTFS/HFS+ partitions mounted with the driver, uninstall the drivers and unload binary modules from the Kernel. NTFS&HFS+ for Linux provides tools for the drivers/utilities uninstall automation. The assistant script uninstall.sh completely removes the drivers/utilities from the system. Using the UNINSTALL.
4 Paragon NTFS&HFS+ for Linux 9.5 Using The Driver After building and installing Paragon NTFS&HFS+ for Linux 9.5 driver, it can be automatically loaded at the system startup. The driver allows to mount supported partitions and provides access to their whole contents. 4.1 Getting started The goal of this section is to help system engineers to quickly find out how to use the product. It describes general approach to mounting partitions using UFSD file system driver and helps to avoid common issues.
User manual 14 dmesg | tail or so In that case more information can be obtained using the following command: # dmesg | tail | grep ufsd [ 369.844741] ufsd: volume is dirty and "force" flag is not set Lines related to UFSD driver start with ’ufsd:’ prefix.
4.4 Paragon NTFS&HFS+ for Linux 9.5 GPT issues Some Linux Kernels do not behave correctly when there is EFI partition on GPT-partitioned devices. This is most often the case with HDDs partitioned using MacOS Disk Utility. This leads to seemingly wrong operation of UFSD driver(s) that refuse to mount partition. In that case fdisk may report that there is only one EFI partition on the device, ignoring some or all of the following NTFS and/or HFS+ partition(s).
User manual 5 16 Mount options This section describes mount options for mounting supported file system partitions. 5.1 Mount options SYNOPSYS mount -t ufsd [-o options] device mount_point Option iocharset or nls NTFS HFS+ Expected behavior and examples + + -o iocharset=NAME1[,iocharset=NAME2] -o nls=NAME1[,nls=NAME2] -o codepage=NAME1[,codepage=NAME2] The NTFS/HFS+ file systems store all file/directory names in Unicode format (UTF-16), which can represent any character from any language.
Paragon NTFS&HFS+ for Linux 9.5 Option noatime NTFS HFS+ Expected behavior and examples + + -o noatime All files and directories will not update their last access time attribute if a NTFS/HFS+ partition is mounted with this parameter. This option can speed up file system operation. uid + + -o uid=USERID By default all existed files on a mounted NTFS/HFS+ volume are owned by root, while created files are owned by the user. Specifying the uid parameter you can set an owner of files.
User manual Option bestcompr 18 NTFS HFS+ Expected behavior and examples + - -o bestcompr Instructs the driver to use highest compression level when writing compressed files. High CPU-load. sparse + - -o sparse Create new files as “sparse”. This feature allows creating holes inside new created files (avoids filling unwritten space with zeroes). This option is not recommended in case NTFS partition is used for BitTorrent downloads. force + + -o force Not recommended for use.
Paragon NTFS&HFS+ for Linux 9.5 Option user_xattr NTFS HFS+ Expected behavior and examples + + -o user_xattr Support for extended attributes. Effective if supported by the Kernel. Since driver version 9.4.4, this mount option is considered obsolete and it’s functionality is enabled by default in UFSD driver. sync + + -o sync All file system operations will be done synchronously. When used, UFSD driver performance may be decreased.
User manual 6 20 Additional Utilities Additional utilities for Paragon NTFS&HFS+ for Linux 9.5 provide the ability to check integrity and create NTFS/HFS+ volumes on block devices from your Linux OS. Additional utilities for Paragon NTFS&HFS+ for Linux 9.5 were developed with Paragon UFSD SDK. 6.1 ufsd utility ufsd utility is the single file system utility binary, which is included into the package since Paragon NTFS&HFS+ for Linux version 9.4.3. Synopsis ufsd [utility [arguments]...
Paragon NTFS&HFS+ for Linux 9.5 -fs:hfs Treat target volume as HFS+ -f Fix errors on the disk -a Perform checks only if ‘dirty’ flag is set -b:size Override default block (sector) size. Usage of default settings are strongly recommended. The ’-b’ parameter can use following values: 512, 1024, 2048, 4096. -m:size Set a limit for memory usage during file system check. Usage of this parameter may lower file system check performance.
User manual 22 Synopsis mkntfs [options] device E.g.: ’mkntfs -f /dev/sdb1’ Options -v:label Specify volume label. -c Files created on the new volume will be compressed by default. -a:size Override the default allocation unit size. Default settings are strongly recommended for general use. NTFS supports 512, 1024, 2048, 4096, 8192, 16K, 32K, 64K. File compression is not supported for allocation unit size above 4096. -b:size Override the default block (sector) size.
Paragon NTFS&HFS+ for Linux 9.5 Description mkntfs is a standalone utility that allows to format NTFS partitions under Linux. It is used to create a NTFS 1.2, 3.0, 3.1 (Windows NT 4.0/2000/XP/2003/Vista/7/8.1/10) file system on adevice (usually a disk partition). Notes: 1. mkntfs doesn’t change the MBR (Master Boot Record) when formatting a partition. Therefore, most of Linux commands (like fdisk -l) will be unable to determine that partition’s files system was changed to NTFS. 2. Since version 9.4.
User manual 24 Description chkntfs creates and displays a status report about a NTFS file system. chkntfs also lists and corrects errors on the disk, if any (-f flag must be specified). Notes: 1. when --no-orphans option is used, real orphan files will be deleted. Without this option chkntfs restores real orphan files to found.XXX folders. 2. Since version 9.4.3 this tool is actually a hardlink to the ufsd utility.
Paragon NTFS&HFS+ for Linux 9.5 -verbose Explain what is being done. -nopercents Do not print percents during format process. -version Show the version and exit. Description mkhfs is a standalone utility that allows to format HFS+ partitions under Linux. It is used to create an HFS+ file system on a device (usually a disk partition). Note: Since version 9.4.3 this tool is actually a hardlink to the ufsd utility.
User manual 26 Description chkhfs creates and displays a status report about a HFS+ file system. chkhfs also lists and corrects errors on the disk, if any (-f flag must be specified). Note: Since version 9.4.3 this tool is actually a hardlink to the ufsd utility. In order to make sure that the files are not taking unnecessary space, it is advised to unpack provided archive on the target platform, or create hardlinks to the ufsd utility manually.
7 Paragon NTFS&HFS+ for Linux 9.5 Troubleshooting This section highlights troubleshooting processes. 7.1 Troubleshooting processes Step 1. Consult Documentation Please consult documentation to make sure that encountered behavior is not by design, with special attention given to the part related to binary module installation, testing and troubleshooting as well as to section on Hardware requirements and Software requirements. Please also review Mount troubleshooting and Using The Driver subsection.
User manual 7.2 28 Mount troubleshooting Use our mount troubleshooting diagram for faster mount issue resolution. 7.3 The install.sh script can’t find kernel sources 1. Read Software requirements section, make sure all tools are functional. For more information, please read kernel documentation. 2. Linux Kernel must be configured correctly. 3. Make sure that you have kernel sources, for example, in the /usr/src/linux-x.x.xx directory, where x.x.xx is your kernel version (for example, 4.4.9).
Paragon NTFS&HFS+ for Linux 9.5 4. Create a symbolic link from the /usr/src/linux-x.x.xx directory to /usr/src/linux. To create the link type ls -s /usr/src/linux-$(uname-) /usr/src/linux 5. Make sure that you have the config-x.x.xx file, for the booted Linux kernel, in the /boot directory. If you haven’t the config-x.x.xx file then type ls -s /usr/src/linux-$(uname-r)/.config /boot/config-$(uname-r) to create a symbolic link to the config file.
User manual 30 4. If they don’t match, please restore Kernel configuration or recompile kernel anew (advanced). 7.7 ufsd module: create_module: operation is not permitted That means you must have root privilege to load driver. 7.8 insmod: a module named as ufsd already exists 1. Make sure that you use the same version of GCC compiler that was used for kernel compilation. 2.
7.11 Paragon NTFS&HFS+ for Linux 9.5 Hardware issues Sometimes storage issues are caused by a faulty hardware. Hardware issues can be classified by their place of origin: 1. storage device (HDD, SSD, USB flash drive, SD card, etc.) 2. target platform (hardware board which utilizes the UFSD driver) 3. data medium (e.g. USB cable) Often this kind of issues can be identified based on the system log output (e.g. dmesg).
User manual 8 8.1 32 Sysdump utility Introduction In case Paragon team requires additional information on the test storage device and/or test platform itself for the issue troubleshooting with specific NTFS/HFS+ volume(s), the sysdump utility can be used to capture very compact images of volumes with file system inconsistencies. Additionally it could be used to collect test platform system information: storage device summary, Kernel version, loaded UFSD driver version and so on.
Paragon NTFS&HFS+ for Linux 9.5 # ./sysdump -s /dev/sdc1 Scanning NTFS... Added 13 files/dirs from $Extend Recognized as NTFS. Dumping "/dev/sdc1" (465.76 Gb) ... Dump finished. File size 1248334848 bytes (including tail) Collecting system information... System information was saved to /home/UFSD_utilites/i686 ,→.3.13.0.20141105.tar 8.4 . Changing the name of output archive Name of the output archive can be changed by using the additional ’-o’ parameter and adding new file name. For example: # .
User manual 34 /proc/cpuinfo, /proc/meminfo and others). The resulted volume metadata image includes only file system metadata and risk of leaking sensitive data when using sysdump utility is minimized. Nevertheless, collected information is also covered by the mutual Non-disclosure agreement and couldn’t be forwarded to any third party.
9 Paragon NTFS&HFS+ for Linux 9.5 UFSD driver compatibility This section describes file system features supported by Paragon NTFS&HFS+ for Linux 9.5 driver, respectively. 9.1 NTFS features Compressed files Reading and writing compressed files is fully supported in both sequential and random orders. Encrypted files Encrypted files are read encrypted. During copy operation, file data streams will be copied encrypted with loss of decryption capability.
User manual 10 10.1 36 Frequently Asked Questions What are ’minor errors’ reported by chkntfs utility? Most of information about files (times, sizes, attributes) in NTFS is duplicated and triplicated. Minor error means that copies does not match original. E.g. "latime" means last access time. The native chkdsk from Microsoft does not show these mismatches and fixes it silently (if /f is specified) — see http://technet.microsoft.com/en-us/library/cc959914.aspx.
4096 182879943 181590430 The volume 10.2 Paragon NTFS&HFS+ for Linux 9.5 bytes in each allocation unit total allocation units on volume allocation units available on volume /dev/sda2 contains minor error(s). Warnings on Windows7/Vista when NTFS HDD is reconnected from Linux After NTFS volume previously operated by Paragon NTFS&HFS+ for Linux 9.5 driver is attached to Windows Vista/Windows 7 machine, warnings are displayed on the screen.
User manual 38 After checking is completed, the following summary window is displayed: After user clicks ’Details’, the window is expanded and more detailed information is displayed to the user: In case there are no errors, the following information is displayed: Paragon Technologie GmbH Leo-Wohleb-Straße 8, 79098 Freiburg, Germany
10.3 Paragon NTFS&HFS+ for Linux 9.5 Recently changed file has its modification time a few hours ahead of or behind the current system time. Why? This offset occurs due to the fact that NTFS stores file times as UTC time (in contrast to FAT that stores local time) and the system might not have time zone setting that can be read by C library and then used to convert file times reported by Kernel to local time.
User manual 40 (with its local time zone set to UTC+8), the file’s modification time will be reported 8 hours ahead of current time (assuming that current time is the same on the Linux system and Windows PC). There is ’bias’ mount option (see Mount options subsection) that allows to work around the issue on systems that do not have time zone setting readable by C standard library (first introduced in version 8.1.023).
10.6 Paragon NTFS&HFS+ for Linux 9.5 Why a lot of memory is used for volume mounting? Let us describe what’s going on when UFSD driver mounts volumes. First of all, the driver must read file system boot record, and after verifying it, it must also read some metadata from the mounted volume, namely, parts of $Mft and the entire $Bitmap metafile. For example, if the volume has $Bitmap of 74 MB, the driver has to read not less than 74MB to mount it.