Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

NTFS-3G plugin for reading "system compressed" files

License

NotificationsYou must be signed in to change notification settings

ebiggers/ntfs-3g-system-compression

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

System compression, also known as "Compact OS", is a Windows feature that allowsrarely modified files to be compressed using the XPRESS or LZX compressionformats. It is not built directly into NTFS but rather is implemented usingreparse points. This feature appeared in Windows 10 and it appears that manyWindows 10 systems have been using it by default.

This repository contains a plugin which enables the NTFS-3G FUSE driver totransparently read from system-compressed files. It must be built againstNTFS-3G version 2017.3.23 or later, since that was the first stable version toinclude support for reparse point plugins.

Currently, only reading is supported. Compressing an existing file may be doneby using the "compact" utility on Windows, with one of the options below("xpress4k" is the weakest and fastest, "lzx" is the strongest and slowest):

/exe:xpress4k/exe:xpress8k/exe:xpress16k/exe:lzx

Installation

First, either download and extract the latest release tarball fromhttps://github.com/ebiggers/ntfs-3g-system-compression/releases, or clone thegit repository. If you're building from the git repository, you'll need togenerate theconfigure script by runningautoreconf -i. This requiresautoconf, automake, libtool, and pkg-config.

The plugin can then be built by running./configure && make. The build systemmust be able to find the NTFS-3G library and headers as well as the FUSEheaders. Depending on the operating system, this may require that the"ntfs-3g-dev" and "libfuse-dev" (or similarly named) packages be installed.pkg-config must also be installed.

After compiling, runmake install to install the plugin to the NTFS-3G plugindirectory, which will be a subdirectory "ntfs-3g" of the system librarydirectory ($libdir). An example full path to the installed plugin is/usr/lib/ntfs-3g/ntfs-plugin-80000017.so. It may differ slightly on differentplatforms.make install will create the plugin directory if it does notalready exist.

Implementation note

The XPRESS and LZX compression formats used in system-compressed files areidentical to the formats used in Windows Imaging (WIM) archives. Therefore, forthe system compression plugin I borrowed the XPRESS and LZX decompressors I hadalready written for the wimlib project (https://wimlib.net/). I made someslight modifications for integration purposes, and I relicensed the files thatused the LGPLv3+ license to GPLv2+ for compatibility with NTFS-3G's license.

Notices

The NTFS-3G system compression plugin was written by Eric Biggers, withcontributions from Jean-Pierre André. You can contact the author atebiggers3@gmail.com.

This software may be redistributed and/or modified under the terms of the GNUGeneral Public License as published by the Free Software Foundation, eitherversion 2 of the License, or (at your option) any later version. There is NOWARRANY, to the extent permitted by law. See the COPYING file for details.

About

NTFS-3G plugin for reading "system compressed" files

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors2

  •  
  •  

Languages


[8]ページ先頭

©2009-2025 Movatter.jp