Что-то как символически связанный файл, но с присоединенными деталями изменения?

Если SFTP доступен на сервере (это обычно), можно использовать SSHFS. Это позволяет Вам смонтировать удаленные файлы на клиенте. Вам нужны демон SFTP на сервере и FUSE на клиенте.

mkdir /net/myserver
sshfs myserver:/ /net/server

Можно затем использовать любую локальную команду такой как cp, chmod, rsync, и т.д., не имея необходимость волноваться, являются ли файлы локальными или удаленными. С rsync, передайте --no-whole-file опция сказать этому использовать свой сохраняющий пропускную способность алгоритм передачи дельты (который иначе выключен, когда rsync полагает, что оба пути локальны).

rsync -a --no-whole-file somedir /net/myserver/somewhere

2
23.05.2017, 15:40
2 ответа

Вы смогли создавать это с FUSE или одной из систем наложения как UnionFS. Я не думаю, что это может быть сделано или без драйвера файловой системы или без создания каждой программы, которая получает доступ к нему, используют взломы LD_PRELOAD для изменения поведения чтения ().

Существует несколько вероятных проблем реализации:

  • для применения изменений необходимо считать оба файла и сохранить промежуточное звено так или иначе; http://en.wikipedia.org/wiki/Rope_%28data_structure%29 может помочь, но что, если основной файл и файл изменений - оба несколько Гбит в размере? Кроме того, это остановит программу, которая открывает файл, в то время как Вы применяете изменения.

  • что происходит, если базовый файл изменяется таким способом, которым больше не применяются операторы изменения?

  • на самом деле, что происходит, если базовый файл изменяется вообще?

  • что происходит, при попытке записать в исправленный файл?

3
27.01.2020, 22:00

Вы смогли делать что-то вроде этого использование patch. "Символьная ссылка" затем в основном была бы сценарием оболочки, который читает оригинал и применяет патчи. Но я не услышал ни о чем готовом, которое делает то, что Вы хотите; если бы кто-либо еще придумывает его, мне очень было бы интересно. Иначе это было бы интересное осуществление программирования.

1
27.01.2020, 22:00

Теги

Похожие вопросы