source: postlfs/filesystems/btrfs-progs.xml@ 8388aa7

11.0 ken/refactor-virt lazarus qt5new trunk xry111/git-date xry111/git-date-for-trunk xry111/git-date-test
Last change on this file since 8388aa7 was 8388aa7, checked in by Pierre Labastie <pieere@…>, 8 months ago

Updates:

  • btrfs-progs-5.11
  • jasper-2.0.26
  • qpdf-10.3.0
  • unrar-6.0.4

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

  • Property mode set to 100644
File size: 11.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 btrfs-progs-download-http "&kernel-dl;/linux/kernel/people/kdave/btrfs-progs/btrfs-progs-v&btrfs-progs-version;.tar.xz">
8 <!ENTITY btrfs-progs-download-ftp " ">
9 <!ENTITY btrfs-progs-md5sum "1caf3677fc4ea245ff5aab363a0b956f">
10 <!ENTITY btrfs-progs-size "2.1 MB">
11 <!ENTITY btrfs-progs-buildsize "92 MB (add 2.7 GB for tests)">
12 <!ENTITY btrfs-progs-time "0.2 SBU (add 45-90 SBU for tests, depending on disk speed)">
13]>
14
15<sect1 id="btrfs-progs" xreflabel="btrfs-progs-&btrfs-progs-version;">
16 <?dbhtml filename="btrfs-progs.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>btrfs-progs-&btrfs-progs-version;</title>
24
25 <indexterm zone="btrfs-progs">
26 <primary sortas="a-btrfs-progs">btrfs-progs</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to btrfs-progs</title>
31
32 <para>
33 The <application>btrfs-progs</application> package contains
34 administration and debugging tools for the B-tree file system (btrfs).
35 </para>
36
37 &lfs101_checked;
38
39 <bridgehead renderas="sect3">Package Information</bridgehead>
40 <itemizedlist spacing="compact">
41 <listitem>
42 <para>
43 Download (HTTP): <ulink url="&btrfs-progs-download-http;"/>
44 </para>
45 </listitem>
46 <listitem>
47 <para>
48 Download (FTP): <ulink url="&btrfs-progs-download-ftp;"/>
49 </para>
50 </listitem>
51 <listitem>
52 <para>
53 Download MD5 sum: &btrfs-progs-md5sum;
54 </para>
55 </listitem>
56 <listitem>
57 <para>
58 Download size: &btrfs-progs-size;
59 </para>
60 </listitem>
61 <listitem>
62 <para>
63 Estimated disk space required: &btrfs-progs-buildsize;
64 </para>
65 </listitem>
66 <listitem>
67 <para>
68 Estimated build time: &btrfs-progs-time;
69 </para>
70 </listitem>
71 </itemizedlist>
72
73 <bridgehead renderas="sect3">Btrfs-progs Dependencies</bridgehead>
74
75 <bridgehead renderas="sect4">Required</bridgehead>
76 <para role="required">
77 <xref linkend="lzo"/>
78 </para>
79
80 <bridgehead renderas="sect4">Recommended</bridgehead>
81 <para role="recommended">
82 <xref linkend="asciidoc"/> and
83 <xref linkend="xmlto"/> (both required to generate man pages)
84 </para>
85
86 <bridgehead renderas="sect4">Optional</bridgehead>
87 <para role="optional">
88 <xref linkend="lvm2"/> (<command>dmsetup</command> is used in tests) and
89 <xref linkend="reiserfs"/> (for tests)
90 </para>
91
92 <para condition="html" role="usernotes">User Notes:
93 <ulink url="&blfs-wiki;/btrfs-progs"/></para>
94
95 </sect2>
96
97 <sect2 role="kernel" id="btrfs-progs-kernel">
98 <title>Kernel Configuration</title>
99
100 <para>
101 Enable the following option in the kernel configuration
102 and recompile the kernel:
103 </para>
104
105<screen><literal>File systems ---&gt;
106 &lt;*/M&gt; Btrfs filesystem support [CONFIG_BTRFS_FS]</literal></screen>
107
108 <para>
109 In addition to the above and to the options required for
110 <xref linkend="lvm2"/> and <xref linkend="reiserfs"/>, the following
111 options must be enabled for running tests:
112 </para>
113
114<screen><literal>File systems ---&gt;
115 [*] Btrfs POSIX Access Control Lists [CONFIG_BTRFS_FS_POSIX_ACL]
116 [*] ReiserFS extended attributes [CONFIG_REISERFS_FS_XATTR]
117 [*] ReiserFS POSIX Access Control Lists [CONFIG_REISERFS_FS_POSIX_ACL]</literal></screen>
118
119 <indexterm zone="btrfs-progs btrfs-progs-kernel">
120 <primary sortas="d-btrfs-progs">BTRFS Programs</primary>
121 </indexterm>
122
123 </sect2>
124
125 <sect2 role="installation">
126 <title>Installation of btrfs-progs</title>
127
128 <para>
129 Install <application>btrfs-progs</application> by running the following
130 commands:
131 </para>
132
133<screen><userinput>./configure --prefix=/usr \
134 --bindir=/bin \
135 --libdir=/lib \
136 --with-pkgconfigdir=/usr/lib/pkgconfig &amp;&amp;
137make</userinput></screen>
138
139 <note>
140 <para>
141 Some tests require grep built with perl regular expressions. To
142 obtain this, rebuild grep with the LFS Chapter 8 instructions after
143 installing <xref linkend="pcre"/>.
144 </para>
145 </note>
146<!-- Keeping this for now, but it seems that calling "make test" is
147 simpler and does the same thing
148 <para>
149 Before running tests, build a support program
150 and disable several that fail:
151 </para>
152
153<screen remap="test"><userinput>make fssum</userinput></screen>
154
155 <para>
156 To test the results, issue (as the <systemitem
157 class="username">root</systemitem> user):
158 </para>
159
160<screen role="root" remap="test"><userinput>pushd tests
161 ./fsck-tests.sh
162 ./mkfs-tests.sh
163 ./cli-tests.sh
164 ./convert-tests.sh
165 ./misc-tests.sh
166 ./fuzz-tests.sh
167popd</userinput></screen>
168-->
169
170<!-- Template for failed test removal:-->
171 <para>
172 To test the results, first disable some tests that fail and prevent
173 the other ones to run:
174 </para>
175
176<screen remap="test"><userinput>mv tests/fsck-tests/012-leaf-corruption/test.sh{,.broken}
177mv tests/misc-tests/046-seed-multi-mount/test.sh{,.broken}
178mv tests/convert-tests/019-ext4-copy-timestamps/test.sh{,.broken}</userinput></screen>
179<!-- Substitute your test failure with the one above. -->
180 <para>
181 To test the results, run (as the
182 <systemitem class="username">root</systemitem>):
183 </para>
184
185<screen role="root" remap="test"><userinput>make -j1 -k test</userinput></screen>
186
187 <note>
188 <para>
189 If the above mentioned kernel options are not enabled, some tests
190 fail, and prevent all the remaining tests to run, because the test
191 disk image is not cleanly unmounted.
192 </para>
193 </note>
194
195 <para>
196 Two tests fail for unknown reasons in the
197 <command>test-libbtrfsutil</command> section. Tests take a very long
198 time, and it may be interesting to run only part of them. Running tests
199 only in one directory can be done with
200 <command>make TEST=&lt;DIR&gt; test</command>.
201 </para>
202
203 <para>
204 Install the package as the <systemitem
205 class="username">root</systemitem> user:
206 </para>
207
208<screen role="root"><userinput>make install &amp;&amp;
209
210ln -sfv ../../lib/$(readlink /lib/libbtrfs.so) /usr/lib/libbtrfs.so &amp;&amp;
211ln -sfv ../../lib/$(readlink /lib/libbtrfsutil.so) /usr/lib/libbtrfsutil.so &amp;&amp;
212rm -fv /lib/libbtrfs.{a,so} /lib/libbtrfsutil.{a,so} &amp;&amp;
213mv -v /bin/{mkfs,fsck}.btrfs /sbin</userinput></screen>
214
215 </sect2>
216
217 <sect2 role="commands">
218 <title>Command Explanations</title>
219
220 <para>
221 <option>--disable-documentation</option>: This option
222 is needed if the recommended dependencies are not installed.
223 </para>
224<!-- not anymore in the commands
225 <para>
226 <command>mv tests/{cli,convert,misc,fuzz}-tests/ ...</command>: Disables
227 tests that fail and prevent tests from completing.
228 </para>
229-->
230 <para>
231 <command>ln -s ... /usr/lib/libbtrfs.so</command>: Creates a
232 symbolic link in the directory where it is expected.
233 </para>
234
235 <para>
236 <command>rm /lib/libbtrfs.{a,so}</command>: Removes unneeded
237 library entries.
238 </para>
239
240 </sect2>
241
242 <sect2 role="content">
243 <title>Contents</title>
244
245 <segmentedlist>
246 <segtitle>Installed Programs</segtitle>
247 <segtitle>Installed Libraries</segtitle>
248 <segtitle>Installed Directories</segtitle>
249
250 <seglistitem>
251 <seg>
252 btrfs,
253 btrfs-convert,
254 btrfs-find-root,
255 btrfs-image,
256 btrfs-map-logical,
257 btrfs-select-super,
258 btrfsck (link to btrfs),
259 btrfstune,
260 fsck.btrfs, and
261 mkfs.btrfs
262 </seg>
263
264 <seg>
265 libbtrfs.so and
266 libbtrfsutil.so
267 </seg>
268
269 <seg>/usr/include/btrfs</seg>
270 </seglistitem>
271 </segmentedlist>
272
273 <variablelist>
274 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
275 <?dbfo list-presentation="list"?>
276 <?dbhtml list-presentation="table"?>
277
278 <varlistentry id="btrfs-prog">
279 <term><command>btrfs</command></term>
280 <listitem>
281 <para>
282 is the main interface into btrfs filesystem operations
283 </para>
284 <indexterm zone="btrfs-progs btrfs-prog">
285 <primary sortas="b-btrfs">btrfs</primary>
286 </indexterm>
287 </listitem>
288 </varlistentry>
289
290 <varlistentry id="btrfs-convert">
291 <term><command>btrfs-convert</command></term>
292 <listitem>
293 <para>
294 converts from an ext2/3/4 filesystem to btrfs
295 </para>
296 <indexterm zone="btrfs-progs btrfs-convert">
297 <primary sortas="b-btrfs-convert">btrfs-convert</primary>
298 </indexterm>
299 </listitem>
300 </varlistentry>
301
302 <varlistentry id="btrfs-find-root">
303 <term><command>btrfs-find-root</command></term>
304 <listitem>
305 <para>
306 is a filter to find btrfs root
307 </para>
308 <indexterm zone="btrfs-progs btrfs-find-root">
309 <primary sortas="b-btrfs-find-root">btrfs-find-root</primary>
310 </indexterm>
311 </listitem>
312 </varlistentry>
313
314 <varlistentry id="btrfs-map-logical">
315 <term><command>btrfs-map-logical</command></term>
316 <listitem>
317 <para>
318 maps btrfs logical extent to physical extent
319 </para>
320 <indexterm zone="btrfs-progs btrfs-map-logical">
321 <primary sortas="b-btrfs-map-logical">btrfs-map-logical</primary>
322 </indexterm>
323 </listitem>
324 </varlistentry>
325
326 <varlistentry id="btrfs-select-super">
327 <term><command>btrfs-select-super</command></term>
328 <listitem>
329 <para>
330 overwrites the primary superblock with a backup copy
331 </para>
332 <indexterm zone="btrfs-progs btrfs-select-super">
333 <primary sortas="b-btrfs-select-super">btrfs-select-super</primary>
334 </indexterm>
335 </listitem>
336 </varlistentry>
337
338 <varlistentry id="btrfstune">
339 <term><command>btrfstune</command></term>
340 <listitem>
341 <para>
342 tunes various filesystem parameters
343 </para>
344 <indexterm zone="btrfs-progs btrfstune">
345 <primary sortas="b-btrfstune">btrfstune</primary>
346 </indexterm>
347 </listitem>
348 </varlistentry>
349
350 <varlistentry id="fsck.btrfs">
351 <term><command>fsck.btrfs</command></term>
352 <listitem>
353 <para>
354 does nothing, but is present for consistency with fstab
355 </para>
356 <indexterm zone="btrfs-progs fsck.btrfs">
357 <primary sortas="b-fsck.btrfs">fsck.btrfs</primary>
358 </indexterm>
359 </listitem>
360 </varlistentry>
361
362 <varlistentry id="mkfs.btrfs">
363 <term><command>mkfs.btrfs</command></term>
364 <listitem>
365 <para>
366 creates a btrfs file system
367 </para>
368 <indexterm zone="btrfs-progs mkfs.btrfs">
369 <primary sortas="b-mkfs.btrfs">mkfs.btrfs</primary>
370 </indexterm>
371 </listitem>
372 </varlistentry>
373
374 </variablelist>
375
376 </sect2>
377
378</sect1>
Note: See TracBrowser for help on using the repository browser.