История изменений
Исправление annulen, (текущая версия) :
У меня всё аналогично, и куча AppImage’й запускается
$ eix -e sys-fs/fuse
[I] sys-fs/fuse
Available versions:
(0) 2.9.9-r2
(3) 3.16.2^t
{examples static-libs +suid test ABI_MIPS="n32 n64 o32" ABI_S390="32 64" ABI_X86="32 64 x32"}
Installed versions: 2.9.9-r2(22:31:57 31.05.2024)(-examples -static-libs) 3.16.2(3)^t(16:52:05 31.05.2024)(suid -test ABI_MIPS="-n32 -n64 -o32" ABI_S390="-32 -64" ABI_X86="64 -32 -x32")
Homepage: https://github.com/libfuse/libfuse
Description: An interface for filesystems implemented in userspace
fusermount
при этом от слота (0):
$ equery b `which fusermount`
* Searching for /usr/bin/fusermount ...
sys-fs/fuse-2.9.9-r2 (/usr/bin/fusermount)
Из интереса решил попробовать запустить твой бинарник. Вроде бы вот это оно? Результат получился такой же: fuse: failed to exec fusermount: Permission denied
Однако --appimage-extract
отработал без вопросов. Создаётся каталог squashfs-root
, в котором надо запускать AppRun
.
Решил разобраться, почему Permission denied
. Вот что говорит strace:
...
open("/usr/bin/fusermount3", O_RDONLY|O_LARGEFILE) = -1 EACCES (Permission denied)
access(NULL, X_OK) = -1 EFAULT (Bad address)
open("/usr/bin/fusermount", O_RDONLY|O_LARGEFILE) = -1 EACCES (Permission denied)
access(NULL, X_OK) = -1 EFAULT (Bad address)
...
Т.е. он пробует и новую версию, и старую, но никакую не может открыть. А разгадка проста:
-rws--x--x 1 root root 39648 мая 31 22:31 /usr/bin/fusermount
-rws--x--x 1 root root 39656 мая 31 16:52 /usr/bin/fusermount3
Обе запрещены на чтение не от рута. Это, по-видимому, какая-то гентушная фишка ставить бинарники с правами --x
, я на такое уже нарывался со сломанным find_program()
в cmake
, пытающимся делать то же самое. Но AppImage тоже не прав, надо было stat
использовать.
Исправление annulen, :
У меня всё аналогично, и куча AppImage’й запускается
$ eix -e sys-fs/fuse
[I] sys-fs/fuse
Available versions:
(0) 2.9.9-r2
(3) 3.16.2^t
{examples static-libs +suid test ABI_MIPS="n32 n64 o32" ABI_S390="32 64" ABI_X86="32 64 x32"}
Installed versions: 2.9.9-r2(22:31:57 31.05.2024)(-examples -static-libs) 3.16.2(3)^t(16:52:05 31.05.2024)(suid -test ABI_MIPS="-n32 -n64 -o32" ABI_S390="-32 -64" ABI_X86="64 -32 -x32")
Homepage: https://github.com/libfuse/libfuse
Description: An interface for filesystems implemented in userspace
fusermount
при этом от слота (0):
$ equery b `which fusermount`
* Searching for /usr/bin/fusermount ...
sys-fs/fuse-2.9.9-r2 (/usr/bin/fusermount)
Из интереса решил попробовать запустить твой бинарник. Вроде бы вот это оно? Результат получился такой же: fuse: failed to exec fusermount: Permission denied
Однако --appimage-extract
отработал без вопросов. Создаётся каталог squashfs-root
, в котором надо запускать AppRun
.
Решил разобраться, почему Permission denied
. Вот что говорит strace:
...
open("/usr/bin/fusermount3", O_RDONLY|O_LARGEFILE) = -1 EACCES (Permission denied)
access(NULL, X_OK) = -1 EFAULT (Bad address)
open("/usr/bin/fusermount", O_RDONLY|O_LARGEFILE) = -1 EACCES (Permission denied)
access(NULL, X_OK) = -1 EFAULT (Bad address)
...
Т.е. он пробует и новую версию, и старую, но никакую не может открыть. А разгадка проста:
-rws--x--x 1 root root 39648 мая 31 22:31 /usr/bin/fusermount
-rws--x--x 1 root root 39656 мая 31 16:52 /usr/bin/fusermount3
Обе запрещены на чтение не от рута. Это, по-видимому, какая-то гентушная фишка ставить бинарники с правами --x
, я на такое уже нарывался со сломанным find_program() в cmake, пытающимся делать то же самое
. Но AppImage тоже не прав, надо было stat
использовать.
Исходная версия annulen, :
У меня всё аналогично, и куча AppImage’й запускается
$ eix -e sys-fs/fuse
[I] sys-fs/fuse
Available versions:
(0) 2.9.9-r2
(3) 3.16.2^t
{examples static-libs +suid test ABI_MIPS="n32 n64 o32" ABI_S390="32 64" ABI_X86="32 64 x32"}
Installed versions: 2.9.9-r2(22:31:57 31.05.2024)(-examples -static-libs) 3.16.2(3)^t(16:52:05 31.05.2024)(suid -test ABI_MIPS="-n32 -n64 -o32" ABI_S390="-32 -64" ABI_X86="64 -32 -x32")
Homepage: https://github.com/libfuse/libfuse
Description: An interface for filesystems implemented in userspace
fusermount
при этом от слота (0):
$ equery b `which fusermount`
* Searching for /usr/bin/fusermount ...
sys-fs/fuse-2.9.9-r2 (/usr/bin/fusermount)
Из интереса решил попробовать запустить твой бинарник. Вроде бы вот это оно? Результат получился такой же: fuse: failed to exec fusermount: Permission denied
Однако --appimage-extract
отработал без вопросов. Создаётся каталог squashfs-root
, в котором надо запускать AppRun
.
Решил разобраться, почему Permission denied
. Вот что говорит strace:
...
open("/usr/bin/fusermount3", O_RDONLY|O_LARGEFILE) = -1 EACCES (Permission denied)
access(NULL, X_OK) = -1 EFAULT (Bad address)
open("/usr/bin/fusermount", O_RDONLY|O_LARGEFILE) = -1 EACCES (Permission denied)
access(NULL, X_OK) = -1 EFAULT (Bad address)
...
Т.е. он пробует и новую версию, и старую, но никакую не может открыть. А разгадка проста:
-rws--x--x 1 root root 39648 мая 31 22:31 /usr/bin/fusermount
-rws--x--x 1 root root 39656 мая 31 16:52 /usr/bin/fusermount3
Обе запрещены на чтение не от рута. Это, по-видимому, какая-то гентушная фишка ставить бинарники с правами --x
, я на такое уже нарывался с bubblewrap. Но AppImage тоже не прав, надо было stat
использовать.