source: postlfs/filesystems/ntfs-3g.xml@ 6716afc

12.0 12.1 gimp3 kea ken/TL2024 ken/tuningfonts lazarus lxqt plabs/newcss python3.11 rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/llvm18 xry111/xf86-video-removal
Last change on this file since 6716afc was 3733ce5, checked in by Pierre Labastie <pierre.labastie@…>, 16 months ago

Update kernel config for ntfs3 (in ntfs-3g)

The layout has changed. Current as of linux-6.2

  • Property mode set to 100644
File size: 17.1 KB
RevLine 
[574a402]1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY ntfs-3g-download-http
[687ce4b]8 "https://tuxera.com/opensource/ntfs-3g_ntfsprogs-&ntfs-3g-version;.tgz">
[574a402]9 <!ENTITY ntfs-3g-download-ftp " ">
[4227f0da]10 <!ENTITY ntfs-3g-md5sum "a038af61be7584b79f8922ff11244090">
[abf26df]11 <!ENTITY ntfs-3g-size "1.3 MB">
12 <!ENTITY ntfs-3g-buildsize "22 MB">
[c93bd07]13 <!ENTITY ntfs-3g-time "0.2 SBU">
[574a402]14]>
15
16<sect1 id="ntfs-3g" xreflabel="ntfs-3g-&ntfs-3g-version;">
17 <?dbhtml filename="ntfs-3g.html"?>
18
19
20 <title>ntfs-3g-&ntfs-3g-version;</title>
21
22 <indexterm zone="ntfs-3g">
23 <primary sortas="a-ntfs-3g">ntfs-3g</primary>
24 </indexterm>
25
26 <sect2 role="package">
27 <title>Introduction to Ntfs-3g</title>
28
[084c251]29 <note>
30 <para id='ntfs3-kernel'>
[fe619a6]31 A new read-write driver for NTFS, called NTFS3, has been added
32 into the Linux kernel since the 5.15 release. The performance of NTFS3
[084c251]33 is much better than ntfs-3g. To enable NTFS3, enable the following
34 options in the kernel configuration and recompile the kernel if
35 necessary:
36 </para>
37
38<screen><literal>File systems ---&gt;
[3733ce5]39 DOS/FAT/EXFAT/NT Filesystems ---&gt;
40 &lt;*/M&gt; NTFS Read-Write file system support [CONFIG_NTFS3_FS]</literal></screen>
[084c251]41
42 <indexterm zone="ntfs-3g ntfs3-kernel">
43 <primary sortas="d-ntfs3">NTFS read-write support in kernel</primary>
44 </indexterm>
45
46 <para>
[fe619a6]47 To ensure the <command>mount</command> command uses NTFS3 for
[084c251]48 ntfs partitions, create a wrapper script:
49 </para>
50
[6d237be]51<screen role="nodump"><userinput>cat &gt; /usr/sbin/mount.ntfs &lt;&lt; "EOF" &amp;&amp;
[084c251]52<literal>#!/bin/sh
53exec mount -t ntfs3 "$@"</literal>
54EOF
55chmod -v 755 /usr/sbin/mount.ntfs</userinput></screen>
56
57 <para>
58 With the kernel support available, ntfs-3g is only needed if you
59 need the utilities from it (for example, to create NTFS
60 filesystems).
61 </para>
62 </note>
63
[574a402]64 <para>
[154c9eb]65 The <application>Ntfs-3g</application> package contains a stable,
66 read-write open source driver for NTFS partitions. NTFS partitions are
[f3429309]67 used by most Microsoft operating systems. Ntfs-3g allows you to mount
[154c9eb]68 NTFS partitions in read-write mode from your Linux system. It uses the
[a0e08b2]69 FUSE kernel module to be able to implement NTFS support in userspace.
[f71807c2]70 The package also contains various utilities useful for manipulating NTFS
71 partitions.
[574a402]72 </para>
73
[15445ab]74 &lfs113_checked;
[574a402]75
76 <bridgehead renderas="sect3">Package Information</bridgehead>
77 <itemizedlist spacing="compact">
78 <listitem>
79 <para>
80 Download (HTTP): <ulink url="&ntfs-3g-download-http;"/>
81 </para>
82 </listitem>
83 <listitem>
84 <para>
85 Download (FTP): <ulink url="&ntfs-3g-download-ftp;"/>
86 </para>
87 </listitem>
88 <listitem>
89 <para>
90 Download MD5 sum: &ntfs-3g-md5sum;
91 </para>
92 </listitem>
93 <listitem>
94 <para>
95 Download size: &ntfs-3g-size;
96 </para>
97 </listitem>
98 <listitem>
99 <para>
100 Estimated disk space required: &ntfs-3g-buildsize;
101 </para>
102 </listitem>
103 <listitem>
104 <para>
105 Estimated build time: &ntfs-3g-time;
106 </para>
107 </listitem>
108 </itemizedlist>
109
110 <bridgehead renderas="sect3">Ntfs-3g Dependencies</bridgehead>
111
[1647d338]112 <bridgehead renderas="sect4">Optional</bridgehead>
113 <para role="optional">
[8558044]114 <ulink url="https://github.com/libfuse/libfuse">fuse 2.x</ulink>
[a770b0e]115 (this disables user mounts)
[574a402]116 </para>
117
118 <para condition="html" role="usernotes">
119 User Notes: <ulink url="&blfs-wiki;/ntfs-3g"/>
120 </para>
121 </sect2>
122
123 <sect2 role="kernel" id="ntfs-3g-kernel">
124 <title>Kernel Configuration</title>
125
126 <para>
127 Enable the following options in the kernel configuration and recompile the
128 kernel if necessary:
129 </para>
130
131<screen><literal>File systems ---&gt;
[421128a1]132 &lt;*/M&gt; FUSE (Filesystem in Userspace) support [CONFIG_FUSE_FS]</literal></screen>
[574a402]133
134 <indexterm zone="ntfs-3g ntfs-3g-kernel">
135 <primary sortas="d-ntfs-3g">ntfs-3g</primary>
136 </indexterm>
137 </sect2>
138
139 <sect2 role="installation">
140 <title>Installation of Ntfs-3g</title>
141
[abf26df]142<!--
[a740c95]143 <para>
144 First, adapt <application>Ntfs-3g</application> to the merged-/usr
145 changes:
146 </para>
147
148<screen><userinput remap="pre">sed -i 's|/sbin|$(rootsbindir)|' {ntfsprogs,src}/Makefile.in</userinput></screen>
[abf26df]149-->
[a740c95]150
[574a402]151 <para>
152 Install <application>Ntfs-3g</application> by running the following
153 commands:
154 </para>
155
[f71807c2]156<screen><userinput>./configure --prefix=/usr \
157 --disable-static \
[ec0f2a5]158 --with-fuse=internal \
159 --docdir=/usr/share/doc/ntfs-3g-&ntfs-3g-version; &amp;&amp;
[574a402]160make</userinput></screen>
161
162 <para>
163 This package does not come with a test suite.
164 </para>
165
166 <para>
167 Now, as the <systemitem class="username">root</systemitem> user:
168 </para>
169
[084c251]170<screen role="root"><userinput>make install &amp;&amp;</userinput></screen>
[574a402]171
172 <para>
[084c251]173 It's recommended to use the in-kernel NTFS3 driver for mounting
174 NTFS filesystems, instead of ntfs-3g (see the note at the start of
175 this page). However, if you want to use ntfs-3g to mount the NTFS
[4227f0da]176 filesystems anyway, create a symlink for the <command>mount</command>
[084c251]177 command:
[574a402]178 </para>
179
[084c251]180<screen role="nodump"><userinput>ln -sv ../bin/ntfs-3g /usr/sbin/mount.ntfs &amp;&amp;
181ln -sv ntfs-3g.8 /usr/share/man/man8/mount.ntfs.8</userinput></screen>
[a98acfe7]182
[574a402]183 </sect2>
184
185 <sect2 role="commands">
186 <title>Command Explanations</title>
187
188 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
189 href="../../xincludes/static-libraries.xml"/>
[fe9ab241]190<!--
[15b96a83]191 <para>
192 <command>patch -Np1 -i ...</command>: This command applies a security
193 patch from upstream to fix ntfs-3g on systems that use setuid for the
194 executable.
195 </para>
[fe9ab241]196-->
[15b96a83]197
[574a402]198 <para>
[1647d338]199 <parameter>--with-fuse=internal</parameter>: This switch dynamically
200 forces <application>ntfs-3g</application> to use an internal copy of the
201 <application>fuse-2.x</application> library. This is required if you wish
202 to allow users to mount NTFS partitions.
[154c9eb]203 </para>
[f3429309]204
[154c9eb]205 <para>
[f3429309]206 <option>--disable-ntfsprogs</option>: Disables installation of various
[154c9eb]207 utilities used to manipulate NTFS partitions.
[574a402]208 </para>
209
210 <para>
[40fb4cb1]211 <command>chmod -v 4755 /usr/bin/ntfs-3g</command>: Making mount.ntfs setuid
[a98acfe7]212 root allows non root users to mount NTFS partitions.
[574a402]213 </para>
[a98acfe7]214
[574a402]215 </sect2>
216
217 <sect2 role="configuration">
218 <title>Using Ntfs-3g</title>
219
220 <para>
221 To mount a Windows partition at boot time, put a line like this in
222 /etc/fstab:
223 </para>
224
225 <screen>/dev/sda1 /mnt/windows auto defaults 0 0</screen>
226
227 <para>
228 To allow users to mount a usb stick with an NTFS filesystem on it, put a
[51c76b17]229 line similar to this (change sdc1 to whatever a usb stick would be on your
[574a402]230 system) in /etc/fstab:
231 </para>
232
233 <screen>/dev/sdc1 /mnt/usb auto user,noauto,umask=0,utf8 0 0</screen>
234
235 <para>
[f3429309]236 In order for a user to be able to mount the usb stick, they will need
237 to be able to write to <filename class="directory">/mnt/usb</filename>,
[51c76b17]238 so as the <systemitem class="username">root</systemitem> user:
[574a402]239 </para>
240
[2e98a372]241<screen role="nodump"><userinput>chmod -v 777 /mnt/usb</userinput></screen>
[a98acfe7]242
[574a402]243 </sect2>
244
245 <sect2 role="content">
246 <title>Contents</title>
247
248 <segmentedlist>
249 <segtitle>Installed Programs</segtitle>
[a98acfe7]250 <segtitle>Installed Library</segtitle>
251 <segtitle>Installed Directories</segtitle>
[574a402]252
253 <seglistitem>
254 <seg>
[a98acfe7]255 lowntfs-3g, mkfs.ntfs, mkntfs, mount.lowntfs-3g,
256 mount.ntfs, mount.ntfs-3g, ntfs-3g, ntfs-3g.probe,
[abf26df]257 ntfscat, ntfsclone, ntfscluster, ntfscmp, ntfscp, ntfsfix,
[a98acfe7]258 ntfsinfo, ntfslabel, ntfsls, ntfsresize and
259 ntfsundelete
260 </seg>
261 <seg>
262 libntfs-3g.so
263 </seg>
264 <seg>
265 /usr/include/ntfs-3g and
266 /usr/share/doc/ntfs-3g
[574a402]267 </seg>
268 </seglistitem>
269 </segmentedlist>
270
271 <variablelist>
272 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
273 <?dbfo list-presentation="list"?>
274 <?dbhtml list-presentation="table"?>
275
276 <varlistentry id="lowntfs-3g">
277 <term><command>lowntfs-3g</command></term>
278 <listitem>
279 <para>
[4c24eb0a]280 is similar to ntfs-3g but uses the Fuse low-level interface
[574a402]281 </para>
282 <indexterm zone="ntfs-3g lowntfs-3g">
283 <primary sortas="b-lowntfs-3g">lowntfs-3g</primary>
284 </indexterm>
285 </listitem>
286 </varlistentry>
287
288 <varlistentry id="mkfs.ntfs">
289 <term><command>mkfs.ntfs</command></term>
290 <listitem>
291 <para>
[4c24eb0a]292 is a symlink to mkntfs
[574a402]293 </para>
294 <indexterm zone="ntfs-3g mkfs.ntfs">
295 <primary sortas="b-mkfs.ntfs">mkfs.ntfs</primary>
296 </indexterm>
297 </listitem>
298 </varlistentry>
299
300 <varlistentry id="mkntfs">
301 <term><command>mkntfs</command></term>
302 <listitem>
303 <para>
[4c24eb0a]304 creates an NTFS file system
[574a402]305 </para>
306 <indexterm zone="ntfs-3g mkntfs">
307 <primary sortas="b-mkntfs">mkntfs</primary>
308 </indexterm>
309 </listitem>
310 </varlistentry>
311
312 <varlistentry id="mount.lowntfs-3g">
313 <term><command>mount.lowntfs-3g</command></term>
314 <listitem>
315 <para>
[4c24eb0a]316 is a symlink to lowntfs-3g
[574a402]317 </para>
318 <indexterm zone="ntfs-3g mount.lowntfs-3g">
319 <primary sortas="b-mount.lowntfs-3g">mount.lowntfs-3g</primary>
320 </indexterm>
321 </listitem>
322 </varlistentry>
323
324 <varlistentry id="mount.ntfs">
325 <term><command>mount.ntfs</command></term>
326 <listitem>
327 <para>
[4c24eb0a]328 mounts an NTFS filesystem
[574a402]329 </para>
330 <indexterm zone="ntfs-3g mount.ntfs">
331 <primary sortas="b-mount.ntfs">mount.ntfs</primary>
332 </indexterm>
333 </listitem>
334 </varlistentry>
335
336 <varlistentry id="mount.ntfs-3g">
337 <term><command>mount.ntfs-3g</command></term>
338 <listitem>
339 <para>
[4c24eb0a]340 is a symbolic link to ntfs-3g
[574a402]341 </para>
342 <indexterm zone="ntfs-3g mount.ntfs-3g">
343 <primary sortas="b-mount.ntfs-3g">mount.ntfs-3g</primary>
344 </indexterm>
345 </listitem>
346 </varlistentry>
347
348 <varlistentry id="ntfs-3g-prog">
349 <term><command>ntfs-3g</command></term>
350 <listitem>
351 <para>
352 is an NTFS driver, which can create, remove, rename, move
[51c76b17]353 files, directories, hard links, and streams. It can also read and write
[574a402]354 files, including streams, sparse files and transparently compressed
[51c76b17]355 files. It can also handle special files like symbolic links, devices, and
[574a402]356 FIFOs; moreover it provides standard management of file ownership
[4c24eb0a]357 and permissions, including POSIX ACLs
[574a402]358 </para>
359 <indexterm zone="ntfs-3g ntfs-3g-prog">
360 <primary sortas="b-ntfs-3g">ntfs-3g</primary>
361 </indexterm>
362 </listitem>
363 </varlistentry>
364
365 <varlistentry id="ntfs-3g.probe">
366 <term><command>ntfs-3g.probe</command></term>
367 <listitem>
368 <para>
369 tests if an NTFS volume is mountable read only or read-write, and
370 exits with a status value accordingly. The volume can be a block
[4c24eb0a]371 device or image file
[574a402]372 </para>
373 <indexterm zone="ntfs-3g ntfs-3g.probe">
374 <primary sortas="b-ntfs-3g.probe">ntfs-3g.probe</primary>
375 </indexterm>
376 </listitem>
377 </varlistentry>
378
[abf26df]379<!-- Not present in 2021.8.22
[574a402]380 <varlistentry id="ntfs-3g.secaudit">
381 <term><command>ntfs-3g.secaudit</command></term>
382 <listitem>
383 <para>
[4c24eb0a]384 audits NTFS Security Data
[574a402]385 </para>
386 <indexterm zone="ntfs-3g ntfs-3g.secaudit">
387 <primary sortas="b-ntfs-3g.secaudit">ntfs-3g.secaudit</primary>
388 </indexterm>
389 </listitem>
390 </varlistentry>
391
392 <varlistentry id="ntfs-3g.usermap">
393 <term><command>ntfs-3g.usermap</command></term>
394 <listitem>
395 <para>
396 creates the file defining the mapping of Windows accounts to Linux
397 logins for users who owns files which should be visible from both
[4c24eb0a]398 Windows and Linux
[574a402]399 </para>
400 <indexterm zone="ntfs-3g ntfs-3g.usermap">
401 <primary sortas="b-ntfs-3g.usermap">ntfs-3g.usermap</primary>
402 </indexterm>
403 </listitem>
404 </varlistentry>
[abf26df]405-->
[574a402]406
407 <varlistentry id="ntfscluster">
408 <term><command>ntfscluster</command></term>
409 <listitem>
410 <para>
411 identifies files in a specified region of an NTFS volume
412 </para>
413 <indexterm zone="ntfs-3g ntfscluster">
414 <primary sortas="b-ntfscluster">ntfscluster</primary>
415 </indexterm>
416 </listitem>
417 </varlistentry>
418
419 <varlistentry id="ntfscp">
420 <term><command>ntfscp</command></term>
421 <listitem>
422 <para>
[4c24eb0a]423 copies a file to an NTFS volume
[574a402]424 </para>
425 <indexterm zone="ntfs-3g ntfscp">
426 <primary sortas="b-ntfscp">ntfscp</primary>
427 </indexterm>
428 </listitem>
429 </varlistentry>
430
431 <varlistentry id="ntfsfix">
432 <term><command>ntfsfix</command></term>
433 <listitem>
434 <para>
[4c24eb0a]435 fixes common errors and forces Windows to check an NTFS partition
[574a402]436 </para>
437 <indexterm zone="ntfs-3g ntfsfix">
438 <primary sortas="b-ntfsfix">ntfsfix</primary>
439 </indexterm>
440 </listitem>
441 </varlistentry>
442
443 <varlistentry id="ntfsls">
444 <term><command>ntfsls</command></term>
445 <listitem>
446 <para>
[4c24eb0a]447 lists directory contents on an NTFS filesystem
[574a402]448 </para>
449 <indexterm zone="ntfs-3g ntfsls">
450 <primary sortas="b-ntfsls">ntfsls</primary>
451 </indexterm>
452 </listitem>
453 </varlistentry>
454
455 <varlistentry id="ntfscat">
456 <term><command>ntfscat</command></term>
457 <listitem>
458 <para>
[4c24eb0a]459 prints NTFS files and streams on the standard output
[574a402]460 </para>
461 <indexterm zone="ntfs-3g ntfscat">
462 <primary sortas="b-ntfscat">ntfscat</primary>
463 </indexterm>
464 </listitem>
465 </varlistentry>
466
467 <varlistentry id="ntfsclone">
468 <term><command>ntfsclone</command></term>
469 <listitem>
470 <para>
[4c24eb0a]471 clones an NTFS filesystem
[574a402]472 </para>
473 <indexterm zone="ntfs-3g ntfsclone">
474 <primary sortas="b-ntfsclone">ntfsclone</primary>
475 </indexterm>
476 </listitem>
477 </varlistentry>
478
479 <varlistentry id="ntfscmp">
480 <term><command>ntfscmp</command></term>
481 <listitem>
482 <para>
[abf26df]483 compares two NTFS filesystems and shows the differences
[574a402]484 </para>
485 <indexterm zone="ntfs-3g ntfscmp">
486 <primary sortas="b-ntfscmp">ntfscmp</primary>
487 </indexterm>
488 </listitem>
489 </varlistentry>
490
491 <varlistentry id="ntfsinfo">
492 <term><command>ntfsinfo</command></term>
493 <listitem>
494 <para>
[4c24eb0a]495 dumps a file's attributes
[574a402]496 </para>
497 <indexterm zone="ntfs-3g ntfsinfo">
498 <primary sortas="b-ntfsinfo">ntfsinfo</primary>
499 </indexterm>
500 </listitem>
501 </varlistentry>
502
503 <varlistentry id="ntfslabel">
504 <term><command>ntfslabel</command></term>
505 <listitem>
506 <para>
[4c24eb0a]507 displays or changes the label on an ntfs file system
[574a402]508 </para>
509 <indexterm zone="ntfs-3g ntfslabel">
510 <primary sortas="b-ntfslabel">ntfslabel</primary>
511 </indexterm>
512 </listitem>
513 </varlistentry>
514
515 <varlistentry id="ntfsresize">
516 <term><command>ntfsresize</command></term>
517 <listitem>
518 <para>
[4c24eb0a]519 resizes an NTFS filesystem without data loss
[574a402]520 </para>
521 <indexterm zone="ntfs-3g ntfsresize">
522 <primary sortas="b-ntfsresize">ntfsresize</primary>
523 </indexterm>
524 </listitem>
525 </varlistentry>
526
527 <varlistentry id="ntfsundelete">
528 <term><command>ntfsundelete</command></term>
529 <listitem>
530 <para>
[4c24eb0a]531 recovers a deleted file from an NTFS volume
[574a402]532 </para>
533 <indexterm zone="ntfs-3g ntfsundelete">
534 <primary sortas="b-ntfsundelete">ntfsundelete</primary>
535 </indexterm>
536 </listitem>
537 </varlistentry>
538
539 <varlistentry id="libntfs-3g">
540 <term><filename class="libraryfile">libntfs-3g.so</filename></term>
541 <listitem>
542 <para>
[4c24eb0a]543 contains the Ntfs-3g API functions
[574a402]544 </para>
545 <indexterm zone="ntfs-3g libntfs-3g">
546 <primary sortas="c-libntfs-3g">libntfs-3g.so</primary>
547 </indexterm>
548 </listitem>
549 </varlistentry>
550 </variablelist>
551 </sect2>
[4c24eb0a]552
[574a402]553</sect1>
Note: See TracBrowser for help on using the repository browser.