LINUX.ORG.RU

3
Всего сообщений: 79

KIO-FUSE вроде как готов

То, о чём так долго говорили - всего-то с 2004-го года — свершилось. Теперь удалённые ресурсы KIO будет полноценно монтировать через FUSE. Полная поддержка ожидается в Dolphin 20.04

Взято из отчёта Натана Грехэма.

 , , ,

Deleted ()

Вопрос по использованию fuse + fstab

Всем привет. Буду краток. Дело происходит в Raspbian. Задача - дать моему пользователю право монтировать раздел exFAT съемного диска без sudo. Тривиально, но…

whoami

dmitry

id dmitry

uid=1001(dmitry) gid=1001(dmitry) группы=1001(dmitry),4(adm),6(disk),20(dialout),24(cdrom),27(sudo),29(audio),44(video),46(plugdev),60(games),100(users),105(input),109(netdev),1000(pi),999(spi),998(i2c),997(gpio)

ls -ld /media/BIG/

drwxr-x— 2 dmitry users 4096 дек 25 03:03 /media/BIG/

ls -l /dev/sdb1

brw-rw—- 1 root disk 8, 17 дек 25 09:31 /dev/sdb1

cat /etc/fstab | grep /media/BIG

UUID=5DF6-2FE7 /media/BIG exfat rw,auto,nofail,user,umask=027,uid=1001,gid=100

ls -l /bin/fusermount

-rwsr-xr-x 1 root root 26072 янв 7 2019 /bin/fusermount

ls -l /sbin/mount.fuse

-rwxr-xr-x 1 root root 9684 янв 7 2019 /sbin/mount.fuse

Пробовал делать chmod +s /sbin/mount.fuse - безрезультатно.

mount /media/BIG

FUSE exfat 1.3.0 ERROR: failed to open ‘/dev/sdb1’: Permission denied.

При этом sudo mount /media/BIG работает.

Подскажите, пожалуйста, где не хватает прав или в чем моя ошибка? Я голову сломал уже, честно говоря.

Думаю, что дело точно во fuse, т.к. с правами, на мой взгляд, все нормально и вот такая строка из /etc/fstab прекрасно работает (т.е. пользователь dmitry монтирует без sudo файловую систему): UUID=bfb5f4e7-f031-4a8a-99ac-9398e05e8170 /media/storage ext4 rw,user,auto,nofail,exec,noatime

Права на директорию storage и устройство в /dev/ при этом абсолютно такие же, что и в проблемном случае.

 , , ,

paddlewan ()

Не могу запустить AppImage

Добрый день. Не могу запустить AppImage, пишет: https://i.imgur.com/n33ny3W.png. Пытаюсь установить fuse:

Зчитування переліків пакунків... Виконано
Побудова дерева залежностей                        
Зчитування інформації про стан... Виконано
fuse is already the newest version (2.9.7-1+deb9u2).
оновлено 0, встановлено 0 нових, 0 відмічено для видалення і 0 не оновлено.
Пытаюсь установить из пакета:
sudo dpkg --install ~/Downloads/fuse_2.9.7-1+deb9u2_amd64.deb
(Reading database ... 138176 files and directories currently installed.)
Preparing to unpack .../fuse_2.9.7-1+deb9u2_amd64.deb ...
Unpacking fuse (2.9.7-1+deb9u2) over (2.9.7-1+deb9u2) ...
Setting up fuse (2.9.7-1+deb9u2) ...
update-initramfs: deferring update (trigger activated)
Processing triggers for man-db (2.7.6.1-2) ...
Processing triggers for initramfs-tools (0.130) ...
update-initramfs: Generating /boot/initrd.img-4.9.0-8-amd64
setupcon: The keyboard model is unknown, assuming 'pc105'. Keyboard may be configured incorrectly.

Не устанавливается ни так ни так, в чём дело? Раньше никогда подобного не было и запускались AppImage из коробки.

ОС Debian 9

 ,

TheLinuxUser ()

Оцените мою FUSE систему для ВК

Добрый день.

Была такая программа VKAudioFS, которая создавала виртуальную файловую систему с сохранённой музыкой ВКонтакте. Но после известных изменений VK API, работать она, конечно, перестала. Кроме того, VKAudioFS не работала под Windows и не хватало многих полезных функций, вроде сортировки по дате добавления.

