FUSE (Filesystem in Userspace) é uma interface simples para aplicativos do espaço de usuário(a) para exportar um sistema de arquivos virtual para o núcleo Linux. O Fuse também visa a fornecer um método seguro para usuários(as) não privilegiados(as) criarem e montarem as próprias implementações de sistema de arquivos deles(as).
Esse pacote é conhecido por construir e funcionar adequadamente usando uma plataforma LFS 11.3.
Transferência (HTTP): https://github.com/libfuse/libfuse/releases/download/fuse-3.13.1/fuse-3.13.1.tar.xz
Soma de verificação MD5 da transferência: f2830b775bcba2ab9cb94f2619c077a4
Tamanho da transferência: 3,9 MB
Espaço em disco estimado exigido: 102 MB (com os testes e a documentação)
Tempo de construção estimado: 0,1 UPC (adicionar 0,4 UPC para os testes)
Doxygen-1.9.6 (para reconstruir a documentação da API) e pytest-7.2.1 (exigido para testes)
Observações de Usuário(a): https://wiki.linuxfromscratch.org/blfs/wiki/fuse
Habilite as seguintes opções na configuração do núcleo e recompile o núcleo, se necessário:
File systems --->
<*/M> FUSE (Filesystem in Userspace) support [CONFIG_FUSE_FS]
Os dispositivos de caracteres no espaço do usuário(a) também deveriam ser habilitados para executar os testes:
File systems --->
<*/M> FUSE (Filesystem in Userspace) support [CONFIG_FUSE_FS]
<*/M> Character device in Userspace support [CONFIG_CUSE]
Instale Fuse executando os seguintes comandos:
sed -i '/^udev/,$ s/^/#/' util/meson.build && mkdir build && cd build && meson --prefix=/usr --buildtype=release .. && ninja
A documentação da API está incluída no pacote, mas se você tiver o Doxygen-1.9.6 instalado e quiser reconstruí-la, [então] emita:
pushd .. && doxygen doc/Doxyfile && popd
Para testar os resultados, execute (como o(a) usuário(a)
root
):
python3 -m pytest test/
O módulo Python pytest-7.2.1 é exigido para os testes. Um teste
chamado test_cuse
falhará se o item
de configuração CONFIG_CUSE
não estiver habilitado quando o núcleo foi construído. Dois testes,
test_ctests.py
e test_examples.py
produzirão um aviso, porque um
módulo obsoleto Python é usado.
Agora, como o(a) usuário(a) root
:
ninja install && chmod u+s /usr/bin/fusermount3 && cd .. && install -v -m755 -d /usr/share/doc/fuse-3.13.1 && install -v -m644 doc/{README.NFS,kernel.txt} \ /usr/share/doc/fuse-3.13.1 && cp -Rv doc/html /usr/share/doc/fuse-3.13.1
sed ... util/meson.build: Esse comando desabilita a instalação de um script de inicialização e de uma regra udev que não são necessários(as).
--buildtype=release
:
Especifique um tipo de construção adequado para lançamentos
estáveis do pacote, pois o padrão possivelmente produza binários
não otimizados.
Algumas opções relacionadas à política de montagem podem ser
configuradas no arquivo /etc/fuse.conf
. Para instalar o arquivo,
execute o seguinte comando como o(a) usuário(a) root
:
cat > /etc/fuse.conf << "EOF"
# Configura o número máximo de montagens FUSE permitidas para usuários(as) não root.
# O padrão é 1000.
#
#mount_max = 1000
# Permitir que usuários(as) não root especifiquem as
# opções de montagem 'allow_other' ou 'allow_root'.
#
#user_allow_other
EOF
Informação adicional a respeito do significado das opções de configuração são encontradas na página de manual.