Как сделать Windows 7 полностью чувствительной к регистру в отношении файловой системы?
Я хочу сделать Windows 7 чувствительным к регистру, когда он читает / записывает что-либо на жесткий диск (диск C или любой другой диск NTFS).
Я нашел видео через Google, который говорит, чтобы изменить раздел реестра
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\DontPrettyPath
До значения 1 ( источник ).
- Существует ли преемник NTFS?
- Является ли ext4 более дорогим, чем ntfs?
- Как узнать, какой файл находится в определенном секторе
- Windows не монтирует USB-флеш-диск NTFS
- Скрыть раздел из Windows 10 для предотвращения проблем с гибридным отключением в Linux
Я также нашел элемент поддержки Windows, который говорит что-то об изменении раздела реестра
HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\kernel\obcaseinsensitive
Что заставляет меня предположить, что значение 0 сделает Windows чувствительным к регистру с файловыми системами NTFS ( источник ).
У меня такое чувство, что второе решение – ответ, но я не уверен, и я не хочу попробовать его, не будучи уверенным.
Кто-нибудь знает наверняка, какой правильный способ сделать Windows 7 чувствительным к регистру при чтении / записи на диск C (и любой другой диск NTFS)?
- Ext4 (dm-crypt) и NTFS (битлокатор) для общего раздела
- Список всех файлов и каналов без рекурсии с перекрестками
- Как исправить поврежденную / поврежденную файловую систему NTFS без потери данных?
- Доступ к файлам, зашифрованным EFS, после сброса пароля Windows
- Возможно ли восстановить MFT раздела NTFS после формата?
- Несовместимость диска Windows 8 и 7 NTFS
- Преобразование внешнего жесткого диска в NTFS
- Sitecopy настаивает на ~ / .netrc с 600 правами, но мой ~ / находится в разделе NTFS
Вы можете установить значение реестра HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\kernel\ dword:ObCaseInsensitive
значение 0
как предлагали другие авторы. Создайте файл с именем add.reg
со следующим содержимым и запустите его.
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel] "obcaseinsensitive"=dword:00000000
Затем используйте Cygwin для работы с именами, чувствительными к регистру.
Для этого вам необходимо установить файловые системы NTFS с параметром posix=1
в вашем /etc/fstab
, как предлагает эта статья . Вот фрагмент из моей fstab
:
none /cygdrive cygdrive binary,posix=1,user 0 0 C: /cygdrive/c ntfs binary,posix=1,user,auto 0 0 C:/Users /home ntfs binary,posix=1,user,auto 0 0
После того, как это будет сделано, вы сможете обрабатывать имена файлов с учетом регистра, используя bash
, mc
, git
и т. Д.
Чтобы фактически создать 2 файла с тем же именем, но в другом случае в одном каталоге, вам нужно установить Unix Services 3.5, но это работает только на 32-битной Windows. Затем вам нужно запустить «C Shell» для создания файлов. Вы не можете создавать файлы через проводник. После создания проводник не играет хорошо с файлами. Если вы переименуете второй, курсор переместится к первому. Кроме того, большинство приложений могут открывать только один из файлов, так как они ожидают файловую систему без учета регистра. Если вы на 64-битной установке Cygwin и измените его на чувствительный к регистру.
Я пытался подражать файловой системе с учетом регистра Linux для целей отладки во время разработки. Похоже, что лучшим подходом является использование VMWare с экземпляром Ubuntu для разработки.
Все эти настройки, которые вы можете найти в Интернете, предназначены для NFS, а не для NTFS (обратите внимание на разницу)!
NFS (Сетевая файловая система) – это сетевой протокол.
Таким образом, изменение ключа реестра HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\kernel\obcaseinsensitive
НЕ изменяет ничего, что вы хотите.
NTFS чувствительна к регистру, но Windows API НЕ , он запоминает только имя файла. Это означает, что, несмотря на то, что ваш файл отображается как AbC.TXT
он по-прежнему доступен через abc.txt
и aBc.TxT
. Это ограничение Windows, а не NTFS.
Другой HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\DontPrettyPath
основном отключает нормализацию устаревших имен файлов 8.3, используемых DOS (все это шапки). Когда он включен (по умолчанию), ABC.TXT
будет отображаться как Abc.txt
, но все же будет доступен для всех остальных вариантов.
Чтобы быть более точным:
На самом деле это зависит от программного обеспечения, которое обращается к FS.
Если он использует WIN32 API (который составляет 99,9% от программного обеспечения), он будет нечувствителен к регистру, что бы вы ни делали. Все встроенное программное обеспечение в Windows (например, Explorer, командная строка, Internet Explorer и т. Д.) И все потребительское программное обеспечение там используют WIN32 и всегда не учитывают регистр.
Служба NFS, Java и некоторые другие являются POSIX, и они будут подчиняться настройке реестра «obcaseinsensitive». Однако при выключении опции могут возникнуть проблемы, потому что это программное обеспечение может создавать файлы, которые не доступны из самой Windows и другого программного обеспечения Win32.
Я думаю, это то, что вы ищете:
http://www.chilkatsoft.com/p/p_454.asp
На этой странице рекомендуется настроить HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\kernel\ dword:ObCaseInsensitive
на 0, чтобы сделать его чувствительным к регистру. Я думаю, вы это уже нашли, и это похоже на стандартный способ сделать это (даже найденный Microsoft KB предлагает это).
Похоже, вам нужно изменить настройки ядра. Остерегайтесь обновлений, хотя.
EDIT: Остерегайтесь, однако, некоторые программы могут зависеть от нечувствительности к регистру.
EDIT: Возможно, вы можете использовать раздел UDF. Эта файловая система чувствительна к регистру, и я думаю, что она работает как на Windows, так и на Linux.
Смотрите это и это .
Что Microsoft говорит о NTFS и меняет чувствительность к регистру.
Похоже, вам не нужно менять ядро, чтобы разрешить поиск с учетом регистра в сети.
http://technet.microsoft.com/en-us/library/cc783185(WS.10).aspx
,
Настройка чувствительности к регистру для имен файлов и папок
Назначение: Windows Server 2003 R2
Чтобы настроить чувствительность к регистру для имен файлов и папок с помощью интерфейса Windows Откройте «Службы Microsoft для сетевой файловой системы»: нажмите «Пуск», выберите «Программы», «Администрирование» и «Службы Microsoft для сетевой файловой системы».
При необходимости подключитесь к компьютеру, которому вы хотите управлять.
Щелкните правой кнопкой мыши «Сервер для NFS» и выберите «Свойства».
Перейдите на вкладку «Обработка имен файлов».
Выполните одно из следующих действий:
Чтобы включить зависящие от регистра файлов имена файлов и каталогов, установите флажок «Включить регистр».
Чтобы отключить зависящие от регистра файлов имена файлов и каталогов, снимите флажок «Включить регистр».
Нажмите «Применить».
Важные Эти изменения не вступят в силу до перезапуска сервера для NFS. Сведения о том, как остановить и запустить сервер для NFS, см. В разделе Запуск и остановка сервера для NFS. Вам также необходимо отключить нечувствительность к регистру Windows, чтобы сервер для NFS поддерживал имена файлов с учетом регистра. Вы можете отключить нечувствительность к ядру ядра Windows, очистив следующий раздел реестра до 0: HKLM \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ kernel DWORD "obcaseinsensitive"
Настройка чувствительности к регистру для имен файлов и папок с помощью командной строки Откройте командную строку.
Чтобы включить чувствительность к регистру, введите следующее:
Nfsadmin server [ComputerName] config casesensitivelookups = yes
Чтобы отключить чувствительность к регистру и опционально указать случай имен файлов, возвращаемых сервером для NFS, введите в командной строке следующее:
Nfsadmin server [ComputerName] config casesensitivelookups = no [ntfscase = {upper | Ниже | сохранение}]
Аргумент> Имя компьютера = имя компьютера, который вы хотите настроить.
Важные Эти изменения не вступят в силу до перезапуска сервера для NFS. Сведения о том, как остановить и запустить сервер для NFS, см. В разделе Запуск и остановка сервера для NFS.
Примечание. Параметр ntfscase устанавливает чувствительность к регистру для файловой системы NTFS. Чувствительность к регистру по умолчанию сохраняется (сохранить регистр). Чтобы просмотреть полный синтаксис этой команды, введите в командной строке: nfsadmin server /?
,
Microsoft заявляет ;
В NTFS имена сохраняют регистр, но не чувствительны к регистру.
NTFS не делает различий в именах файлов на основе case.
Разрешение чувствительности к регистру в Windows позволит вредоносным программам создавать файлы, которые пользователь не может получить или удалить, поэтому он не допускается по уважительной причине.
В любом случае, я совершенно уверен, что если вам удастся установить чувствительность к регистру NTFS, Windows будет аварийно завершена, и повторная установка будет единственным решением.