Projects/KioFuse (ru)

    From KDE TechBase


    С помощью расширения 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/