
Я хочу сделать резервную копию своего домашнего каталога на разделе NTFS (досадное ограничение). Однако, когда я в последний раз пытался использовать только cp
, атрибуты (владелец и т. д.) исчезли. Как мне сделать резервную копию, сохранив эти атрибуты? Мой первый инстинкт — сделать tarball, но я не уверен, сработает ли это.
Для справки, я использую Ubuntu Raring devel.
решение1
К сожалению, модель разрешений NTFS и Unix совсем не похожи. Просто нет способа разумно сопоставить их.
Используйте tar
, но внимательно прочтите документацию, чтобы все разрешения были сохранены в точности (включая ACL и контексты SELinux).
решение2
Мне интересно, как никто никогда не приводит примеров и предполагает, что «резервное копирование с помощью tar» — достаточно полезный ответ. По моим меркам это не так. Вот как я это делаю:
ionice -c2 -n5 nice -n9 tar czvf - /media/somelinuxdrivepath | split -b 16m - /media/usb/ntfsmounted/back.tar.gz.
и затем распаковать:
ionice -c2 -n5 nice -n9 cat /media/usb/ntfsmounted/back.tar.gz.* | tar xzvf - /media/somenewlinuxpath
Я использую ionice, nice и разбиваю на файлы по 16 МБ, потому что смонтированный usb-диск NTFS медленный, а RAM без него полностью заполнится, и/или система linux просто зависнет и вылетит. Ваши результаты могут отличаться в зависимости от вашего оборудования.
решение3
Просто используйте tar
для дампа данных и getfacl
/ setfacl
для хранения/восстановления ACL. Даже если бы NTFS поддерживала разрешения UNIX, вам пришлось бы обеспечить сопоставление идентификаторов и имен пользователей/групп, что tar
делается автоматически (имейте в виду, что некоторые — обычно довольно старые или неосновные — версии утилиты не хранят имена пользователей/групп, а только числовые идентификаторы).