Перейти к содержанию

Вопрос

Опубликовано (изменено)

Синхронизировал недавно через FTP, SMB и SFTP файлы на диск NTFS подключенный к Keenetic KN-3810. Прошивка 4.0.2. Обнаружил, что часть файлов не копируется в один каталог. Конкретно, файлы с символами в имени с разным регистром или не копируются, если наличие файла проверяется, или молча затирают друг друга. Например файл test.txt и TEST.txt заменят друг друга, хотя вроде бы сама система NTFS должна поддерживать различные файлы с именем в разном регистре (если поддержка имён включена, не просто использовать разный регистр в имени файла, а позволять хранить файлы, отличающиеся только регистром в имени в одном каталоге). Исходно файлы хранились в системе, позволяющей хранить имена файлов в разном регистре, например Android может так хранить файлы при загрузке из сети.

При копировании файлов на EXT4 всё работает нормально, но тут уже мешает то, что всё должно храниться именно на NTFS. Так и должно быть или это баг? Если это баг, менялось ли что-то в новых прошивках? Можно ли монтировать в Keenetic диски с поддержкой чувствительности имён файлов к регистру?

Изменено пользователем Master2009
Дополнил сообщение.

Рекомендуемые сообщения

  • 0
Опубликовано
1 час назад, Master2009 сказал:

При копировании файлов на EXT4 всё работает нормально, но тут уже мешает то, что всё должно храниться именно на NTFS. Так и должно быть или это баг?

Так и должно быть, это особенность файловых систем.

  • 0
Опубликовано

Есть возможность перемонтировать диски NTFS для чувствительности к файловым именам, если надо? Windows при должной настройке может отличать разные регистры символов в именах, да и с android хотелось бы копировать их без переименования, т.к. этот конфликт имён обычно вовсе не очевиден. У меня молча один файл просто не копировался или затирал другой, хорошо, потом вручную проверил всё.

  • 0
Опубликовано

Исторически равнялись на Windows, где нет чувствительности к регистиру, плюс большинство пользователей не в курсе вообще что это такое. Поэтому возможности NTFS, SMB подрезаны под это, технически реализуемо сделать опцию.

 

  • 0
Опубликовано (изменено)

Проверил на loop-устройстве с NTFS в файле-образе диска, драйвер tntfs поддерживает монтирование NTFS в режиме чувствительности к регистру в имени файла, без "case_insensitive". Вообще пишут, что NTFS сама по себе чувствительна к регистру (POSIX), это Windows игнорирует регистр, для нее файлы test.txt и TEST.txt (дубликаты имён с разницей в регистре) выглядят одинаково и программы при доступе к Windows API не поймут разницы между ними. В случае наличия этих файлов в одном каталоге какие-то из них будут недоступны.

В Android, как оказалось, файлы test.txt и TEST.txt с английскими символами разного регистра не могут существовать в одном и том же каталоге, но во внутренней памяти (не на внешней карте памяти) может быть одновременно тест.txt и ТЕСТ.txt с русскими символами UTF8, которые успешно копируются на EXT4, но не на NTFS.

Вообще вся проблема в том, что при сохранении браузером или другими приложениями файлов или страниц в Android в каталогах периодически образуются файлы, отличающиеся только регистром в имени, иначе бы это никого не интересовало. При попытке их дальнейшей синхронизации с удаленным сервером дубликаты молча теряются, если не отслеживать их отдельно, что явно не годится.

 

К вопросу о возможности включения этой опции на Windows, начиная с Windows XP.

https://translated.turbopages.org/proxy_u/en-ru.ru.faa49f72-67ec1189-ff51cdbc-74722d776562/https/web.archive.org/web/20130330113158/http://support.microsoft.com/?scid=kb%3Ben-us%3B817921&x=9&y=4

Для Windows 10 можно включить её для отдельных папок.

https://learn.microsoft.com/ru-ru/windows/wsl/case-sensitivity

 

Хорошо, положим это так и просто хочется странного. Возможно ли или исходно в самом Keenetic монтировать, или если запущен OPKG, через него отмонтировать и потом перемонтировать диски без режима case_insensetive? Настраиваемые параметры при монтировании дисков?

Изменено пользователем Master2009
Исправил текст.
  • 0
Опубликовано
35 минут назад, Master2009 сказал:

Не открывается ссылка.

  • 0
Опубликовано

Вот можно ещё попробовать. Хотя речь идёт скорее о системе Windows Subsystem UNIX 

 

https://web.archive.org/web/20130330113158/http://support.microsoft.com/?scid=kb%3Ben-us%3B817921&x=9&y=4

 

https://superuser.com/questions/165975/are-all-versions-of-windows-case-insensitive

  • 0
Опубликовано
В 04.04.2025 в 21:12, Rootdiv сказал:

по ссылке ничего нет

У меня всё открывается.🤷 Может быть связность сети? Попробуйте прокси или что-то аналогичное.

Цитата

 

Enable case sensitive behavior with Windows XP and Interix Subsystem or SFU
If you use Interix 2.2 on a computer that runs Microsoft Windows XP, you cannot use files named like "abc.txt", "Abc.txt" and "ABC.TXT" in the same directory. This issue may also occur if you install Windows Services for Unix 3.0 and do not change the default behavior of Windows XP during SFU 3.0 setup. This issue does not occur if you use Window NT or Windows 2000.

Back to the top | Give Feedback

CAUSE

By default, the Windows XP subsystems other than the Win32 subsystem are case-preserving but not case-sensitive. However, by default, in earlier versions of Windows the subsystems other than the Win32 subsystem are case-sensitive.

Back to the top | Give Feedback

RESOLUTION

Warning If you use Registry Editor incorrectly, you may cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that you can solve problems that result from using Registry Editor incorrectly. Use Registry Editor at your own risk.

To change the behavior of Windows XP after you install Windows Services for Unix or when you use Interix 2.2, you must add the following registry key, and then restart the computer:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Kernel

Value Name:

ObCaseInsensitive

Data Type: REG_DWORD

Value Data: 0 (Case sensitive)

To support standard UNIX behavior, Windows Services for UNIX Setup permits you to change the default Windows XP behavior for non-Win32 subsystems when you install the base utilities (that install the Interix subsystem) or Server for NFS. If you turn on case sensitivity, and later remove Server for NFS and the base utilities, Windows Services for UNIX Setup restores the default, case-insensitive behavior of the non-Win32 subsystems.

 

 

  • 0
Опубликовано
8 минут назад, Master2009 сказал:

У меня всё открывается.🤷 Может быть связность сети? Попробуйте прокси или что-то аналогичное.

Через Firefox один раз открылась ссылка, через Google Chrome нормально открывается, странно. Ну да ладно, дальнейшее обсуждение ссылки уже оффтоп.

Присоединяйтесь к обсуждению

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

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...

Важная информация

На этом сайте используются файлы cookie. Нажимая "Я принимаю" или продолжая просмотр сайта, вы разрешаете их использование: Политика конфиденциальности.