su Admin unter Mac OS X funktioniert nicht wie erwartet

4585
Justin Mrkva

Ich versuche, PostgreSQL unter Mac OS 10.6.4 zu installieren und muss mich als Administrator authentifizieren. In der Befehlszeile habe ich:

su Administratorkennwort
:
shell-init: Fehler beim Abrufen des aktuellen Verzeichnisses: getcwd: Zugriff auf übergeordnete Verzeichnisse nicht möglich: Berechtigung verweigert

Mein Benutzer ist ein Standardkonto (kein Administrator), Admin ist ein Administratorkonto, und das Verzeichnis, in dem ich arbeite, wenn 'su' ausgeführt wird, befindet sich in meinem Downloads-Ordner. Wenn ich 'su - Admin' mache, funktioniert es, aber ich kann nicht auf die notwendigen Dateien zugreifen! 'Su Admin' sollte jedoch funktionieren, da die Umgebung unverändert bleibt.

Wie soll ich das machen?

0

2 Antworten auf die Frage

1
Scott

Hat der Admin-Benutzer mindestens Lesezugriff auf Ihr Download-Verzeichnis und das Heimatverzeichnis? Beachten Sie, dass Administratorkonten unter Mac OS X nicht der Root-Benutzer sind (der standardmäßig deaktiviert ist ) und daher durch Dateiberechtigungen wie andere Sterbliche eingeschränkt werden.

Administratorkonten sind jedoch Sudoer, was ihnen erlaubt, viele der Wurzelbefugnisse zu übernehmen. Dies muss jedoch von Fall zu Fall explizit angefordert werden - in der Regel mit sudo. Wenn Ihre su AdminShell nach der Fehlermeldung noch ausgeführt wird, versuchen Sie es mit sudo ls- es sollte funktionieren, da sie wie von root ausgeführt wird. Einfach lsnicht, wenn der Administrator keinen Zugriff auf dieses Verzeichnis hat.

Die Antwort besteht darin, dem Administrator Zugriff auf alle Verzeichnisse in Ihrem Basisordner zu gewähren, auf die er zugreifen soll. Tun Sie dies entweder im Finder mit Get Info oder verwenden Sie chmod.

Ich habe 'sudo ls' verwendet und es hat funktioniert. Ich habe jedoch vor jedem Befehl versucht, die Installation mit 'sudo' auszuführen, und es schlug immer noch fehl (das aktuelle Arbeitsverzeichnis konnte für keines der Skripts gefunden werden). Am Ende habe ich es einfach vom Admin-Konto aus gemacht. Justin Mrkva vor 14 Jahren 0
-2
Jay

Aktivieren root . Dann:

su root 

                      

Ergebnisse in "su: Sorry" Justin Mrkva vor 14 Jahren 0
@ jfm429, Möglicherweise müssen Sie zuerst root aktivieren. Ich habe meine Antwort mit einem Link für Snow Leopard aktualisiert. Welche OSX-Version verwenden Sie? Jay vor 14 Jahren 0
Ich möchte wirklich nicht root aktivieren müssen. Dies ist ein völlig anderes Thema, aber ich muss in der Lage sein, PostgreSQL für eine Anwendung zu verwenden, ohne dass Benutzer dazu gezwungen werden, durch den Reifen zu springen. Ich werde wahrscheinlich SQLite für die lokale Datenbank verwenden und habe dann die Möglichkeit, mit PostgreSQL zu synchronisieren ... Justin Mrkva vor 14 Jahren 1
@ jfm429, Sie könnten root verwenden, um die Datenbank- und Setup-Berechtigungen ordnungsgemäß zu installieren, und dann root deaktivieren. Jay vor 14 Jahren 0
Das besiegt den Punkt; Dies muss wiederum ein für den Endbenutzer zugänglicher Prozess sein. Das ist das Problem, das ich bisher mit PostgreSQL gesehen habe, dass es einfach unglaublich einfach zu installieren ist. Das einzige Installationspaket erfordert die Bearbeitung der Kerneleinstellungen, deren Anwendungen niemals geändert werden müssen. Justin Mrkva vor 14 Jahren 0
Ich habe nie Probleme mit der Installation von PostgreSQL gehabt. Jeder Benutzer sollte es in der Lage sein, es zu Hause / ohne Probleme und ohne Administrator- oder Root-Konto zu installieren. Jay vor 14 Jahren 0
Haben Sie eine Liste der erforderlichen Befehle, einschließlich des Setups? Ich habe es versucht, bekam aber eine Reihe von Fehlern. Ich kann mich nicht an welche erinnern. Justin Mrkva vor 14 Jahren 0
@ jfm429, ich glaube ./configure && mache für mich gearbeitet. Ich denke, es gibt Binärdistributionen für osx, die auch funktionieren sollten. Wenn Sie Fehler erhalten, können Sie eine neue Frage posten. Jay vor 14 Jahren 0