Я думаю про ситуацію, коли я мав би щось, що створює копію каталогу, перетворює кілька файлів, а потім виконує деяку обробку результату. Це можна робити досить часто, можливо, кілька десятків разів на день. (Точний випадок використання - це тестування подань патчу; обробляйте код, виправляйте його, будуйте / випробовуйте / доповідайте тощо).
Що я шукаю, можна зробити, створивши нову структуру каталогів і заповнивши її жорсткими посиланнями з оригонального. Однак це працює лише в тому випадку, якщо всі інструменти, якими ви користуєтесь, видаляєте та відтворюєте файли, а не редагуєте їх на місці.
Чи є спосіб, щоб файлова система копіювала-записувала для файлу?
Примітка. Я знаю, що багато FS використовують COW на рівні блоку (усі оновлення здійснюються за допомогою запису в нові блоки), але це не те, що я хочу.
cp
і ln
робить майже те саме. Блок рівня COW - хитрість мінімізувати інтервал, коли метадані FS невірні: en.wikipedia.org/wiki/ZFS#Copy-on-write_transactional_model