Поэтому я решил сделать свою программу VK Music FS. Там гораздо больше функций: можно не только слушать/загружать «Мою музыку», но и искать аудиозаписи по названиям треков; автоматически добавляются ID3 теги, если их нет, есть сортировка по дате. Исходный код открыт: https://github.com/vodka2/vk-music-fs , есть пакет в AUR и AppImage.

Сам я использую свою программу каждый день, но возможно, она покажется полезной не только мне. Подскажите, как можно улучшить программу, какие функции стоит добавить. Ещё было бы здорово, если бы кто-то покритиковал код, так как я не очень хорошо знаю C++.

 , , ,

vodka2 ()

Chrome крашит соединение sshfs.

Здраствуйте. На работе такая проблема - есть сервер ltsp и толстые клиенты, которые к нему подключаются. На сервере у каждого пользователя есть своя домашняя папка, которая монтируется в толстый клиент. Неделю назад начала возникать ошибка у некоторых пользователей - отваливается смонтированная домашняя папка. Выяснилось, что происходит это при работе с Google Chrome. При чем если запустить чистый сеанс Хрома, без восстановления вкладок - все работает отлично. Если же сделать восстановление - через некоторое время Хром падает с segfault потому что не может получить доступ к домашней папке. Саму точку монтирования видно, но Владелец и группа обозначены знаками вопроса. Chrome версии 64, клиентская OS Ubuntu 14.04 3.13.0.

Сразу оговорюсь - из 40 сотрудников данная проблема зафиксирована у 3-х.

Суть вопроса вот в чем - как можно отследить, что конкретно вызывает сбой?

 , , ,

denrur ()

Cinnamon глюк Fuse

Здравствуйте уважаемые специалисты Система Debian9 установил эмулятор спектрума Fuse-GTK В течении 15-30 минут после перезагрузки компьютера эмулятор работает нормально. Потом скорость эмуляции начинает подпрыгивать до 4000% при любом обращении в меню Fuse. Перезапуск Fuse не помогает, только перезапуск компьютера. Пробовал запечатлеть глюк записав видео с экрана программой Simple Screen Recorder и о-чудо. Пока запись идет, змулятор работает нормально https://www.youtube.com/watch?v=3ALkyD10WrA Пробовал записать экран с телефона. На этот раз получилось. https://www.youtube.com/watch?v=5CLR9CzPAkE Скорость эмуляции отображается в правом нижнем углу окна FUSE Подскажите пожалуйста как решается данная проблема?

 ,

Viktor2004 ()

В базовую Slackware-current приехала библиотека jmtpfs

Сабж. Библиотека, напоминаю, позволяет при помощи команды

jmtpfs /путь/к/точке/монтирования
монтировать файловые системы по протоколу MTP, который используют последние версии Android'а вместо того, чтобы притворяться обычными флэшками.

До этого библиотека jmtpfs находилась на slackbuilds.org.

Автором библиотеки jmtpfs является Jason Ferrara, а код проекта на github'е не обновлялся с конца 2013-го года. Поэтому у проекта версия пока ещё 0.5.

Библиотека уже давно присутствует в мейнстримных дистрибутивах, включая Debian, Федору, Gentoo, ALT, Arch, CentOS (репозиторий EPEL), Devuan и Ubuntu.

 , , ,

saahriktu ()

Всё есть файл и это прикольно! Почему в GNU/Linux эта идея не развивается?

Короткое видео: https://www.youtube.com/watch?v=YCho-wOAtOU
В принципе, ничего принципиально нового. Но оно напоминает, как это удобно и здорово.

Интересно, почему в современном Linux этот подход вроде бы используется, а вроде бы и нет?

Например, в Gnome можно смонтировать архив штатными средствами, также есть отдельные FUSE файловые системы для этих целей. Но при этом, например, Midnight Commander архивы открывает через что-то своё встроенное и в нём уже нельзя нажать Ctrl+O и выполнить несколько bash команд. KDE, насколько я помню, аналогично Midnight Commander'у.

Или ещё пример. Недавно было обсуждение, о том, как будут работать скриншоты и скринкасты с переходом на Wayland. И там что-то с D-Bus+PipeWire. Я так понимаю, к последнему будет своё API. Почему бы не реализовать интерфейс получения скриншота также как в видео? И с правами всё просто. Запретил через AppArmor-профиль браузеру получать доступ к /run/user/self/wayland/screen-0/ и подлый браузер за тобой не подглядывает.

Почему D-Bus не выглядит как файловая система? echo 100 > /run/user/self/volume-control. Удобно же! Опять же правами рулить просто и быстро. Можно через стандартные группы и пользователи, через ACL, всякие SELinux тоже в тему.

