Linda-chan
А что, в линупсе тоже есть максимальная длина файла или это просто Дропбокс такой умный, что не может скачать файл с именем в 182 символа?
Дата рождения: 01.11.1983
Тотальная неудачница и убийца жёстких дисков. Самая большая поклонница Ариэль. Член ордена Вселенского тормоза имени Осаки-сан. Любительница каваййных переднеприводных машинок. Суккуб на полставки. Когти прилагаются.
Linda-chan
А что, в линупсе тоже есть максимальная длина файла или это просто Дропбокс такой умный, что не может скачать файл с именем в 182 символа?
Graf
Linda-chan, смотря какая файловая система
Toyoku-mono
Техническое ограничение вроде как есть, но это зависит от файловой системы, разве нет?
Toyoku-mono
BTRFS 255 bytes
exFAT 255 UTF-16 characters
ext2 255 bytes
ext3 255 bytes
ext3cow 255 bytes
ext4 255 bytes
FAT32 8.3 (255 UCS-2 code units with VFAT LFNs)
NTFS 255 characters
XFS 255 bytes
Linda-chan
Linda-chan
Linda-chan
Graf
Linda-chan, /3 таки. Но полный путь - не лимитирован.
Toyoku-mono
В линуксе тоже есть лимиты ан путь - https://serverfault.com/que...s-on-linux/9548#9548
Linda-chan
Toyoku-mono
Linda-chan
Linda-chan
Linda-chan
Toyoku-mono
Graf
Toyoku-mono, как интересно. не лимитирован для FS, но лимитирован, сцуко, со стороны ОС, из-за используемого типа данных
Graf
Toyoku-mono
Linda-chan
Graf
Toyoku-mono, нихрена неясного, я вот токо шо открыл limits.h и своими глазами прочитал)
короче, длинна полного пути файла сохраненного в хомяке - 4091-len(username)
Toyoku-mono
Graf
Linda-chan
Graf
Toyoku-mono, С:\Хрень по работе\Гемор\Тупые клиенты\Неплательщики\охуевшие\Уважаемый Сергей Анатольевич.doc
Toyoku-mono
Linda-chan
Toyoku-mono
Graf
Linda-chan, %windir%\system32\drivers\etc\porno?
Linda-chan
Graf
Linda-chan, вот, а ты клиент дропбокса через strace запусти
Toyoku-mono
Linda-chan
Toyoku-mono
Linda-chan
Taciturn
Ну, как сказать. Из первого же результата по «MAX_PATH» в Google:
В приложениях, которые используют Win API для работы с файлами, рецепт избавления от ограничения MAX_PATH был известен с незапамятных времён – необходимо было использовать Unicode версию функции с окончанием «W» для работы с директорией или файлом и начинать путь с префикса \?. Это давало возможность использовать пути длинной до 32767 символов.
+
В Windows 10 (1607) поведение функций для работы с файлами изменилось: появилась возможность отключить проверку ограничений MAX_PATH на уровне системы.
Так что таки отменяли.
Taciturn
Taciturn
Linda-chan
Linda-chan
Linda-chan
Graf
Linda-chan, как я счастлив, что избавлен от этого дерьма
Toyoku-mono
Graf
Toyoku-mono, не, просто ни одной венды дома нету
Toyoku-mono
Graf
Toyoku-mono, упаси Торвальдс
akagitsune
как ни странно, но таки есть и на длину пути и имена. иногда выскакивает, когда пытаешься например бекап хомяка с винды распаковать на месте в глубинах хранилища. Особенно припекает несоответствие
"NTFS - 255 characters" и "linups fs - 255 bytes"
Taciturn
Linda-chan
Graf
Graf
Linda-chan, 255 чего?
Linda-chan
lpMaximumComponentLength
Points to a doubleword value that receives the maximum length, in characters, of a filename component supported by the specified file system. A filename component is that portion of a filename between backslashes.
The value stored in variable pointed to by *lpMaximumComponentLength is used to indicate that long names are supported by the specified file system. For example, for a FAT file system supporting long names, the function stores the value 255, rather than the previous 8.3 indicator. Long names can also be supported on systems that use the New Technology file system.
Graf
Linda-chan, даблворд - это ж 4 байта на символ, не?
Linda-chan
Graf
Graf
Linda-chan, ну, всегда остается "волевое решение"
Linda-chan
Linda-chan
Graf
Linda-chan, Ура. решение найдено. А обмен между вендой и лялихом шел?
Linda-chan
Linda-chan
Linda-chan
Linda-chan
Graf
Linda-chan, там что, тоже USC-2? По образу и подобию MS?
Короче, виновный найден - криворукие писатели дропбокс-клиента, которые нихрена не в курсе о кодировках, используемых в ФС
Graf
Linda-chan, Корпоративные клиенты либо сидят на одном стэке технологий, либо, не такие уж они корпоративные...
Linda-chan
Linda-chan
Graf
Linda-chan, перекодировать из USC-2 в uft-8.
Данные от том, с какой ОС подключился клиент - у них имеются
Graf
Linda-chan, это не у меня, это у Поставщиков Корпоративных Решений
Linda-chan
akagitsune
Graf
Linda-chan, как ты убедилась, стащив файл в веба, это даже браузеры умеют. вернее, веб-морда, браузерам выдает то, что они умеют.
Веб-приложение, должно отдать клиенту то, что умеет клиент. Браузерам отдали, а собственному клиенту - не сумели
Graf
akagitsune, ну, давай нихрена не выдавать и не копировать файл, так лучше?
Linda-chan
Graf
Linda-chan, мне имя файла от сервера УЖЕ должно прийти в utf-8, ибо в заголовке запроса указано, что это Client DropBox/Linux
akagitsune
Linda-chan
Ты говоришь какую-то чушь. Броузеру выдаётся файл с таким-то именем, броузер предлагает сохранить этот файл, используя системный/тулкитный диалог. Если не сохраняется, пользователь меняет имя файла, как нужно. Клиент делает тоже самое, но ты предлагаешь ему самому догадаться, как разрулить ситуацию.
Graf
akagitsune, программа для пользователя или пользователь для программы? то что ты предлагаешь - это второй случай. "ну не шмогла я" и ебитесь как хотите
Graf
Linda-chan, я предлагаю запрашивать у клиента кодировку фс и выдавать ему данные в этой кодировке. Имхо, как-то логично
Linda-chan
Graf
Linda-chan, окай, не клиента. дело СЕРВЕРА дропбокса, отдать данные в правильной для клиента кодировке. Так лучше?
Linda-chan
Linda-chan
Graf
Linda-chan, уверен, что нет. как ты писала выше, клиент тупо использует системную функцию. Следовательно, переконвертация кодировок для различных ФС и даже локалей, должна ложится на сервер.
Graf
Linda-chan, да вдвойне чушь, если учесть, что файл как-то залился на дропбокс, а на том же дропбоксе - линукс, со всеми вытекающими.
Taciturn
Linda-chan
Linda-chan
Graf
Linda-chan, збс
Graf
Graf
Linda-chan, уела
Linda-chan
Taciturn
Toyoku-mono
Graf
Linda-chan, бля. ты ведьма. а я себе моск ломаю.
А у изначального заливальщика, что с файлом станет? тоже переименуется?
Linda-chan
Ну дык. Была же метода получения файлов из любого аккаунта по хэшу файла. Тоесть можно предположить, что там файлы хранились в одной куче, искались по хэшу, а в БД уже хэши были распределены по конкретным аккаунтам. Потом дело прикрыли, но, скорее всего, просто сверкой доступных хэшей в аккаунте.
Linda-chan
Graf
Linda-chan, какие данные, какая база...
Linda-chan
Он заливал не через клиент, а через фичу «File Request». Тоесть что-то типа входящих файлов: заливать может любой, у кого есть правильная ссылка, а смотреть залитое только я.
Graf
Linda-chan, кокой ужос(
Linda-chan
Я в базах не очень.
Linda-chan
Удобная штука.
Toyoku-mono
Данные хранить непродуктивно
Graf
Linda-chan, в NoSQL хранилищах, вполне себе быстро и чотко можно хранить всякую бинарную хуету.
Graf
Toyoku-mono, Ораклу про это расскажи
Toyoku-mono
В: О великий Оракул, эффективно хранить данные?
О: Эффективно хранить картоху и лук, консервы там всякие!
Graf
Toyoku-mono, ога, а так же патроны, тушенку, крупы...
Toyoku-mono
... трупы.
Graf
Toyoku-mono, Трупы? Хранить? Какой с них профит?
Toyoku-mono
тушенка кстати не прикольна, лучше морской экстренный паек.
Toyoku-mono
Профит в отсутствии отсидки, например.
Graf
Toyoku-mono, скорми свиньям, и не будет вонять
Toyoku-mono
А не проще на гуляш и холодец?
akagitsune
Linda-chan, в общем, если это что-то корпоративное и расчитано на кроссплатформенность, то имеет смысл запретить клиенту создавать и заливать файлы с именами и путями длиннее консенсусного максимума для кроссплатформенных клиентов. Ну или все на ntfs перевести, чтоб мозги не парили.
Graf
Toyoku-mono, крупные кости куда девать? Они ж вполне узнаваемы.
А после свиней - только коронки останутся...
Toyoku-mono
Из костей сделать поделки, продавать на ближайшей ЖД станции.
Graf
Toyoku-mono, это ты такое творческое, а я даже стол никак не зопилю(
Toyoku-mono
Стол из костей?
Graf
Toyoku-mono, не, из дерева. и найти еще 8 учеников
33 года, плотник, 13 учеников, вот это все... опоздал на 3 года уже
Toyoku-mono
Лидером секты заделаться?
Graf
Toyoku-mono, пуркуа па?
mva
вообще, это ФС-зависимо, но ни одна из известных мне использумых линупсоидами ФС не имеет ограничения в 182 (однобайтных) символа в имени файла (например, у tmpfs и ext4 - 255 байт)...
Впрочем, не то, чтобы я копал глубоко и был точно уверен, что это ограничение полностью на уровне фс
Linda-chan
Где-то выше пришли к выводу, что таки ограничение на уровне ФС сработало. Имя файла было на русском, и в 255 байт не вписалось.