source: postlfs/filesystems/fuse.xml@ 9847c28

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 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 nosym 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 9847c28 was 166fa172, checked in by Bruce Dubbs <bdubbs@…>, 8 years ago

Just tags

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

  • Property mode set to 100644
File size: 9.6 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 fuse-download-http "https://github.com/libfuse/libfuse/releases/download/fuse_&fuse-download-version;/fuse-&fuse-version;.tar.gz">
8 <!ENTITY fuse-download-ftp " ">
9 <!ENTITY fuse-md5sum "c901b77a1c4584c7ac6c2b67c0713f2b">
10 <!ENTITY fuse-size "552 KB">
11 <!ENTITY fuse-buildsize "8.2 MB (9.8 MB with API documentation)">
12 <!ENTITY fuse-time "0.1 SBU">
13]>
14
15<sect1 id="fuse" xreflabel="Fuse-&fuse-version;">
16 <?dbhtml filename="fuse.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>Fuse-&fuse-version;</title>
24
25 <indexterm zone="fuse">
26 <primary sortas="a-Fuse">Fuse</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to Fuse</title>
31
32 <para>
33 <application>FUSE</application> (Filesystem in Userspace) is a simple
34 interface for userspace programs to export a virtual filesystem to the
35 Linux kernel. <application>Fuse</application> also aims to provide a
36 secure method for non privileged users to create and mount their own
37 filesystem implementations.
38 </para>
39
40 &lfs79_checked;
41
42 <bridgehead renderas="sect3">Package Information</bridgehead>
43 <itemizedlist spacing="compact">
44 <listitem>
45 <para>
46 Download (HTTP): <ulink url="&fuse-download-http;"/>
47 </para>
48 </listitem>
49 <listitem>
50 <para>
51 Download (FTP): <ulink url="&fuse-download-ftp;"/>
52 </para>
53 </listitem>
54 <listitem>
55 <para>
56 Download MD5 sum: &fuse-md5sum;
57 </para>
58 </listitem>
59 <listitem>
60 <para>
61 Download size: &fuse-size;
62 </para>
63 </listitem>
64 <listitem>
65 <para>
66 Estimated disk space required: &fuse-buildsize;
67 </para>
68 </listitem>
69 <listitem>
70 <para>
71 Estimated build time: &fuse-time;
72 </para>
73 </listitem>
74 </itemizedlist>
75
76 <bridgehead renderas="sect3">Fuse Dependencies</bridgehead>
77
78 <bridgehead renderas="sect4">Optional</bridgehead>
79 <para role="optional">
80 <xref linkend="doxygen"/> (to build the API documentation)
81 </para>
82
83 <para condition="html" role="usernotes">
84 User Notes: <ulink url="&blfs-wiki;/fuse"/>
85 </para>
86 </sect2>
87
88 <sect2 role="kernel" id="fuse-kernel">
89 <title>Kernel Configuration</title>
90
91 <para>
92 Enable the following options in the kernel configuration and recompile the
93 kernel if necessary:
94 </para>
95
96<screen><literal>File systems ---&gt;
97 &lt;*/M&gt; FUSE (Filesystem in Userspace) support [CONFIG_FUSE_FS]</literal></screen>
98
99 <indexterm zone="fuse fuse-kernel">
100 <primary sortas="d-fuse">fuse</primary>
101 </indexterm>
102 </sect2>
103
104 <sect2 role="installation">
105 <title>Installation of Fuse</title>
106
107 <note>
108 <para>
109 After the <command>configure</command> script has finished you will
110 see a warning shown below. You can safely disregard this warning.
111 </para>
112
113<screen><computeroutput>configure: WARNING:
114******************************************************************
115* Please install util-linux version 2.18 or later which supports *
116* --fake and --no-canonicalize options in mount and umount *
117******************************************************************</computeroutput></screen>
118 </note>
119
120 <para>
121 Install <application>Fuse</application> by running the following
122 commands:
123 </para>
124
125<screen><userinput>sed -i 's/2:9:4/2:9:5/' lib/Makefile.in &amp;&amp;
126
127./configure --prefix=/usr \
128 --disable-static \
129 INIT_D_PATH=/tmp/init.d &amp;&amp;
130
131make</userinput></screen>
132
133 <para>
134 If you have <xref linkend="doxygen"/> installed and wish to build the API
135 documentation, issue <command>doxygen doc/Doxyfile</command>.
136 </para>
137
138 <para>
139 This package does not come with a test suite.
140 </para>
141
142 <para>
143 Now, as the <systemitem class="username">root</systemitem> user:
144 </para>
145
146<screen role="root"><userinput>make install &amp;&amp;
147
148mv -v /usr/lib/libfuse.so.* /lib &amp;&amp;
149ln -sfv ../../lib/libfuse.so.&fuse-version; /usr/lib/libfuse.so &amp;&amp;
150rm -rf /tmp/init.d &amp;&amp;
151
152install -v -m755 -d /usr/share/doc/fuse-&fuse-version; &amp;&amp;
153install -v -m644 doc/{how-fuse-works,kernel.txt} \
154 /usr/share/doc/fuse-&fuse-version;</userinput></screen>
155
156 <para>
157 If you built the API documentation, install it as the
158 <systemitem class="username">root</systemitem> user by issuing the
159 following commands:
160 </para>
161
162<screen role="root"><userinput>install -v -m755 -d /usr/share/doc/fuse-&fuse-version;/api &amp;&amp;
163install -v -m644 doc/html/* \
164 /usr/share/doc/fuse-&fuse-version;/api</userinput></screen>
165 </sect2>
166
167 <sect2 role="commands">
168 <title>Command Explanations</title>
169
170 <para><command>sed -i ... lib/Makefile.in</command> This command fixes
171 libfuse so version.
172 </para>
173
174 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
175 href="../../xincludes/static-libraries.xml"/>
176
177 <para>
178 <parameter>INIT_D_PATH=/tmp/init.d</parameter>: This parameter installs
179 the bootscript into <filename class="directory">/tmp/init.d</filename> as
180 a bootscript is not required.
181 </para>
182
183 <para>
184 <command>mv -v /usr/lib/libfuse.so.* /lib</command>: This moves the
185 <application>FUSE</application> library to the root filesystem
186 so that it is available early in the boot process in case
187 <filename class="directory">/usr</filename> is mounted on a separate
188 partition and <xref linkend="ntfs-3g"/> is built with a system-installed
189 version of <application>FUSE</application>.
190 </para>
191
192 <para>
193 <command>rm -rf /tmp/init.d</command>: This removes the unneeded
194 bootscript.
195 </para>
196
197 </sect2>
198
199 <sect2 role="configuration">
200 <title>Configuring fuse</title>
201
202 <sect3 id="fuse-config">
203 <title>Config Files</title>
204
205 <para>
206 Some options regarding mount policy can be set in the file
207 <filename>/etc/fuse.conf</filename>. To install the file run the
208 following command as the <systemitem class="username">root</systemitem>
209 user:
210 </para>
211
212<screen role="root"><userinput>cat &gt; /etc/fuse.conf &lt;&lt; "EOF"
213# Set the maximum number of FUSE mounts allowed to non-root users.
214# The default is 1000.
215#
216#mount_max = 1000
217
218# Allow non-root users to specify the 'allow_other' or 'allow_root'
219# mount options.
220#
221#user_allow_other
222EOF</userinput></screen>
223
224 <para>
225 Additional information about the meaning of the configuration
226 options are found in the man page.
227 </para>
228
229 </sect3>
230
231 </sect2>
232
233 <sect2 role="content">
234 <title>Contents</title>
235
236 <segmentedlist>
237 <segtitle>Installed Programs</segtitle>
238 <segtitle>Installed Libraries</segtitle>
239 <segtitle>Installed Directory</segtitle>
240
241 <seglistitem>
242 <seg>
243 fusermount, mount.fuse, and ulockmgr_server
244 </seg>
245 <seg>
246 libfuse.so and libulockmgr.so
247 </seg>
248 <seg>
249 /usr/include/fuse and /usr/share/doc/fuse-&fuse-version;
250 </seg>
251 </seglistitem>
252 </segmentedlist>
253
254 <variablelist>
255 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
256 <?dbfo list-presentation="list"?>
257 <?dbhtml list-presentation="table"?>
258
259 <varlistentry id="fusermount">
260 <term><command>fusermount</command></term>
261 <listitem>
262 <para>
263 is a set users ID root program to mount and unmount Fuse
264 filesystems.
265 </para>
266 <indexterm zone="fuse fusermount">
267 <primary sortas="b-fusermount">fusermount</primary>
268 </indexterm>
269 </listitem>
270 </varlistentry>
271
272 <varlistentry id="mount.fuse">
273 <term><command>mount.fuse</command></term>
274 <listitem>
275 <para>
276 is the command <command>mount</command> would call to mount a Fuse
277 filesystem.
278 </para>
279 <indexterm zone="fuse mount.fuse">
280 <primary sortas="b-mount.fuse">mount.fuse</primary>
281 </indexterm>
282 </listitem>
283 </varlistentry>
284
285 <varlistentry id="ulockmgr_server">
286 <term><command>ulockmgr_server</command></term>
287 <listitem>
288 <para>
289 is the Userspace Lock Manager Server for Fuse filesystems.
290 </para>
291 <indexterm zone="fuse ulockmgr_server">
292 <primary sortas="b-ulockmgr_server">ulockmgr_server</primary>
293 </indexterm>
294 </listitem>
295 </varlistentry>
296
297 <varlistentry id="libfuse">
298 <term><filename class="libraryfile">libfuse.so</filename></term>
299 <listitem>
300 <para>
301 contains the <application>FUSE</application> API functions.
302 </para>
303 <indexterm zone="fuse libfuse">
304 <primary sortas="c-libfuse">libfuse.so</primary>
305 </indexterm>
306 </listitem>
307 </varlistentry>
308
309 <varlistentry id="libulockmgr">
310 <term><filename class="libraryfile">libulockmgr.so</filename></term>
311 <listitem>
312 <para>
313 contains the Userspace Lock Manager API functions.
314 </para>
315 <indexterm zone="fuse libulockmgr">
316 <primary sortas="c-libulockmgr">libulockmgr.so</primary>
317 </indexterm>
318 </listitem>
319 </varlistentry>
320 </variablelist>
321
322 </sect2>
323
324</sect1>
Note: See TracBrowser for help on using the repository browser.