Mac OS X - запустить Apache / Mysql без запроса пароля
8
Я запускаю XAMPP, который поставляется с небольшим приложением «XAMPP Control», которое позволяет мне запускать и останавливать Apache и MySQL, нажимая кнопку. Когда я это делаю, Lion запрашивает у меня пароль администратора. Есть ли способ пропустить этот шаг? (В Windows это похоже на вопрос: «Как я могу запустить программу XAMPP Control в режиме администратора?» - не уверен, есть ли аналог для Mac.)
Mac OSX запрашивает ваш пароль, потому что XAMPP пытается выполнить команду * nix [sudo](http://en.wikipedia.org/wiki/Sudo). Это можно преодолеть одним из двух способов:
а. Разрешить запуск всехsudo команд без пароля.
б. Разрешить запуск только команды XAMPP без пароля.
Решение
Чтобы использовать одно из этих решений, сделайте следующее:
Откройте Terminal.app (мне нравится нажимать Command+ Space, затем набрать «Terminal.app», затем нажать Enter).
Беги sudo nano /etc/sudoers.
Добавьте следующий текст в файл, где username - это ваше короткое имя пользователя (введите его whoamiв терминал, чтобы получить его):
К вашему сведению, я добавил это: «имя пользователя ALL = NOPASSWD: / Applications / XAMPP / XAMPP \ Control.app»
Эрик
Для etc/sudoerновичков, как и я, будьте осторожны, чтобы не редактировать sudoersфайл с помощью вашего любимого текстового редактора (только что сделал эту ошибку ... потратил последний час, пытаясь исправить). sudoerФайл имеет это комментировало сообщение в верхней части: Этот файл должен быть отредактирован с помощью команды «visudo» как корень (т.е. $ sudo visudo). Отказ от использования 'visudo' может привести к синтаксическим ошибкам или ошибкам разрешения файла, которые мешают запуску sudo.
mhulse
Используйте команду visudo. Он проверит синтаксис файла перед тем, как «зафиксировать» его.
Использование скрипта и его экспорт в формате .App было лучшим решением. Спасибо.
Мо
0
macOS High Sierra
В High Sierra я не мог заставить работать новое приложение control manager-osx без ввода пароля, даже при добавлении его в sudoers.
Но вы можете запустить xampp из командной строки, чтобы запустить и остановить xampp (или только apache) без пароля, если вы добавите его в файл sudoers.
Но: приведенные выше решения создали для меня проблемы, поэтому вот что я сделал:
Не редактируйте /etc/sudoers/файл, многие вещи могут пойти не так! Если вы действительно хотите, использование sudo visudo
macOS также не позволит использовать vim sudoers(вы не можете сохранить), по крайней мере, с активированным SIP.
Лучший подход
Создайте новый файл в каталоге /etc/sudoers.d. Вам нужны права root для создания файла.
Назовите файл как ваше имя пользователя (например). Расширение не требуется.
Имя файла на самом деле не имеет значения, но оно не должно содержать точку ~в конце или точку ( .) в начале.
В этом новом файле создайте только необходимые записи, но НЕ добавляйте %перед вашим именем пользователя. Это не сработало для меня, и каждый звонок sudoзанимал много времени, прежде чем спрашивать пароль.
Содержание нового файла:
username ALL = NOPASSWD: /Applications/XAMPP/xamppfiles/xampp
Теперь вы можете запустить
sudo /Applications/XAMPP/xamppfiles/xampp start
в терминале для запуска xampp, и вам не нужно вводить пароль.
Если что-то пойдет не так
Удалите все свои записи в sudoers или новом файле или закомментируйте их с двойным, ##чтобы sudo проигнорировал их.
Попробуйте это, если файл полностью сломан: https://astrails.com/blog/2009/09/29/how-to-fix-a-hosed-etc-sudoers-file-on-mac-osx
Если ничего не работает , перезагрузитесь в однопользовательский режим и восстановите файл. Там также должна быть резервная копия в /etcAndroid sudoers~orig.
etc/sudoer
новичков, как и я, будьте осторожны, чтобы не редактироватьsudoers
файл с помощью вашего любимого текстового редактора (только что сделал эту ошибку ... потратил последний час, пытаясь исправить).sudoer
Файл имеет это комментировало сообщение в верхней части: Этот файл должен быть отредактирован с помощью команды «visudo» как корень (т.е.$ sudo visudo
). Отказ от использования 'visudo' может привести к синтаксическим ошибкам или ошибкам разрешения файла, которые мешают запуску sudo.В потоке Запуск панели управления Xampp без пароля перечислены два возможных решения:
Два сценария включены в поток.
/etc/sudoers
файл, для настройкиsudo /Applications/XAMPP/xamppfiles/xampp start
которого не требуется пароль.источник
macOS High Sierra
В High Sierra я не мог заставить работать новое приложение control manager-osx без ввода пароля, даже при добавлении его в sudoers.
Но вы можете запустить xampp из командной строки, чтобы запустить и остановить xampp (или только apache) без пароля, если вы добавите его в файл sudoers.
Но: приведенные выше решения создали для меня проблемы, поэтому вот что я сделал:
Не редактируйте
/etc/sudoers/
файл, многие вещи могут пойти не так! Если вы действительно хотите, использованиеsudo visudo
macOS также не позволит использовать
vim sudoers
(вы не можете сохранить), по крайней мере, с активированным SIP.Лучший подход
Создайте новый файл в каталоге
/etc/sudoers.d
. Вам нужны права root для создания файла.Назовите файл как ваше имя пользователя (например). Расширение не требуется.
Имя файла на самом деле не имеет значения, но оно не должно содержать точку
~
в конце или точку (.
) в начале.В этом новом файле создайте только необходимые записи, но НЕ добавляйте
%
перед вашим именем пользователя. Это не сработало для меня, и каждый звонокsudo
занимал много времени, прежде чем спрашивать пароль.Содержание нового файла:
Теперь вы можете запустить
в терминале для запуска xampp, и вам не нужно вводить пароль.
Если что-то пойдет не так
Удалите все свои записи в sudoers или новом файле или закомментируйте их с двойным,
##
чтобы sudo проигнорировал их.Попробуйте это, если файл полностью сломан: https://astrails.com/blog/2009/09/29/how-to-fix-a-hosed-etc-sudoers-file-on-mac-osx
Если ничего не работает , перезагрузитесь в однопользовательский режим и восстановите файл. Там также должна быть резервная копия в
/etc
Androidsudoers~orig
.источник