Всякий раз, когда я пытаюсь выдать, su
я получаю это:
$ su
Password:
su: Sorry
Излишне говорить, что я ввожу правильный пароль администратора, который работает с sudo
. То, что я хочу, не нужно вводить sudo
каждый раз.
В MacOS X пользователь root по умолчанию отключен, поэтому su
работать не будет. Как уже говорили другие, лучше всего использовать sudo
.
Если вы должны позволить пользователю корня, см TechNote от Apple: Включение и использование «корневого» пользователя в Mac OS X .
sudo su
все еще работает, поэтому он не отключен. У него просто нет пароля.sudo su
, то в чем смысл отключенияsu
?su
», а в том, чтобы предотвратить вход в систему root . Запретив вход в систему какroot
, вы предотвратите множество возможных проблем безопасности. Не позволяя кому - то , кто можетsudo
наsu
это своего рода глупо. По сути,su
просто изменяет текущий идентификатор пользователя и выполняет команду (оболочку, если не указано). Если идентификатор пользователя уже равен 0 (root), например, когда выполняется с нимsudo
, ему нечего делать, поэтому он просто запускает оболочку. Вы можете получить аналогичный эффект, делаяsudo bash
.У вас есть два варианта. Первое - это использование
sudo -s
- это даст вам доступ суперпользователя, но вы все равно останетесь «самим собой» (так сказать), так что такие вещи, как~
и раньше, будут вашим домашним каталогом. Кроме того, вы можете использоватьsudo su
, что дает вам оболочку в качестве фактического пользователя root вашего Mac.источник
sudo
для запуска команд, требующих повышенных привилегий, а не для переключения на корневую оболочку и работы с этого.sudo
доводят дух до крайности. Но что угодно: семантика. Не используйте корневые оболочки в OS X.Например, если вам нужно переместить файлы или использовать git с помощью CLI, тогда в этом случае лучшим решением будет использование
sudo -s
команды. После этой команды вам не нужно вводить пароль снова и снова.источник
Я думаю, что вы не можете сделать это как "обычный" пользователь ...
Если есть другая учетная запись пользователя с правами администратора, вы должны использовать эту
источник
Современное решение:
sudo -u
Для запуска как другое использование, используйте
sudo -u
.Например, чтобы запустить текстовый редактор, такой как nano :
… И введите пароль пользователя вашего администратора Mac при появлении запроса. На данном этапе вызывается пользователь вашего администратора Mac
sudo
, а неsomeuser
пользователь, поэтому вы не вводитеsomeuser
пароль.sudo
означает запускать что-либо, используя привилегии суперпользователя.-u
означает «выполнить указанную команду от имени указанного пользователя».someuser
должно быть заменено желаемым именем пользователя.Для имитации начального входа в систему под конкретным пользователем, включая запуск его сценариев запуска, используйте
-I
.nano
Приложение запускается от имени пользователя,someuser
но только после запуска сценариев запуска для этого пользователя.Если мы решим не указывать команду или приложение для запуска, мы получим интерактивную оболочку, работающую от имени этого пользователя.
Старая школа:
sudo su someuser
Другой подход использует
su
команду в сочетании сsudo
. Командаsu
означает «сменить пользователя».Или, чтобы включить запуск сценариев запуска пользователя, добавьте дефис.
root
пользовательroot
Пользователя в Unix-подобной операционной системы имеют абсолютную власть , чтобы сделать что - нибудь.Apple решила отключить
root
учетную запись в macOS, чтобы избежать уязвимостей в безопасности и защитить вас от попадания в ногу. Apple создала идею учетных записей администраторов , обладающих многими полномочиями, большими полномочиями, чем обычные учетные записи пользователей, но не такими, какимиroot
обладают абсолютные полномочия . См. Это примечание поддержки Apple для обсуждения.При необходимости вы можете включить
root
пользователя в macOS и затем переключиться на него. Это сильно не рекомендуется. Я бы пошел по этому пути только в качестве отчаянного последнего средства.Для обсуждения этого в контексте
postgres
пользователя, работающего с системой баз данных Postgres в macOS, см. Этот вопрос на дочернем сайте, DBA Stack Exchange .источник