Измените существующий тип файла со стандартного файла "-" на каталог "d", как показано с помощью Unix ls -l

Измените существующий тип файла со стандартного файла "-" на каталог "d", как показано с помощью Unix ls -l

Подводя итог, если я использую ls -l, то для каталога это выдаст что-то вроде...

drwxr-xr-x

и сообщаемая ошибка для каталога с файлами в нем, он отображается как стандартный файл и ls -l выдает...

-rwxr-xr-x

Моя цель — найти способ вручную изменить тип файла с «-» на «d» для существующих файлов или каталогов.

Мой первый пост здесь. Несколько дней я пытался найти способ изменить тип файла для файла в Apple OSX (BSD Unix). Это может быть намного проще, чем я это делаю. Первоначальная проблема заключалась в том, что инструмент, который поставляется с OSX для проверки вашего жесткого диска, — это Disk Utility (DU), и он показывает ошибки прав доступа к файлам, которые не может исправить. Иногда их бывает несколько сотен. Большинство из них — это те, где файл каталога отображается как стандартный файл и должен быть изменен на каталог. Если я перехожу туда с помощью терминала, ожидаемые файлы находятся в каталоге. Эти ошибки могут возникать из-за атаки Passive Hack за последний год. Одно из работающих исправлений — стереть и установить OSX. Это новый хороший жесткий диск.

Первый метод, который я планировал использовать, — это найти информацию заголовка файла на секторах диска с помощью шестнадцатеричного редактора, например R-Studio для Mac, и просто выполнить шестнадцатеричные вычисления, если необходимо, и изменить данные. Потребуется много времени, чтобы изучить R-Studio в достаточной степени, чтобы сделать это. Плюс, я думаю, мне нужна карта того, как BSD Unix размещает информацию на секторах жесткого диска, чтобы я мог найти биты, которые помечают файл как каталог или стандартный файл, или канал, или сокет. Карта будет похожа на эту, но с логической структурой данных для файла BSD. https://en.wikipedia.org/wiki/Расширенный_Формат

Был на нескольких форумах, в поддержке Apple и R-Studio. Остановился, чтобы заплатить $99, чтобы присоединиться к разработчикам Apple, чтобы получить эту информацию. Я думаю, что это открыто в любом случае со времен BSD Unix.

Другие инструменты, которые я исследовал, были IDE Xcode от Apple, команда dd Unix и emacs. Поскольку я новичок в Unix, это занимает у меня очень много времени, и я до сих пор не вижу способа сделать это. В руководстве по Xcode упоминается, что рекомендуемые инструменты отображаются при наведении курсора на значки меню. Когда я навел курсор на тип файла, он показал emacs, но после прочтения я думаю, что это означает, является ли это текстовым файлом или исполняемым типом файла. Не каталогом и т. п.

На этом этапе я возвращаюсь к поиску логической структуры файлов, которую BSD Unix размещает на секторах диска, а затем использую R-Studio.

Есть идеи?

решение1

Это невозможно изменить. Файлы нельзя преобразовать в каталоги и наоборот. Это не просто какой-то флаг, который можно изменить. Если это какое-то повреждение, то лучше всего запустить fsck на файловой системе.

Связанный контент