source: postlfs/filesystems/ntfs-3g.xml@ 15b96a83

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 15b96a83 was 15b96a83, checked in by Douglas R. Reno <renodr@…>, 7 years ago

Add ntfs-3g security patch

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@18259 af4574ff-66df-0310-9fd7-8a98e5e911e0

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