source: postlfs/filesystems/btrfs-progs.xml@ b50ec75c

11.3 12.0 12.1 gimp3 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/llvm18 xry111/xf86-video-removal
Last change on this file since b50ec75c was c2453e6, checked in by Pierre Labastie <pierre.labastie@…>, 22 months ago

Merge branch 'trunk' into plabs/python-mods

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