Mac OS X - Starten Sie Apache / MySQL, ohne zur Eingabe eines Kennworts aufzufordern

8

Ich verwende XAMPP, das mit einer kleinen "XAMPP Control" -App geliefert wird, mit der ich Apache und MySQL durch Klicken auf eine Schaltfläche starten und stoppen kann. Wenn ich das mache, werde ich von Lion zur Eingabe meines Administratorkennworts aufgefordert. Gibt es eine Möglichkeit, diesen Schritt zu überspringen? (Unter Windows frage ich mich: "Wie kann ich das XAMPP Control-Programm im Administratormodus ausführen?" - Ich bin mir nicht sicher, ob es ein Analogon für Mac gibt.)

Eric
quelle

Antworten:

3

Problem

Mac OSX fragt Sie nach Ihrem Kennwort, da XAMPP versucht, den Befehl * nix auszuführen [sudo](http://en.wikipedia.org/wiki/Sudo). Dies kann auf zwei Arten überwunden werden:

ein. Zulassen, dass ALLE sudo Befehle ohne Kennwort ausgeführt werden.

b. Lassen Sie NUR den XAMPP- Befehl ohne Kennwort ausführen.

Lösung

Gehen Sie wie folgt vor, um eine dieser Lösungen zu verwenden:

  1. Öffnen Sie Terminal.app (ich drücke gerne Command+ Space, tippe dann "Terminal.app" und drücke dann Enter).
  2. Ausführen sudo nano /etc/sudoers.
  3. Fügen Sie der Datei den folgenden Text hinzu, wobei Benutzername Ihr kurzer Benutzername ist (geben Sie ihn whoamiin das Terminal ein, um ihn abzurufen ):

    • Für Option a :

    %username ALL=(ALL) NOPASSWD

    • Für Option b :

    %username ALL= NOPASSWD: /Applications/XAMPP/xamppfiles/xampp

  4. Drücken Sie Ctrl+ xund speichern Sie, wenn Sie dazu aufgefordert werden.

Beachten Sie, dass Sie unter OSX Mavricks möglicherweise %vor dem Benutzernamen (in /etc/sudoers) ein Zeichen einfügen müssen .

neersighted
quelle
Zu Ihrer Information, ich habe Folgendes hinzugefügt: "Benutzername ALL = NOPASSWD: / Applications / XAMPP / XAMPP \ Control.app"
Eric
Für etc/sudoernoobs, wie ich, vorsichtig sein , nicht zu bearbeiten sudoersDatei mit Ihrem bevorzugten Texteditor (nur diesen Fehler gemacht ... verbrachte die letzte Stunde zu beheben versuchen). Die sudoerDatei hat oben diese kommentierte Meldung: Diese Datei MUSS mit dem Befehl 'visudo' als root (dh $ sudo visudo) bearbeitet werden . Wenn Sie 'visudo' nicht verwenden, kann dies zu Syntax- oder Dateiberechtigungsfehlern führen, die die Ausführung von sudo verhindern.
Mhulse
Verwenden Sie den Befehl visudo. Es überprüft die Dateisyntax, bevor es festgeschrieben wird.
Borisdiakur
8

Der Thread Starten der Xampp-Systemsteuerung ohne Kennwort listet zwei mögliche Lösungen auf:

  1. Schreiben Sie Skripte, die XAMPP starten und stoppen, und geben Sie das Kennwort in den Skripten an.
    Die beiden Skripte sind im Thread enthalten.
  2. Bearbeiten Sie die /etc/sudoersDatei und konfigurieren Sie, dass sudo /Applications/XAMPP/xamppfiles/xampp startkein Kennwort erforderlich ist.
harrymc
quelle
Das Skript zu verwenden und es als .App zu exportieren, war die beste Lösung. Vielen Dank.
Moe
0

macOS High Sierra

In High Sierra konnte ich den neuen Control App Manager-osx nicht ohne Eingabe eines Passworts zum Laufen bringen , selbst wenn ich es in Sudoers hinzufügte.

Sie können xampp jedoch über die Befehlszeile ausführen, um xampp (oder nur Apache) ohne Kennwort zu starten und zu stoppen, wenn Sie es der sudoers-Datei hinzufügen.

Aber: Die obigen Lösungen haben mir Probleme bereitet, also hier, was ich getan habe:

/etc/sudoers/Datei nicht bearbeiten , viele Dinge können schief gehen! Wenn Sie wirklich wollen, können Sie mit sudo visudo
macOS auch nicht verwenden vim sudoers(Sie können nicht speichern), zumindest mit aktiviertem SIP.

Besserer Ansatz

Erstellen Sie eine neue Datei im Verzeichnis /etc/sudoers.d. Sie benötigen Root-Rechte, um die Datei zu erstellen.
Benennen Sie die Datei wie Ihren Benutzernamen (zum Beispiel). Keine Erweiterung erforderlich.
Der Dateiname spielt keine Rolle, darf jedoch weder ein ~Ende noch einen Punkt ( .) am Anfang enthalten.

In dieser neuen Datei erstellen , die nur die benötigten Einträge, aber NICHT einen hinzufügen %vor Ihrem Benutzername ein . Dies funktionierte bei mir nicht und jeder Anruf von sudodauerte lange, bis ich nach dem Passwort gefragt wurde.

Inhalt der neuen Datei:

username ALL = NOPASSWD: /Applications/XAMPP/xamppfiles/xampp

Jetzt kannst du rennen

sudo /Applications/XAMPP/xamppfiles/xampp start

in einem Termin, um xampp zu starten und Sie müssen Ihr Passwort nicht eingeben.

Wenn etwas schief läuft

Löschen Sie alle Ihre Einträge in den sudoers oder der neuen Datei oder kommentieren Sie sie mit double, ##damit sudo sie ignoriert.
Versuchen Sie dies, wenn die Datei vollständig beschädigt ist: https://astrails.com/blog/2009/09/29/how-to-fix-a-hosed-etc-sudoers-file-on-mac-osx
Wenn nichts anderes funktioniert Starten Sie den Einzelbenutzermodus neu und reparieren Sie die Datei. Es sollte auch ein Backup in /etcaufgerufen werden sudoers~orig.

Geschäftskater
quelle