Единообразие интерфейсов это же так здорово!
И примеров можно придумать ещё миллион...

 , ,

ls-h ()

зашифрованная fs в файле

А каким способом лучше всего делать зашифрованный файл с файловой системой внутри, который возможно увеличивать по мере необходимости и монтировать через fuse.

 ,

thunar ()

Идея чем заняться для изучающих libfuse

Есть один проектик: https://github.com/vasi/squashfuse. Будет очень полезен API для него. Это даже в TODO написано, но никто не может cделать, просто мне надо сделать уроки по геометрии, а без этой библиотеки не могу сделать геометрию.

Для уроков, мне нужна geogebra в AppImage (жижу для вейпа уже купил). Я для него пишу runtime.c и AppRun.c. Но было бы очень удобно если бы этому проекту сделали API.

Спасибо добровольцам!

 , ,

neuer_Reedych ()

Хотел примонтировать ftp-папку, но не получилось

Всем привет. Вобщем, есть один сайтик с ftp-доступом, мне надо его админить, решил примонтировать его ftp-сервер себе в папку во freebsd.

/etc/rc.conf содержит fusefs_enable=«YES», curlftpfs стоит.

$ curlftpfs ftp://x:x@ftp.xxxxxx.xx /www/test -o rw
mount_fusefs: /dev/fuse on /www/test: Operation not permitted
fuse: failed to mount file system: Operation now in progress

Команду запускаю из под юзера «х», он является владельцем папки /www/test, а также устройства /dev/fuse

UPD: А нет, «х» не владелец устройства /dev/fuse, почему-то на него команда

# chown x:x /dev/fuse
не действует.

UPD: Монтирование под рутом не вызывает ошибки но и не даёт результата

 , , ,

russian-turist-2019 ()

Отладка FUSE драйвера с помощью GDB из Eclipse

Сделал FUSE-драйвер. В прошлый раз отлаживался по отладочным сообщениям (ключ "-d" при запуске драйвера), отлаживал куски кода по отдельности и потом включал в драйвер.

Можно ли как-то отловить вызовы функций драйвера после того как вызван fuse_main?

Рецепты для отладки fork-ающихся программ здесь кажется не работают. Делал .gdbinit c «follow-fork-mode child». Ставил в настройках Eclipse «Non-stop mode» и «Automatic debug forked process». Ключ "-s" (single thread) в параметрах драйвера. GDB не ловит брекпоинты.

 , ,

bugs-bunny ()

Посоветуйте адекватный способ монтирования Google Drive

Привет, ЛОР!

Как лучше всего смонтировать Google Drive в Linux?

Нагуглил google-drive-ocamlfuse, но в репозиториях Debian нет, нужно собирать самому. Еще есть вариант смонтировать по людски через WebDav транспорт (например, DAV-pocket Lab).

Какой вариант самый надежный?

 , , ,

aquadon ()

Доступ к трекам с SACD ISO

Существует простой способ для доступа к аудио-трекам с SACD ISO, чтобы можно было прослушивать в более менее любом плеере?

Мне известно только принудительное использование форка mpd от Максима Анисюткина в качестве плеера.

 , , , ,

gag ()

Монтирование по запросу SSH с помощью afuse или systemd

У меня возникла необходимость настроить монтирование по запросу SSH диска от имени текущего пользователя, где аутентификация на SSH-сервере производится с помощью kerberos. Монтирование в ручную работает замечательно, но автоматизировать этот процесс у меня так и не получилось.

1. afuse) Использую стандартный способ

afuse -o mount_template="sshfs %r:/ %m" -o unmount_template="fusermount -u -z %m" ~/sshfs/
Если обращаться к серверу ~/sshfs/srv.local/, то в принципе все работает, но если просто перейти в папку sshfs, то начинаются дикие тормоза как в bash так и в X. Я подозреваю, что afuse пытается монтировать несуществующие каталоги, но не знаю как это остановть.

2. systemd) Везде описывается или монтирование от root, или с помощью ключей, я так и не понял возможно-ли реализовать монтирование с керберос в этой системе?

3. может есть какие-то другие способы? я знаю что есть autofs, но некоторые пишут, что ssh-диски ей лучше не монтировать...

ОС: дебиан джесси

 , ,

iving ()

Файловая система для вложений в Telegram

Доброго времени суток!

