Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программное обеспечение Linux и FreeBSD (http://forum.oszone.net/forumdisplay.php?f=11)
-   -   [решено] VSftpd could not create file (http://forum.oszone.net/showthread.php?t=328027)

archevod 02-07-2017 08:40 2748519

VSftpd could not create file
 
Доброго дня.
В локальной сети имеется комп с шарой (win 2k8). На нем крутится cobian backup, который бэкапит расшаренную папку в 2 места - по smb на другой виндовый сервер и по ftp на debian с vsftpd. Есть несколько файлов, которые на ftp не хотят отправляться, в логах cobian пишет could not create file. Закрались мысли, что связка путь+имя небэкапящихся файлов слишком длинное и vsftpd (или debian?) их отвергает (эти же файлы на smb c win кидаются нормально). Может кто нибудь подскажет, где в лине или фтп отыскать эту настройку?

Jula0071 02-07-2017 17:39 2748596

Цитата:

Цитата archevod
Есть несколько файлов »

Пример?
Цитата:

Цитата archevod
что связка путь+имя небэкапящихся файлов слишком длинное »

У современных ФС это вряд ли. Может, ограничение самого протокола ftp. Хотя, если сервер соответствует RFC 2640, проблем быть не должно.

Как выход, можно перед заливкой закатывать бекапы в тарболы. Или пользоваться чем-нибудь менее поросшим мохом, чем ftp, например rsync.

archevod 03-07-2017 12:31 2748733

Цитата:

Цитата Jula0071
Пример? »

2017-07-02 01:15 Ошибка закачки файла "C:\Share-Server\graf_files\А63-3208_2012\607658901\Документ, подтверждающий отправку Истцу заказным письмом с уведомлением о вручении копии отзыва и прилагаемых к нему документов, которые у Ответчика отсутствуют 1 л..pdf": Could not create file.

mwz 03-07-2017 13:01 2748748

archevod, между кавычками 220 символов, до максимума вроде бы ещё ~тридцать в запасе. Но это для Windows: насколько помню (но может быть спецы меня и поправят), в некоторых *nix ограничение до 255 (ну может на один-два меньше) на количество байт в имени. Юникодные же русские символы кодируются двумя байтами, т.е. в байтах уже заметный перебор. Возможно имеет смысл копать в эту сторону.

Jula0071 03-07-2017 19:49 2748873

Цитата:

Цитата mwz
в некоторых *nix ограничение до 255 (ну может на один-два меньше) на количество байт в имени. »

Верно. Большинство файловых систем, используемх в линуксах, имеет ограничение на длину имени файла в 255 байта. Только и у NTFS такое же ограничение. Но
Код:

$ echo "Документ, подтверждающий отправку Истцу заказным письмом с уведомлением о вручении копи отзыва и прилагаемых к нему документов, которые у Ответчика отсутствуют 1 л..pdf" | wc -c
309

показывает, что это ограничение как то обходится.
archevod, для проверки, выполните на своём линуксе
Код:

touch "/tmp/Документ, подтверждающий отправку Истцу заказным письмом с уведомлением о вручении копии отзыва и прилагаемых к нему документов, которые у Ответчика отсутствуют 1 л..pdf"
ls -la "/tmp/Документ, подтверждающий отправку Истцу заказным письмом с уведомлением о вручении копии отзыва и прилагаемых к нему документов, которые у Ответчика отсутствуют 1 л..pdf"


mwz 04-07-2017 09:52 2748956

Цитата:

Цитата Jula0071
Большинство файловых систем, используемх в линуксах, имеет ограничение на длину имени файла в 255 байта. Только и у NTFS такое же ограничение»

Можно я повторю по поводу Windows?
Для Windows ограничение длины имени (включая путь) — несколько больше 250 символов, но не байт.

Смотрим хотя бы проблемы Линуксового сообщества, куда я заглядываю редко и поэтому высказался лишь предположительно, например Bug 9266 - Увеличить ограничение на длину названия файла в Linux
Цитата:

Цитата оттуда
Для русских букв в Linux ограничение на длину названия файла в два раза меньше, чем Windows: В Linux — 255 байт (и кодируем в UTF-8, в Windows — 260 символов (кодированных в UTF-16 (UCS2).

А также Энциклопедия Windows и масса других источников (до сайта MS просто не добрался). Ну и практика, полностью это подтверждающая.

PS
Не хотел лезть в педивикию — но вроде здесь информация выверялась. Хотя, как я уже говорил, читаешь в ней статьи по медицине — ну как всё точно и понятно. Читаешь по своей области — ну что за бред несут... Спрашивал врачей — у них то же отношение: "читаешь в ней статьи по технике — ну как всё точно и понятно. Читаешь по своей области — ну что за бред несут...".

PPS
А, вот косвенное с сайта MS, 2012 год, по поводу длины имён в планировавшейся ReFS:
Цитата:

Maximum file name length
32K 255 unicode characters (for compatibility this was made consistent with NTFS for the RTM product)
Ну а в Win-10 уже можно использовать длину имени до 32К символов без ухищрений типа имени-ресурса (использование префикса \.\\ или \?\\, что работает и в ХР), что приведёт к увеличению количества вопросов, поднятых в теме, даже при обмене между компьютерами Win10<->Win7.

archevod 06-07-2017 03:06 2749462

Цитата:

Цитата Jula0071
для проверки, выполните на своём линуксе »

Да, вы правы, где то есть ограничение:
Код:

touch: cannot touch '/home/black/Документ, подтверждающий отправку Истцу заказным письмом с уведомлением о вручении копии отзыва и прилагаемых к нему документов, которые у Ответчика отсутствуют 1 л..pdf': File name too long

Jula0071 06-07-2017 11:35 2749526

Цитата:

Цитата archevod
Да, вы правы, где то есть ограничение: »

Тогда архивируйте бекап перед заливкой на фтп.

Или можно переразбить раздел для бекапов в ту же NTFS, или Reiser4, в общем, в ФС поддержкой имён файлов длиной не менее 255 UTF-8 символов.

ruslandh 12-07-2017 00:58 2750778

Для справки:
http://wiki.etersoft.ru/Linux/VLFN


Цитата:

В Windows для именования файлов принята кодировка UTF-16, то есть каждый символ в названии файла кодируется двумя байтами (16 бит). Максимальная длина имени файла — 255 символов (510 байт). В Linux же для именования файлов принята кодировка UTF-8, при этом максимальная длина файла составляет 255 байт (а не символов).
Цитата:

Так как в UTF-8 для кодирования русских букв используется два байта, то максимальная длина имени файла, состоящего из русских букв, фактически составляет 127 символов. В связи с этим появляется проблема - длинные имена файлов (от 128 до 255 русских символов) не влезают в установленные для них ограничения в Linux.

archevod 16-07-2017 17:40 2751778

Всем спасибо. Отформатировал в ntfs, проблема решена


Время: 21:09.

Время: 21:09.
© OSzone.net 2001-