Answers:
Mac OSX要求您输入密码,因为XAMPP试图运行* nix命令[sudo](http://en.wikipedia.org/wiki/Sudo)
。这可以通过以下两种方法之一来克服:
一个。允许运行所有 sudo
命令而无需输入密码。
b。允许ONLY的XAMPP命令,没有密码来运行。
要使用这些解决方案之一,请执行以下操作:
sudo nano /etc/sudoers
。将以下文本追加到文件中,其中username是您的短用户名(whoami
在终端中键入以获取它):
%username ALL=(ALL) NOPASSWD
%username ALL= NOPASSWD: /Applications/XAMPP/xamppfiles/xampp
按Ctrl+ x,然后在出现提示时保存。
请注意,在OSX Mavricks上,您可能必须%在用户名(位于中/etc/sudoers
)之前添加一个符号。
etc/sudoer
像我这样的菜鸟,请注意不要sudoers
使用您喜欢的文本编辑器来编辑文件(只是犯了这个错误…花费了最后一个小时进行修复)。该sudoer
文件的顶部带有此注释消息:必须使用“ visudo”命令作为根文件(即$ sudo visudo
)来编辑该文件。不使用'visudo'可能会导致语法或文件权限错误,从而阻止sudo运行。
没有密码的启动Xampp控制面板线程列出了两种可能的解决方案:
/etc/sudoers
文件,配置sudo /Applications/XAMPP/xamppfiles/xampp start
不需要密码。在High Sierra中,即使不将密码添加到sudoers中,我也无法使新的控制应用程序manager-osx正常工作。
但是,如果将xampp添加到sudoers文件中,则可以在不使用密码的情况下从命令行运行xampp来启动和停止xampp(或仅Apache)。
但是:上面的解决方案给我带来了麻烦,所以这里我做了什么:
不编辑/etc/sudoers/
文件,很多事情都会出错!如果确实需要,至少在激活了SIP的情况下,sudo visudo
也无法使用macOS vim sudoers
(您无法保存)。
在目录中创建一个新文件/etc/sudoers.d
。您需要root权限才能创建文件。
像用户名一样命名文件(例如)。无需扩展。
文件名并不重要,但文件名~
末尾不能包含点号或(.
)。
在这个新文件中,仅创建所需的条目,但不要%
在用户名前添加。这对我不起作用,每次拨打电话都sudo
花了很长时间才询问密码。
username ALL = NOPASSWD: /Applications/XAMPP/xamppfiles/xampp
现在您可以运行
sudo /Applications/XAMPP/xamppfiles/xampp start
在Termin中启动xampp,而无需输入密码。
删除sudoers或新文件中的所有条目,或用double注释它们,##
以便sudo忽略它们。
如果文件完全损坏,请尝试以下操作:https : //astrails.com/blog/2009/09/29/how-to-fix-a-hosed-etc-sudoers-file-on-mac-osx
如果没有其他方法,重新引导到单用户模式并修复文件。还应该有一个/etc
名为的备份sudoers~orig
。