Проигнорируйте скрытые файлы окон при копировании с rsync

Существует определенно предпочтительная разновидность. Это - дистрибутив, который Вы знаете лучше всего, так, чтобы Ваши затраты на обслуживание были максимально низкими.

Не слушайте людей, которые скажут, что Вы "Дистрибутив X являетесь лучшими". Они просто, оказывается, знают этот дистрибутив лучше всего, для этого они, вероятно, используют много инструментов удобства, которые идут с дистрибутивом для управления им.

Так используйте дистрибутив, из которого у Вас есть большая часть знания, не слушайте никого больше дающего Вам совет, что Дистрибутив X лучше, чем Дистрибутив Y.

Пойдите с FreeBSD, OpenSolaris, Plan9, LFS или независимо от того, что Вы знаете, просто не идите с чем-то, что кто-то еще знает

3
задан 12 November 2009 в 15:09
3 ответа

Для получения атрибутов DOS в Linux, необходимо будет отредактировать smb.conf файл.

Существует два различных способа импортировать атрибуты Windows.

Первая опция состоит в том, чтобы установить map hidden = yes который будет означать, что скрытые файлы в Windows будут иметь мир, выполняют набор битов на Linux. Чтобы это работало, Вы должны также иметь, по крайней мере, 001 в Вашем create mask.

Другая опция состоит в том, чтобы установить store dos attributes = yes который будет означать, что атрибуты Windows будут сохранены в расширенном атрибуте в вызываемом пользователе файловой системы Linux. DOSATTRIB.

rsync не имеет способности отфильтровать файлы или на основе нормальных или на основе расширенных атрибутов, но она может исключить список файлов, которые Вы подготовили некоторым другим способом. Можно использовать find команда для создания этого списка на основе атрибутов Unix. Версия find Я имею, кажется, не поддерживает расширенные атрибуты, но могло бы все еще быть возможно использовать -exec опция в find получить расширенные атрибуты всех Ваших файлов и фильтра на них.

С тех пор find может отфильтровать на нормальных полномочиях Unix, если Вы выбрали, мир выполняют разрядную опцию затем find . -perm -001 найдет все скрытые файлы в Вашей смонтированной файловой системе Windows. Можно поместить этот список в файл и затем использовать rsync --exclude-from=FILE исключить те файлы из Вашего rsync.

1
ответ дан 3 December 2019 в 07:45
  • 1
    Спасибо за ответ. Я в настоящее время использую gvfs для монтирования удаленной системы, которая не имеет той опции, но ответ является самым подробным и будет, вероятно, относиться ко многим другим ситуациям. Я возможно переключусь на Samba, таким образом, я смогу использовать Ваше решение. Еще раз спасибо. –  Guss 16 November 2009 в 14:11

Я не полагаю, что rsync имеет любое понимание, какие файлы отмечены "Скрытые" в Windows fileshare. У файлов есть что-либо еще общее, такое как формат имени? Можно использовать - исключают, или - исключают - от опций до имен файлов соответствия шаблона для не копирования. (-exclude-from=xyz опция загружает эти исключения из файла, тогда как - исключают опцию, указывает их на командной строке.)

0
ответ дан 3 December 2019 в 07:45
  • 1
    В настоящее время я использую - исключают, но список довольно длинен и его громоздкое для управления (даже в отдельном файле). Я думаю " скрытый file" семантика сделана доступной через SMB, монтируются, потому что Наутилус обрабатывает их отлично. –  Guss 12 November 2009 в 16:53

У меня нет ответа для Вас, но я не думаю, что rsync является правильным местом для взгляда. Я или попытался бы найти что-то в параметрах совместного доступа на стороне окон, или mount.cifs опции.

Это могло бы быть возможное использование расширения ACL, но нет ничего в традиционных полномочиях Unix, которое делает файл скрытым. Это просто скрыто, если имеет период как первый символ в файле / имя dir.

0
ответ дан 3 December 2019 в 07:45
  • 1
    Изменение вещей на стороне Windows не является действительно выполнимым (иначе, я просто пошел бы и удалил бы файлы перед передачами). Я don' t хотят к скрытым make-файлам - просто понимают, как я могу сказать, что они, поскольку я упомянул, что некоторое приложение на стороне Linux может сказать различие так или иначе. –  Guss 12 November 2009 в 18:07

Теги

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