Рубрика «fuse»
FUSE + Go: ковка собственной виртуальной файловой системы на блочном устройстве
2025-08-03 в 19:16, admin, рубрики: FS, fuse, Go, mont, блочное устройство, виртуальная файловая системаКак я запустил Linux с Google Drive
2024-07-08 в 13:00, admin, рубрики: Arch Linux, fuse, google drive, linux, ruvds_переводы
Я грешен: во мне есть дух соперничества. Когда я услышал, что мой друг заставил Linux загружаться с NFS, мне обязательно нужно было его превзойти. Я обязан был доказать, что могу сделать что-то сложнее, лучше, быстрее, сильнее [прим. пер.: в оригинале отсылка к композиции Daft Punk «Harder, Better, Faster, Stronger»].
Как и все хорошие проекты, этот начался с идеи.
Мой мозг вышел в астрал и выхватил оттуда нечто неуловимое, заставившее слиться воедино разрозненные концепции. В моих руках Масса обрела вес и тёмные клубящиеся цвета, грозящие гибелью каждому, кто будет вглядываться в них слишком долго.
На грани безумия мой утомлённый мозг придумал мой magnum opus: запуск Linux с рута Google Drive.
▍ Но как?
Я хотел обеспечить автономность системы, поэтому не мог использовать в качестве «помощника» вторую машину. Мой разум сразу же вспомнил FUSE — программу, работающую драйвером файловой системы в пользовательском пространстве (с поддержкой со стороны ядра).
Мне достаточно было установить программы FUSE в initramfs ядра Linux и сконфигурировать сеть. В этом ведь не должно быть ничего сложного, так?Читать полностью »
FUSE: как написать свою файловую систему
2024-06-20 в 14:09, admin, рубрики: filesystem, filesystems, fuse, inode, tarantool, Программирование, разработка, Си, файловая система, файловые системыМеня зовут Максим, я ведущий разработчик в VK. Занимаюсь инфраструктурой доставки электронной почты в проекте Mail.ru. Наша команда разработала и довела до эксплуатации файловую систему (ФС) на FUSE в рамках проекта распределённой почтовой очереди. В проекте требовалось реализовать сетевую ФС, которая сохраняет данные в трёх копиях, в разных ЦОДах. Цель — повысить отказоустойчивость, чтобы полный выход из строя одного ЦОД не приводил к нарушениям SLA. Эта статья для всех, кто интересуется файловыми системами и хранением данных. Мы обсудим:
-
зачем писать свою ФС;
Linux Kernel Library: ядро Linux в форм-факторе so или dll
2019-12-04 в 12:29, admin, рубрики: C, fuse, linux file systems, linux kernel library, lkl, open source, Разработка под Linux, системное администрирование, системное программированиеКогда-то читал статью о выборе файловых систем «чтоб везде-везде работало». В ней в очередной раз увидел жалобы, что Ext4 замечательная файловая система, но на Windows есть только кривые неточные проприетарные драйверы. Но отмотаем ленту ещё на пару лет назад: тогда на Хабре (а в те времена — Гиктаймсе) пролетала новость про LibOS — попытку превратить Linux kernel в обычную библиотеку пользовательского режима. Упор там делался на вынос сетевого стека в user space. Как-то раз я решил поглядеть, а жив ли вообще проект, и в их блоге увидел ссылку на своего рода конкурента — проект Linux Kernel Library (LKL). По сути, это порт ядра, так сказать, на аппаратную архитектуру «библиотека пользовательского режима POSIX / Win32».
Чем интересна LKL? Во-первых тем, что она живёт и здравствует, пусть и не в основной кодовой базе ядра. Во-вторых, это более-менее честная поддержка «архитектуры», автоматически делающая доступной бОльшую часть ядра. Более того, прямо в комплекте идут утилиты-примеры: cptofs/cpfromfs, fs2tar, lklfuse. В этой статье мы протестируем LKL на хостовом Linux, заглянем в файл с образом Ext4 без рута и виртуалок и коротко обсудим, как её можно попробовать на Windows.
Telegram. Безлимитный сетевой диск. Бесплатный
2019-06-16 в 16:29, admin, рубрики: cloud storage, file system, fuse, github, python, telegram, vfs, Блог компании VDS.SH / DEDIC.SH, Лайфхаки для гиков, облачные сервисы, хранение данныхПривет.
Наверняка многие об этом задумывались, возможно у кого то эта идея лежит в TODO. У меня она пролежала примерно год, но таки удалось ее реализовать в виде работающего прототипа.
TgCloud:
- Виртуальная файловая система с открытым исходным г****кодом.
- На локальном диске — только метаданные: имена, размер, структура папок и т.д.
- Данные хранятся в Telegram и загружаются только при работе с файлом
- Размер и тип файлов не ограничен, можно использовать с любой ОС

