Wie lautet der Pfad zum globalen Verzeichnis für Binärdateien in MacOS?

Wie lautet der Pfad zum globalen Verzeichnis (z. B.: /usr/local/binetc.) für Binärdateien in macOS?

Das Problem ist, dass ich den Befehl von einem anderen Benutzer ausführen kann. Mit diesem Befehl möchte ich den Caddy-Webserver starten:su _www -c caddy

Ich weiß, wo sich diese Datei befindet. Das Problem ist, dass Caddy nur mit PHP-Socket arbeiten kann, wenn der Caddy-Prozess als Benutzer ausgeführt wird _www. Aber wenn ich auf _wwwBenutzer wechsle (das ist kein Problem), kann ich den Vorgang nicht starten, weil die Caddy-Datei in der PATHeines anderen Benutzers liegt.

Natürlich kann ich die Datei an einen anderen Benutzer zum Ausführen senden, aber das ist zu langwierig und unbequem. Ich muss nur den Prozess vom richtigen Benutzer aus starten. Bei Ubuntu ist ein solches Problem nicht überraschend.

Betriebssystem: MacOS High Sierra 10.13.1

Es gibt Dutzende von Verzeichnissen, in denen macOS legitim ausführbare Dateien haben kann. Ich würde Spotlight oder verwenden, locateum eine beliebige ausführbare Datei wie die von Ihnen erwähnte zu finden, da sie nicht Teil des Kernbetriebssystems ist. mdfind "kMDItemFSName == caddy" findet caddy
Ich weiß, wo sich diese Datei befindet. Das Problem ist, dass Caddy nur mit PHP-Socket arbeiten kann, wenn der Caddy-Prozess vom Benutzer _www ausgeführt wird. Wenn ich aber auf _www user wechsle (das ist kein Problem), kann ich den Vorgang nicht starten, weil die Caddy-Datei im PATH eines anderen Users liegt.
Die ganze Erwähnung des Pfades verschleierte, dass Sie wirklich ein SU-Problem hatten. Entschuldigung @kryptoncode Können Sie Ihren su-Befehl bearbeiten, um explizit den korrekten vollständigen Pfad zum Tool aufzurufen? Wenn Sie dies nicht wirklich manuell ausführen möchten, würde ich ein Tool wie LaunchCtl oder Lingon verwenden, um eine geeignete Start-Daemon-Datei zu erstellen, um anzugeben, wie / wann Sie diesen Prozess starten, und es kann den Benutzer viel besser für Sie ändern alssu
Ich bekomme diesen Fehler . Caddy hat seinen eigenen Daemon. Es ist nicht erforderlich, etwas von Drittanbietern zu verwenden.
Jetzt sind Sie auf etwas @kryptoncode - Sie müssen _www zu den Gruppenberechtigungen für alle Orte hinzufügen, an denen Sie das Programm gespeichert haben und die es schreiben muss. Ich nehme an, Sie haben eine ausführbare Datei an einer anderen Stelle als dem Pastebin, da Sie dort kein Programm zum Ausführen haben. forum.caddyserver.com/t/unable-to-run-caddy-as-a-daemon/2364
Die ausführbare Datei befindet sich in dem Pfad, der im Screenshot zu sehen ist. Er exportierte in die PATH.
@klanomath, Caddy wurde installiert, indem die Binärdatei heruntergeladen und zu PATH hinzugefügt wurde. MacOS High Sierra 10.13.1

Antworten (1)

Das Problem ist behoben. Es reichte aus, eine Binärdatei Caddy in das Verzeichnis zu legen:/usr/local/bin

Wenn sich die Binärdatei im Verzeichnis befindet /usr/local/bin, steht Caddy dem Benutzer zum Lesen zur Verfügung_www