https://github.com/Firemoon777/tgfs
Собственно, сабж.
Реализован базовый набор функций (скачивание/загрузка/удаление), данные о диалогах пока хромают.

 , ,

f1remoon ()

Отваливается после выхода из спящего (suspend) режима примонтированная sshfs-директория

В более ранней теме всё было решено, всё заработало. Но, к сожалению, после выхода из suspend-режима, директория с sshfs в списке примонтированных устройств отсутствует и каждый раз после выхода из suspend приходится монтировать заново (причём, уже с введением пароля). Что самое интересное: если я выхожу из suspend через 30-40 минут, то sshfs остаётся примонтированным. Но стоит мне зайти в систему из suspend-режима через несколько часов, то всё — sshfs-директория потеряна. Пробовал увеличить до значения «9600» параметр «ServerAliveInterval» в файле /etc/ssh/sshd_config — но это не помогло.

Решение
Экспериментальным путём установил: надо было добавить опцию reconnect к точке монтирования в /etc/fstab. Как обычно, решение простое до невозможности. Странно, почему про reconnect не написано в man fstab? Можно сказать, случайно нашёл решение - увидел в чужом конфиге эту опцию и решил попробовать, благо что смысл перевода подходит под мою ситуацию...
Нашёл про reconnect в man sshfs. Я так понимаю, что в опциях можно указывать любые опции, касающиеся монтируемой файловой системы, указанные в её man?

Вот мои опции, если кому пригодятся: defaults,_netdev,reconnect,user,allow_other

 , , ,

Desmond_Hume ()

Наиболее эффективный способ передачи файлов по сети.

Пишем сетевую файловую систему над FUSE, задача предполагает передачу кучи маленьких файлов (до 10кб) с сервера на клиент и обратно + агрессивное кэширование (без синхронизации с сервером, клиент блокирует любые операции на запись используемых файлов на время работы).
Пытаюсь принять решение касательно протокола передачи, возникла пара вопросов:
1. Как эффективнее передавать данные: по TCP с потерями на контроль доставки или по UDP без попакетного контроля (контролировать чексуммами блоков большого размера, например)?
2. Утилизует ли TCP-поток всю ширину канала? Будет ли выигрыш от приема/передачи через N соединений по количеству ядер процессора?

И касательно FUSE: 3. Можно ли его научить работать асинхронно тогда, когда это возможно?
Последовательное чтение метаданных в директориях с кучей файлов — это боль.

 , , , ,

mersinvald ()

kde5 прикол с монтированием

Привет

у всех так монтируются usb?

https://youtu.be/tabxwFQdhDI

 , , , ,

brothermechanic ()

fuse. Редирект на устройство.

Приветствую!

Есть у меня девайс удаленный с линуксом на борту, там в директории /dev есть некое специальное устройство, в которое можно писать. Я накидал fuse клинета и сделал маунт на рабочую машину. Всю фс девайса я вижу, могу писать файлы, создавать, удалять дирекотрии, делать файлам chmod...но вот в устройство писать у меня не получается по причине ...

$ echo  "test" > /home/wrk/fuse/dev/mycooldevice
An error occurred while redirecting file '/home/wrk/fuse/dev/mycooldevice'
open: Permission denied

* /home/wrk/fuse/ - локальная директория, куда замаплена ФС девайса.

** локально на устройстве эта команда вполне работает

Ах да. Удаленный сервер, который запущен на устройстве, работает под root. И вот как я вижу удаленный файл.

$ ls -la dev/mycooldevice
crw------- 1 root root 245, 0 янв  1  1970 dev/mycooldevice

Проблема в том, что вызов open в клиенте fuse даже не пытается выполниться.

Я как-то, видимо плохо искал, не могу найти сведения о том, что ему еще не хватает. Может сталкивался кто с таким? Какой-то еще метод нужен для возможности записи в нерегулярные файлы?

Вот, кстати, весь кусок лога fuse клиента при исполнении echo.

unique: 179, opcode: LOOKUP (1), nodeid: 1, insize: 44, pid: 16707
LOOKUP /dev
getattr /dev
   NODEID: 2
   unique: 179, success, outsize: 144
unique: 180, opcode: LOOKUP (1), nodeid: 2, insize: 49, pid: 16707
LOOKUP /dev/mycooldevice
getattr /dev/mycooldevice
   NODEID: 3
   unique: 180, success, outsize: 144

то есть все, что он делает, это проверяет атрибуты файла ... :-/

а, да. FUSE_USE_VERSION=25

 

seryoga ()