source: postlfs/filesystems/fuse3.xml@ 1fe05eb

11.3 12.0 12.1 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/soup3 xry111/xf86-video-removal
Last change on this file since 1fe05eb was 1fe05eb, checked in by Pierre Labastie <pierre.labastie@…>, 20 months ago

A round of removal of eol trailing spaces

  • Property mode set to 100644
File size: 8.5 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 fuse3-download-http "https://github.com/libfuse/libfuse/releases/download/fuse-&fuse3-version;/fuse-&fuse3-version;.tar.xz">
8 <!ENTITY fuse3-download-ftp " ">
9 <!ENTITY fuse3-md5sum "c9987e2c366655e2d3d9e1f7aaba3c0d">
10 <!ENTITY fuse3-size "3.4 MB">
11 <!ENTITY fuse3-buildsize "90 MB">
12 <!ENTITY fuse3-time "0.1 SBU (add 0.4 SBU for tests)">
13]>
14
15<sect1 id="fuse3" xreflabel="Fuse-&fuse3-version;">
16 <?dbhtml filename="fuse.html"?>
17
18 <sect1info>
19 <date>$Date$</date>
20 </sect1info>
21
22 <title>Fuse-&fuse3-version;</title>
23
24 <indexterm zone="fuse3">
25 <primary sortas="a-fuse-3">Fuse 3</primary>
26 </indexterm>
27
28 <sect2 role="package">
29 <title>Introduction to Fuse</title>
30
31 <para>
32 <application>FUSE</application> (Filesystem in Userspace) is a simple
33 interface for userspace programs to export a virtual filesystem to the
34 Linux kernel. <application>Fuse</application> also aims to provide a
35 secure method for non privileged users to create and mount their own
36 filesystem implementations.
37 </para>
38
39 &lfs112_checked;
40
41 <bridgehead renderas="sect3">Package Information</bridgehead>
42 <itemizedlist spacing="compact">
43 <listitem>
44 <para>
45 Download (HTTP): <ulink url="&fuse3-download-http;"/>
46 </para>
47 </listitem>
48 <listitem>
49 <para>
50 Download (FTP): <ulink url="&fuse3-download-ftp;"/>
51 </para>
52 </listitem>
53 <listitem>
54 <para>
55 Download MD5 sum: &fuse3-md5sum;
56 </para>
57 </listitem>
58 <listitem>
59 <para>
60 Download size: &fuse3-size;
61 </para>
62 </listitem>
63 <listitem>
64 <para>
65 Estimated disk space required: &fuse3-buildsize;
66 </para>
67 </listitem>
68 <listitem>
69 <para>
70 Estimated build time: &fuse3-time;
71 </para>
72 </listitem>
73 </itemizedlist>
74
75 <bridgehead renderas="sect3">Fuse Dependencies</bridgehead>
76 <bridgehead renderas="sect4">Optional</bridgehead>
77 <para role="optional">
78 <xref linkend="doxygen"/> (to rebuild the API documentation) and
79 <ulink url="https://pypi.org/project/pytest/">pytest</ulink> (required for tests)
80 </para>
81
82 <para condition="html" role="usernotes">
83 User Notes: <ulink url="&blfs-wiki;/fuse"/>
84 </para>
85 </sect2>
86
87 <sect2 role="kernel" id="fuse-kernel">
88 <title>Kernel Configuration</title>
89
90 <para>
91 Enable the following options in the kernel configuration and recompile the
92 kernel if necessary:
93 </para>
94
95<screen><literal>File systems ---&gt;
96 &lt;*/M&gt; FUSE (Filesystem in Userspace) support [CONFIG_FUSE_FS]</literal></screen>
97
98 <para>
99 Character devices in user space should be enabled too for running the
100 tests:
101 </para>
102
103<screen><literal>File systems ---&gt;
104 &lt;*/M&gt; FUSE (Filesystem in Userspace) support [CONFIG_FUSE_FS]
105 &lt;*/M&gt; Character device in Userspace support [CONFIG_CUSE]</literal></screen>
106
107 <indexterm zone="fuse3 fuse-kernel">
108 <primary sortas="d-fuse3">Fuse 3</primary>
109 </indexterm>
110 </sect2>
111
112 <sect2 role="installation">
113 <title>Installation of Fuse</title>
114
115 <para>
116 Install <application>Fuse</application> by running the following
117 commands:
118 </para>
119
120<screen><userinput>sed -i '/^udev/,$ s/^/#/' util/meson.build &amp;&amp;
121
122mkdir build &amp;&amp;
123cd build &amp;&amp;
124
125meson --prefix=/usr --buildtype=release .. &amp;&amp;
126ninja</userinput></screen>
127
128 <para>
129 The API documentation is included in the package, but
130 if you have <xref linkend="doxygen"/> installed and wish to rebuild
131 it, issue:
132 </para>
133
134<screen remap="doc"><userinput>pushd .. &amp;&amp;
135 doxygen doc/Doxyfile &amp;&amp;
136popd</userinput></screen>
137
138 <para>
139 To test the results, run (as the <systemitem
140 role="username">root</systemitem> user):
141 </para>
142
143 <!-- EDITORS NOTE: To view the results of the tests, look for
144 "short test summary info" at the end of your log. Below skipped tests,
145 you will see "X passed, X skipped, X failed (if any) in X seconds" -->
146
147<screen role="root"
148 remap="test"><userinput>python3 -m pytest test/</userinput></screen>
149
150 <para>
151 The <ulink url="https://pypi.org/project/pytest/">pytest</ulink>
152 Python module is required for the tests. One test named
153 <filename>test_cuse</filename> will fail if the
154 <parameter>CONFIG_CUSE</parameter> configuration item was not enabled
155 when the kernel was built.
156 One test named <filename>test_ctests.py</filename> will produce a
157 warning because a deprecated Python module is used.
158 </para>
159
160 <para>
161 Now, as the <systemitem class="username">root</systemitem> user:
162 </para>
163
164<screen role="root"><userinput>ninja install &amp;&amp;
165chmod u+s /usr/bin/fusermount3 &amp;&amp;
166
167cd .. &amp;&amp;
168install -v -m755 -d /usr/share/doc/fuse-&fuse3-version; &amp;&amp;
169install -v -m644 doc/{README.NFS,kernel.txt} \
170 /usr/share/doc/fuse-&fuse3-version; &amp;&amp;
171cp -Rv doc/html /usr/share/doc/fuse-&fuse3-version;</userinput></screen>
172
173 </sect2>
174
175 <sect2 role="commands">
176 <title>Command Explanations</title>
177
178 <para>
179 <command>sed ... util/meson.build</command>: This command disables the
180 installation of a boot script and udev rule that are not needed.
181 </para>
182
183 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
184 href="../../xincludes/meson-buildtype-release.xml"/>
185
186 </sect2>
187
188 <sect2 role="configuration" id="fuse-configuration">
189 <title>Configuring fuse</title>
190
191 <sect3 id="fuse-config">
192 <title>Config Files</title>
193
194 <para>
195 Some options regarding mount policy can be set in the file
196 <filename>/etc/fuse.conf</filename>. To install the file run the
197 following command as the <systemitem class="username">root</systemitem>
198 user:
199 </para>
200
201<screen role="root"><userinput>cat &gt; /etc/fuse.conf &lt;&lt; "EOF"
202<literal># Set the maximum number of FUSE mounts allowed to non-root users.
203# The default is 1000.
204#
205#mount_max = 1000
206
207# Allow non-root users to specify the 'allow_other' or 'allow_root'
208# mount options.
209#
210#user_allow_other</literal>
211EOF</userinput></screen>
212
213 <para>
214 Additional information about the meaning of the configuration
215 options are found in the man page.
216 </para>
217
218 </sect3>
219
220 </sect2>
221
222 <sect2 role="content">
223 <title>Contents</title>
224
225 <segmentedlist>
226 <segtitle>Installed Programs</segtitle>
227 <segtitle>Installed Libraries</segtitle>
228 <segtitle>Installed Directory</segtitle>
229
230 <seglistitem>
231 <seg>
232 fusermount3 and mount.fuse3
233 </seg>
234 <seg>
235 libfuse3.so
236 </seg>
237 <seg>
238 /usr/include/fuse3 and /usr/share/doc/fuse-&fuse3-version;
239 </seg>
240 </seglistitem>
241 </segmentedlist>
242
243 <variablelist>
244 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
245 <?dbfo list-presentation="list"?>
246 <?dbhtml list-presentation="table"?>
247
248 <varlistentry id="fusermount3">
249 <term><command>fusermount3</command></term>
250 <listitem>
251 <para>
252 is a suid root program to mount and unmount Fuse filesystems
253 </para>
254 <indexterm zone="fuse3 fusermount3">
255 <primary sortas="b-fusermount3">fusermount3</primary>
256 </indexterm>
257 </listitem>
258 </varlistentry>
259
260 <varlistentry id="mount.fuse3">
261 <term><command>mount.fuse3</command></term>
262 <listitem>
263 <para>
264 is the command <command>mount</command> calls to mount a Fuse
265 filesystem
266 </para>
267 <indexterm zone="fuse3 mount.fuse3">
268 <primary sortas="b-mount.fuse3">mount.fuse3</primary>
269 </indexterm>
270 </listitem>
271 </varlistentry>
272
273 <varlistentry id="libfuse3">
274 <term><filename class="libraryfile">libfuse3.so</filename></term>
275 <listitem>
276 <para>
277 contains the <application>FUSE</application> API functions
278 </para>
279 <indexterm zone="fuse3 libfuse3">
280 <primary sortas="c-libfuse3">libfuse3.so</primary>
281 </indexterm>
282 </listitem>
283 </varlistentry>
284
285 </variablelist>
286
287 </sect2>
288
289</sect1>
Note: See TracBrowser for help on using the repository browser.