У меня Windows 10 работает на ноутбуке с VirtualBox и гостем Linux.
Я много программирую для среды Linux и работаю с репозиториями исходного кода, расположенными в дереве каталогов FS /, совместно используемом хостом Windows и гостем Linux, например редактирую с помощью SublimeText, работающего под Windows, но выполняю компиляцию, тестирование, контроль версий и т.д. В терминал, связанный с гостем Linux.
По разным причинам мне нужны каталоги, в которых размещаются репозитории исходного кода, чтобы разрешить полную семантику Unix, то есть иметь возможность устанавливать uid/gid для владельца, биты разрешений, создавать fifos, символические ссылки и т.д. И т.д. И т.д.
Мне все равно, если эти функции не имеют общего использования между Windows и Linux. Мне нужно, чтобы эти вещи были четко определены на стороне Linux. Что касается Windows, мне просто нужно иметь возможность читать / записывать содержимое файла.
Я хочу, чтобы файлы размещались на стороне хоста Windows/, а не в гостевой системе Linux, поскольку я не хочу запускать гостевую систему Linux, чтобы файлы стали видимыми / доступными в Windows.
Как я могу настроить такую вещь?
Я пробовал разные вещи.
Кажется, vboxsf предлагает только небольшое подмножество функций Unix. Пожалуйста, поправьте меня, если я ошибаюсь.
Я пробовал posixovl поверх монтирования vboxsf, но я не могу заставить его поддерживать такую простую операцию, как «mkdir mydir; rm -rf mydir». Такая операция не удастся с «rm: не может удалить" mydir ": каталог не пуст». Мой диагноз проблемы с этим состоит в том, что он создаст файл "somedir/.pxovl", чтобы сохранить биты разрешения somedir и тому подобное на более низкой FS. На верхней ФС этот файл не виден, поэтому «rm -rf» не может избавиться от файла. Когда «rm -rf» пытается "rmdir mydir" на верхней FS, это вызовет попытку сделать это на нижней FS, которая не удалась, потому что файл «.pxovl» все еще там. Пожалуйста, поправьте меня, если есть решение, но это сводит меня с ума.
Я попытался настроить каталог как сетевой ресурс на стороне Windows, а затем подключить его через mount.cifs в Linux. Кажется, что такое монтирование также не предлагает должным образом Unix-функций, и в этом смысле имеет ограничения, подобные vboxsf, и я не могу найти никаких опций, которые позволили бы для любого типа эмуляции или чего-то подобного.
Мне пришло в голову, что, возможно, могут быть программы, которые можно настроить на стороне хоста Windows, которые предлагают реальную семантику Unix и выполняют какую-то эмуляцию функций Unix, таких как NFS-сервер или другой тип сервера для сетевых общих файловых систем, но Кажется, я не могу их найти.
Мне также пришло в голову, что оверлейные файловые системы могут быть полезным инструментом для создания такого решения, но не могут по-настоящему осмыслить, как может выглядеть такое решение.
Есть идеи?