5

Это ошибка в OS X или у меня что-то неправильно настроено?

$ touch aaa
$ ls -l
total 0
-rw-r--r--  1 jchen  1366545133  0 Feb 16 16:08 aaa
$ cp aaa AAA
cp: AAA and aaa are identical (not copied).
$ ln -s aaa AAA
ln: AAA: File exists
$ env | grep SHELL
SHELL=/bin/bash

Кажется, что cp и ln в OS X не чувствительны к регистру. Я никогда не замечал этого, пока не попытался создать символическую ссылку в виде заглавной папки на строчное имя.

В Linux я никогда не видел такой проблемы.

2 ответа2

6

Проблема в том, что в файловой системе HFS+ OS X по умолчанию не учитывается регистр.

В Дисковой утилите вы можете стирать и перераспределять тома, чтобы использовать чувствительную к регистру версию HFS+, хотя ее можно выбрать в качестве формата:

Изменить чувствительность к регистру загрузочного тома сложнее и обычно включает в себя форматирование диска и восстановление из резервной копии.

3

По умолчанию файловая система OS X не чувствительна к регистру.

Вы можете использовать файловую систему с учетом регистра при установке Mac OS. Это, однако, приведет к проблемам с некоторым программным обеспечением (например, Adobe Creative Suite). Как упоминается в комментарии ниже от Джо Блока, вам будет лучше создать файловую систему с учетом регистра на томе без загрузки или образе диска.

Вы можете создать образ диска с чувствительной к регистру файловой системой, используя Дисковую утилиту, следуя инструкциям Apple. Вы также можете создать образ диска из командной строки (например, используя этот ответ в Ask Different), но не забудьте указать правильную файловую систему.

Чтобы создать образ диска объемом 2 ГБ с чувствительной к регистру файловой системой, вы можете выполнить следующую команду:

hdiutil create -size 2g -fs 'Case-sensitive Journaled HFS+' \
  -type SPARSEBUNDLE ~/path/to/your/image

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .