Rsync from Cifs to NTFS

На самом деле это единственный раздел про unix на этом форуме

Модераторы: /dev/random, Модераторы разделов

Ответить
Аватара пользователя
technotrance
Сообщения: 280
ОС: Fedora, FreeBSD, CentOS, Debian
Контактная информация:

Rsync from Cifs to NTFS

Сообщение technotrance »

Здравствуйте!
Как и многие до этого, столкнулся с проблемой длинных имен файлов и каталогов в кириллице.
Итак, имеется следующее:
- Сервер Alt Linux 5.10.170-std-def-alt1
- Примонтированнаая виндовая шара через CIFS
- Отдельный диск под хранилище отформатированный в NTFS
- Скрипт, копирующий барахло из Cifs шары на диск NTFS
Вот сам скрипт (без воды):

Код: Выделить всё

# Поиск самой свежей копии TGN.
ActPathTGN="$(find /mnt/TGN-OTK -maxdepth 2 -name "TGN_*" | sed --regexp-extended 's/.*(..)\.(..)\.(....)$/\3-\2-\1\0/' | sort | tail -n 1 | cut -c 11-)"

# затягивание найденной копии к себе в хранилище.
rsync --bwlimit=38000 --log-file=/home/scripts/tgn-week.log -aq "$ActPathTGN" "/storage/TGN/"
Собственно, он ищет самую свежую папку, а-ля TGN_11.06.2023 и затягивает её к себе. А в этой папке немерено всякого файлового юзерского барахла. И очень много файлов с длинными именами.
Именно поэтому я и отформатировал диск в NTFS - на эту фс линукс позволяет записывать файлы с длинными именами, если это делать вручную. При отработке же скрипта у меня сыпятся уже знакомые ошибки:

Код: Выделить всё

rsync: [sender] send_files failed to open "/mnt/TGN-OTK/Z/TGN_11.06.2023/Контора/Служба продаж/Тендеры для заливки/БАЗА ТЕНДЕРОВ/82. Поставка (АГНКС) для объектов ООО Татнефть-АЗС Центр, ООО Татнефть-АЗС Запад/Макет условий договора о порядке приема-передачи выполненных работ (оказанных услуг), предоставлении первичных учетных документов и счетов-фактур (ЕРБ 287-2020).pdf": File name too long (36)
Однако! Если я вручную ввожу команду:

Код: Выделить всё

rsync --bwlimit=38000 --log-file=/home/scripts/tgn-week.log -aq "/mnt/TGN-OTK/Z/TGN_11.06.2023/Контора/Служба продаж/Тендеры для заливки/БАЗА ТЕНДЕРОВ/82. Поставка (АГНКС) для объектов ООО Татнефть-АЗС Центр, ООО Татнефть-АЗС Запад/Макет условий договора о порядке приема-передачи выполненных работ (оказанных услуг), предоставлении первичных учетных документов и счетов-фактур (ЕРБ 287-2020).pdf" "/storage/TGN/TGN_11.06.2023/Контора/Служба продаж/Тендеры для заливки/БАЗА ТЕНДЕРОВ/82. Поставка (АГНКС) для объектов ООО Татнефть-АЗС Центр, ООО Татнефть-АЗС Запад/"
то команда отрабатывает! Файл копируется. Почему? Ничего понять не могу. То ли скрипт у меня криво написан, то ли в другом месте криво :g: С другой стороны, кривой скрипт вовсе бы не работал. Подскажите, куда копать?
Спасибо сказали:
Ответить