csrutil: команда не найдена


12

Я использую MacBook середины 2012 года и недавно обновил его до OS X 10.11 El Capitan. У меня были проблемы с новой функцией SIP, и я хотел ее отключить.

Я попытался загрузиться в OS X Internet Recovery, используя Cmd + R, который запустил Internet Recovery. Когда я попробовал csrutil disableв Терминале, он вернулся -bash: csrutil: command not found. Затем я попытался загрузиться в Recovery HD и попробовал ту же команду в режиме восстановления там, чтобы получить ту же ошибку.

У меня вопрос, как я могу получить доступ к csrutilкоманде, чтобы отключить SIP? Я что-то пропустил?

Обновление Я помещаю команды восстановления терминала, которые я пробовал на следующем снимке экрана. Пожалуйста, увеличьте масштаб, чтобы увидеть

Терминальные команды


как насчет /usr/bin/csrutil disableили /Volumes/your-OSX-10.11-disk/bin/csrutil disable?
Энцо


@patrix У меня есть раздел восстановления локально, и я тоже попытался загрузиться в него вместе с восстановлением через Интернет.
Нуб

@maetsoh Нет, все та же ошибка. В обоих местах нет файла csrutil.
Нуб

Ответы:


7

Образ сетевой загрузки, загружаемый при загрузке в Internet Recovery Mode, по-видимому, не содержит исполняемый файл csrutil .

OS X Базовая система загружается во время загрузки в режиме восстановления должен содержать хотя он. При нажатии cmdRзапускается двухэтапная процедура: сначала Mac загружается на Recovery HD, а затем после расширения BaseSystem.dmg до «OS X Base System» (это имя смонтированного BaseSystem.dmg). Если после нажатия cmdRна Mac вы видите анимированный глобус, вероятно, на нем нет Recovery HD.

Проверьте версию системы (или версию продукта) Recovery HD / Base System:

Чтобы проверить версию системы (1 на скриншоте ниже), загрузитесь с основного тома и введите в Терминале следующее:

diskutil list #to get the disk identifier of your Recovery HD; usually it's disk0s3 with a size of ~650 MB
diskutil mount disk0s3
cat /Volumes/Recovery\ HD/com.apple.recovery.boot/SystemVersion.plist | grep -A 2 ProductVersion

Кроме того, вы можете смонтировать BaseSystem.dmg и проверить там версию системы (2 на скриншоте ниже):

open /Volumes/Recovery\ HD/com.apple.recovery.boot/BaseSystem.dmg
cat /Volumes/OS\ X\ Base\ System/System/Library/CoreServices/SystemVersion.plist | grep -A 2 ProductVersion

введите описание изображения здесь

Загрузите и переустановите последнюю версию полного установщика OS X El Capitan, если системная версия базовой системы 10.10.x или ниже.


Я пробовал эти команды, но они также не работали. Пожалуйста, проверьте обновленный вопрос.
нуб

@noob Как сказано в моем ответе «... введите следующее в Терминале, загруженном на ваш основной том ...», вы должны загрузиться на свой основной том и затем выполнить команды.
Кланомат

О, хорошо! Я не смог запустить команды на терминале, поэтому я напрямую проверил SystemVersion.plist прямо из поиска. Он сообщает ProductVersion как 10.10.3. Так что рекавери ОС старше. Как я могу обновить это тоже?
нуб

@noob Просто переустановите OS X El Capitan 10.11.1 после загрузки его из магазина приложений на ваш основной том. Ни один из ваших документов или настроек не будет перезаписан или использован инструмент в этом ответе
klanomath

2

Поздно на вечеринку, но была та же проблема. Решил это, при запуске, удерживая нажатой клавишу выбора, until, пока вы не сможете выбрать, с чего загружаться, и затем нажмите на кнопку восстановления, должна быть Recovery - «версия». Затем вы можете выполнить те же действия, что и ранее, - открыть терминал и написать csrutil disable / enable.


Не работает!!
Иман

Да, это решило проблему в моем случае, когда у меня было несколько систем на нескольких разделах и установлены диски.
Томас Темпельманн

0

Для меня это помогло сделать сброс PRAM, у меня был установлен rEFInd для двойной загрузки. Сброс PRAM также пропустил мою процедуру загрузки rEFInd, но, наконец, я смог вернуться в обычный режим восстановления, а не только в интернет-восстановление.


0

Используйте установочный диск OSX 10.11.x или более поздний CD / DVD или USB. , У меня была та же проблема, пока я не попробовал установщик High Sierra USB JR


0

Я была такая же проблема. Когда я пытался запустить cmd R Lion Recover на моей машине. Таким образом, я использовал перьевой привод с высокой установкой sierra, и он работал. После этого открыли терминал и все должно быть в порядке


-2

При загрузке в режиме восстановления, если следующее: sudo csrutil disable возвращает «команда не найдена», вместо этого попробуйте / usr / bin / csrutil disable


/usr/binвсегда является частью PATHсреды восстановления.
pmdj

1
Если возвращается «команда не найдена», то из этого следует, что / usr / bin НЕ является частью пути.
Байкбой

Нет, из этого следует, что csrutil недоступен в версии asker среды восстановления macOS, что справедливо для среды восстановления OS X 10.10 и более ранних версий. У меня была эта проблема при попытке отключить SIP на MacBook Pro в начале 2013 года, и оказалось, что он загружается в среду восстановления OSX 10.8. Решением было загрузиться с установщика USB MacOS 10.14.
pmdj

Когда я столкнулся с сообщением «команда не найдена» при попытке доступа к csrutil в режиме восстановления, как это сделал создатель этого вопроса, я просто изменил команду на / usr / bin / csrutil disable, и она отлично работала. Это сработало и для меня, и, видимо, для других. Это просто, легко и не вредно попробовать. Поэтому, прежде чем отклонять ответ, спросите себя: мое окружение такое же, как у всех? Когда вы отвечаете «нет», как любой разумный человек, вы должны признать, что мое решение может работать для некоторых, и отрицательное голосование является иррациональным и безответственным для сообщества.
Байкбой

Работал на меня. Не уверен, почему отрицательные голоса
Ричард
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.