Fuse: различия между версиями
Илья Н. (обсуждение | вклад) мНет описания правки |
Илья Н. (обсуждение | вклад) |
||
(не показаны 3 промежуточные версии этого же участника) | |||
Строка 1: | Строка 1: | ||
'''[https://www.kernel.org/doc/html/latest/filesystems/fuse.html FUSE]''' (англ. '''Filesystem in Userspace''' — файловая система в пользовательском пространстве) — это фреймворк для создания и использования собственных файловых систем, а также их безопасного и непривилегированного монтирования. '''FUSE''' состоит из модуля ядра (<code>fuse.ko</code>), библиотеки пользовательского пространства (<code>libfuse.*</code>) и утилиты монтирования ({{cmd|fusermount}}). | '''[https://www.kernel.org/doc/html/latest/filesystems/fuse.html FUSE]''' (англ. '''Filesystem in Userspace''' — файловая система в пользовательском пространстве) — это фреймворк для создания и использования собственных файловых систем, а также их безопасного и непривилегированного монтирования. '''FUSE''' состоит из модуля ядра (<code>fuse.ko</code>), библиотеки пользовательского пространства (<code>libfuse.*</code> в составе пакета '''{{pkg|libfuse}}''') и утилиты монтирования ({{cmd|fusermount}} в составе пакета '''{{pkg|fuse}}'''). | ||
'''FUSE''' используется при работе приложений '''[[Flatpak]]''' и '''[[Appimage]]'''. | '''FUSE''' используется при работе приложений '''[[Flatpak]]''' и '''[[Appimage]]'''. | ||
{{Note|Приведенная ниже информация по большей части относится к '''fuse''' версии '''2'''. В дистрибутивы Альт также может быть | {{Note|Приведенная ниже информация по большей части относится к '''fuse''' версии '''2'''. В дистрибутивы Альт также может быть включен пакет '''fuse3''' и утилита монтирования {{cmd|fusermount3}}.}} | ||
__TOC__ | __TOC__ | ||
==Проверка работы FUSE== | ==Проверка работы FUSE== | ||
Модуль ''' | Модуль ядра '''fuse''' поставляется в составе пакета ядра и, скорее всего, уже установлен в вашей системе Альт. | ||
Для проверки работы '''FUSE''' от имени '''обычного пользователя''' убедитесь в доступности | У пользователя должен быть доступ к утилите {{cmd|fusermount}} из пакета '''{{pkg|fuse}}''' (обычно устанавливается в систему по умолчанию). | ||
Для проверки работы '''FUSE''' от имени '''обычного пользователя''', убедитесь в доступности утилиты монтирования {{cmd|fusermount}}: | |||
fusermount -V | fusermount -V | ||
Строка 31: | Строка 33: | ||
rpm -qa *fuse* | rpm -qa *fuse* | ||
При отсутствии пакета '''{{pkg|fuse | При отсутствии пакета '''{{pkg|fuse}}''' версии '''2''' могут быть ошибки в работе '''AppImage''' (см. раздел [[#Решение проблем | Решение проблем]]), нужно доустановить пакеты: | ||
apt-get update && apt-get install fuse libfuse | apt-get update && apt-get install fuse libfuse | ||
Строка 70: | Строка 72: | ||
Cannot mount AppImage, please check your FUSE setup. | Cannot mount AppImage, please check your FUSE setup. | ||
Ошибка может появиться из-за отсутствия в пакете '''{{pkg|fuse3}}''' утилиты монтирования {{cmd|fusermount}} (относится к пакету '''{{pkg|fuse | Ошибка может появиться из-за отсутствия в пакете '''{{pkg|fuse3}}''' утилиты монтирования {{cmd|fusermount}} (относится к пакету '''{{pkg|fuse}}''' версии '''2''', {{altbug|52316}}). | ||
Для решения проблемы нужно доустановить пакет '''{{pkg|fuse | Для решения проблемы нужно доустановить пакет '''{{pkg|fuse}}''' версии '''2''': | ||
su - | su - |
Текущая версия от 17:53, 11 января 2025
FUSE (англ. Filesystem in Userspace — файловая система в пользовательском пространстве) — это фреймворк для создания и использования собственных файловых систем, а также их безопасного и непривилегированного монтирования. FUSE состоит из модуля ядра (fuse.ko
), библиотеки пользовательского пространства (libfuse.*
в составе пакета libfuse) и утилиты монтирования (fusermount в составе пакета fuse).
FUSE используется при работе приложений Flatpak и Appimage.
Проверка работы FUSE
Модуль ядра fuse поставляется в составе пакета ядра и, скорее всего, уже установлен в вашей системе Альт.
У пользователя должен быть доступ к утилите fusermount из пакета fuse (обычно устанавливается в систему по умолчанию).
Для проверки работы FUSE от имени обычного пользователя, убедитесь в доступности утилиты монтирования fusermount:
fusermount -V
Должна быть выведена информация об установленной версии fusermount:
fusermount version: 2.9.9
Если все требования выполнены, у вашего пользователя должен быть доступ к fusermount и использованию приложений Flatpak и Appimage.
Настройка FUSE
Если на предыдущем этапе возникли проблемы, то нужно настроить FUSE. Для этого зайдите от имени root:
su -
Все дальнейшие команды вводятся от имени суперпользователя root.
Посмотрите установленные пакеты fuse с помощью команды:
rpm -qa *fuse*
При отсутствии пакета fuse версии 2 могут быть ошибки в работе AppImage (см. раздел Решение проблем), нужно доустановить пакеты:
apt-get update && apt-get install fuse libfuse
Проверьте, что ваш пользователь состоит в группе fuse:
groups имя_пользователя
Например:
user1 : user1 wheel uucp proc cdrom floppy fuse cdwriter audio radio users scanner xgrp video camera
Если нужно, добавьте вашего пользователя в группу fuse:
usermod -aG fuse имя_пользователя
Предоставьте доступ к fusermount с помощью механизма control:
control fusermount fuseonly
Или, что менее безопасно:
control fusermount public
Выйдите из сеанса суперпользователя root и своего пользователя, и перезайдите в систему. Теперь у вашего пользователя должен появиться доступ к fusermount и использованию приложений Flatpak и Appimage.
Решение проблем
Во время работы с FUSE, например Appimage, могут возникать ошибки вида:
Cannot mount AppImage, please check your FUSE setup
В этом случае следует запустить файл Appimage в терминале и посмотреть детальный вывод ошибки.
Ошибка: fuse: failed to exec fusermount
При использовании AppImage с fuse3 может возникнуть ошибка:
fuse: failed to exec fusermount: No such file or directory Cannot mount AppImage, please check your FUSE setup.
Ошибка может появиться из-за отсутствия в пакете fuse3 утилиты монтирования fusermount (относится к пакету fuse версии 2, altbug #52316).
Для решения проблемы нужно доустановить пакет fuse версии 2:
su - apt-get update && apt-get install fuse libfuse