Projects/KioFuse (ru)
С помощью расширения KioFuse Вы сможете подключать (монтировать) любые каталоги, распознаваемые средой KDE, к локальной файловой системе, позволяя использовать расширенные возможности KDE по работе с файлами (такие как доступ к SSH, SAMBA/Windows, FTP, TAR/GZip/BZip2, WebDav и. т. д. ) другим совместимым со стандартами POSIX приложениям, таким, например, как Firefox, OpenOffice, программы среды GNOME, консольным программам... Другим существенным достоинством технологии KioFuse является то, что вы можете создать такую иерархию каталогов --- сетевых ресурсов, архивов, --- которая будет удобна именно вам.
Практически KioFuse является „мостом“ между системой доступа к файлам среды KDE и драйвером FUSE.
Установка
- Установите пакет kdelibs (версии 4.0 или более свежей), предоставленной поставщиком Вашей ОС, либо соберите его самостоятельно (см. здесь.
- выполните в терминале (н-р, konsole) следующие команды:
svn checkout svn://anonsvn.kde.org/home/kde/trunk/playground/libs/kiofuse
cd kiofuse
cmake .
make
Использование KioFuse
- Команда монтирования:
kiofuse --mountpoint <mountpoint> --URL <URL>
- Команда размонтирования:
fusermount -u <mountpoint>
Жизненные пример:
# Создайте точку монтирования:
mkdir ~/fuse-source
# Скачайте архив с исходным кодом FUSE:
wget http://superb-east.dl.sourceforge.net/sourceforge/fuse/fuse-2.7.2.tar.gz -P ~
# Теперь Вы можете смонтировать архив в каталог ~/fuse-source
./kiofuse --mountpoint ~/fuse-source --URL tar:~/fuse-2.7.2.tar.gz &
# ... и работать с содержимым архива в любом файл-менеджере!
dolphin ~/fuse-source &
nautilus ~/fuse-source &
thunar ~/fuse-source &
Снимки экрана
Особенности и планы на будущее
- Некоторые модули KIO (например, tar:) не поддерживают произвольный доступ, из-за этого в отдельных случаях чтение и запись в файлы могут быть недоступными. Исправление тох модулей планируется.
- Нужно изменить систему KIO так, чтобы она получала сведения о подмонтированных через FUSE каталогах и использовала „родные“ функции (согласно POSIX) для доступа к этим ресурсам.
Возможности POSIX
Для получения сведений о всех функциях ввода-вывода см. документацию FUSE.
Имя функции | Описание | Filename |
---|---|---|
GetAttr | Права доступа, владелец, группа | Готово |
ReadLink | Определение цели ссылки | Готово |
MkNod | Создание файла | Готово |
MkDir | Создание каталога | Готово |
UnLink | Удаление ссылки на файл | Готово |
RmDir | Удаление каталога | Готово |
SymLink | Создание символьной ссылки | Done |
Rename | Переименование файла или каталога | Готово |
Link | Создание жёсткой ссылки | Готово |
Chmod | Изменение прав доступа к файлу/каталогу | Готово |
Chown | Изменение владельца файла/каталога | Готово |
Truncate | Изменение размера файла | Готово |
Open | Открытие файла для чтения, записи и/или изменения размера | Готово |
Read | Чтение содержимого файла | Готово |
Write | Запись данных в файл | Готово |
StatFS | Получение данных о файловой системе | Не приступали |
Flush | Сброс буферов обмена | Не приступали |
Release | Закрыть открытый раннее файл | Готово |
FSync | Синхронизировать файл | Не приступали |
SetXAttr | Установка расширенных атрибутов | Не приступали |
GetXAttr | Чтение расширенных атрибутов | Не приступали |
ListXAttr | Получение списка расширенных атрибутов | Не приступали |
RemoveXAttr | Удаление расширенных атрибутов | Не приступали |
OpenDir | Вход в каталог | Не приступали |
ReadDir | Получение списка файлов/каталогов в текущем каталоге | Готово |
ReleaseDir | Покинуть каталог | Не приступали |
FSyncDir | Синхронизировать содержимое каталога | Не приступали |
Init | Инициализировать файловую систему | Не приступали |
Destroy | Очистить файловую систему | Не приступали |
Access | Узнать права доступа к файлу | Работа идёт |
Create | Создать и открыть файл | Не приступали |
FTruncate | Изменение размера открытого файла | Не приступали |
FGetAttr | Получение атрибутов файла | Не приступали |
Lock | Блокировка ресурса | Не приступали |
UTimeNS | Изменение времён доступа и изменения файла (нсек) | Не приступали |
Исходный код
Исходный код KioFUSE расположен по адресу: http://websvn.kde.org/trunk/playground/libs/kiofuse/