Подробности реализации и ссылка на репозиторий — под катом
Читать полностью »
Облако.Mail.Ru + EncFS без локального хранения файлов
2017-05-13 в 7:52, admin, рубрики: c++, encfs, fuse, linux, open source, криптография, Облако Mail.ru, Разработка под Linux
Синопсис
Не секрет, что у многих из нас остался 1 Тб свободного места на MRU-Облаке со времён его бета-теста. Объём приличный по нынешним меркам — но что с ним делать? Фотографии и своё видео туда просто так заливать не очень хочется — взломы аккаунтов случаются нередко, да и в любом случае — облако это облако, и нельзя сбрасывать со счетов тот простой факт, что любое облачное хранилище принадлежит коммерческой компании, в интересах которой использовать его для собственной выгоды. А значит, нужен дополнительный слой защиты, например, EncFS. Полистаем хабр и гитхаб, вроде бы имеется решение о шифровании данных в своём облаке. Но есть неочевидное, но весьма важное неудобство, о котором в исходной статье не упоминается — для того, чтобы синхронизироваться, нужно локально хранить 600Гб шифрованных фотографий. Для скромных локальных хранилищ, в которых и нешифрованные 600Гб фотографий едва умещаются, это слишком много.
Масштабирование Git (и кое-какая предыстория)
2017-03-29 в 8:51, admin, рубрики: Bing, fuse, Git, Git Virtual File System, GVFS, open source, Source Depot, tfs, высокая производительность, разработка под windows, система контроля версий, управление исходным кодом, метки: Source Depot, управление исходным кодом
Несколько лет назад Microsoft приняла решение начать долгий процесс по восстановлению системы разработки во всей компании. Мы большая компания, с множеством коллективов — у каждого собственные продукты, приоритеты, процессы и инструменты. Есть некоторые «общие» инструменты, но их много разных — и ОЧЕНЬ БОЛЬШОЕ количество разработанных внутри компании инструментов одноразового использования (под коллективами я имею в виду подразделения — тысячи инженеров).
У этого есть отрицательные стороны:
- Множество избыточных инвестиций в коллективы, которые разрабатывают похожие инструменты.
- Невозможность финансировать какой-либо инструментарий до «критической массы».
- Затруднения для сотрудников в перемещении по компании из-за разных инструментов и процесса.
- Сложность в обмене кодом между организациями.
- Разногласия с новичками в начале работы из-за чрезмерного изобилия инструментов «только для MS».
- И так далее...
Automount afuse
2017-02-11 в 15:09, admin, рубрики: afuse, devops, fuse, fuse-fs, linux, linux desktop, Linux для всех, linux-сервер, mount, nix, ssh, sshfs, Настройка Linux, Оболочки, Серверное администрированиеЯ хотел рассказать про своё открытие afuse — автомонтирование файловых систем по требованию, автоматически.
Разве не здорово просто сделать:
ls /mnt/remote/web.example.com/var/lib/www/
и сразу увидеть файлы web-сервера, никак не устанавливая с ним соединение специально?
Я этим пользуюсь уже давно, а главное:
- Это работает из любого источника: Не важно, делаете вы указанный вывод в консоли, сохранили ссылку в MC или переходите из favorites вашего любимого менеджера такого как nautilus или dolphin
- Вы можете переходить на любой хост, куда у вас есть доступ по ключам (настроить запрос пароля тоже можно, но это не интересно)
- Вы можете запросто указать под каким пользователем входить на сервер, традиционно используя @:
cd /mnt/remote/apache@web.example.com/var/lib/www/
Файловая система, дешево и быстро
2016-11-19 в 14:13, admin, рубрики: emacs, fuse, org-mode, python, Разработка под Linux, файловая системаРазработчикам часто приходится иметь дело с файлами, представляющими из себя
древовидную структуру: XML, JSON, YAML, всякого рода языки разметки вроде
Markdown или Org-mode. Облегчая в общем и целом нашу жизнь, такие файлы имеют
склонность к бесконтрольному росту, в какой-то момент из решения превращаясь в
проблему.
Стандартное решение этой проблемы — разбиение на меньшие файлы. Это, конечно,
работает, но не всегда удобно.
Но существует и альтернатива, о которой — ниже.


