• Wieder einmal haben uns unsere Apfeltalker tolle Fotos zur Abstimmung eingesandt. Welches ist Euer Favorit? Stimmt mit ab! Hier geht es zur Abstimmung --> Klick
  • Es ist bereits Apfeltalk-Tradition und wir möchten sie auch in diesem Jahr fortsetzen: Unser Apfeltalk-Weihnachtslogo-Wettbewerb hat begonnen! Gestaltet für uns das Weihnachtsbanner, das im Monat Dezember bis zum Weihnachtsfest unsere Webseite schmücken soll. Lasst Eurer Kreativität freien Lauf! Hier geht es zum Wettbewerb --> Klick

[10.6 Snow Leopard] Terminal: User = Root Passwort nicht nutzbar, da es „verbotenes Zeichen“ enthält?

DergrosseApfel

Schöner von Nordhausen
Registriert
10.06.09
Beiträge
320
Hallo,

ich muss eine Datei mit anderen Schreibrechten versehen und benötige Adminrechte, bin auf dem Rechner aber nur als „normaler“ User angemeldet. Ich muss (?) also einen sudo-Befehl nutzen.

Die Passwortabfrage wird aber immer mit „Sorry, try again“ abgebrochen. Das Passwort ist richtig eingegeben, enthält aber Sonderzeichen (man wollte scheinbar auf Nummer Sicher gehen...), nämlich ein °/° und eine °(°.

Kann dies evtl. der Grund dafür sein, dass es nicht möglich ist, im Terminal sudo Befehle auszuführen?

Danke für Eure Hilfe
DgA
 
Also wenn Sonderzeichen für Mobile Me (Apple Server) verwendet werden dürfen im Passwort, dann sollten sie auch auf einem Mac erlaubt sein.
Deine Begründung ist mir aber nicht klar. Melde dich halt als Admin an (lege die Datei vor her in den öffentlichen Ordner des Admin), wenn du sogar das Root-Passwort kennst, wirst du doch auch das des Admin kennen, oder du bist es ohnehin selber. Als Root meldet man sich nur in ganz seltenen Fällen an und dann auch gleich wieder ab.
Salome
 
Lösung?

Hallo,

danke für Deine Antwort.
Aber welche Begründung? Ich hatte nur eine Vermutung geäußert...

Egal: Die Eingabe des Passwortes im Terminal als User mit sudo-Rechten hat nicht geklappt. Angemeldet als Admin ging der sudo Befehl plötzlich. Da das Passwort ja nicht angezeigt wird kann auch ein schlichter Vertipper Ursache sein. Aber dass ich das mehr als 12mal falsch eingebe...?

Egal, Problem gelöst. Arbeite weiter in Unwissenheit aber mit den nutzbaren Daten...

;-)
DgA
 
Als Standard User solltest du eigentlich ohne Änderungen am sudoers file keinerlei Rechte haben sudo auszuführen, Sonderzeichen sind da vollkommen egal, das wäre für mich die passende Erklärung, aber kann mich auch irren, denn das Terminal nutze ich nur gelegentlich..
 
Macbeatnik hat es völlig richtig erfasst. Ohne Änderungen an der sudoers, kann ein Nutzer mit beschränktem Zugriff, kein sudo ausführen. Er muss sich dafür erst als Nutzer mit administrativen Rechten authentifizieren.

Gruß,

GByte
 
Nachhilfestunden

Hallo an Alle,

danke für die weiteren Antworten. Nach meinem Verständnis erhält man doch mit sudo Rootrechte, oder?
Muss mich wohl dann doch nochmal etwas intensiver mit dem Terminal beschäftigen...

Gibts da irgendwo ne gute kürzere Einführung (auch für Laien wie mich)?

Gruß
DgA
 
Nach meinem Verständnis erhält man doch mit sudo Rootrechte, oder?
Das ist die Vorgabe, ja.
Du kannst aber stattdessen auch die Rechte eines jeden anderen Benutzers wählen (was oft schon genügt und sicherer ist, zB um etwas "einfacheres" in einem fremden Benutzerordner zu erledigen - Option "-u").
 
Das ist die Vorgabe, ja.

Jetzt komme ich aber wieder durcheinander: Ich dachte, man erhält mit sudo adminstrative Rechte (Rechte des/eines Admins), da root Rechte auf Systemebene hat.
Immerhin gebe ich bei sudo mein (Adminstrator-)PW ein. Und root-Rechte habe ich nicht aktiviert.
Wenn du also noch mal kurz Zeit für eine Nachhilfestunde hast...
 
Ich dachte, man erhält mit sudo adminstrative Rechte (Rechte des/eines Admins)
Um sudo überhaupt verwenden zu dürfen, musst du diese bereits besitzen.
Nur Administratoren dürfen ihre (ohnehin schon höheren) Privilegien auf das höchstmögliche Niveau von root steigern.

Immerhin gebe ich bei sudo mein (Adminstrator-)PW ein.
So ist das gedacht. Das eigene Kennwort verwenden zu können und kein möglicherweise ausspähbares root-Kennwort ist eins der Sicherheitsfeatures von sudo.

Und root-Rechte habe ich nicht aktiviert.
Die Existenz von root und seine Rechte kannst du weder aktivieren noch deaktivieren. root ist immer da, ohne ihn geht gar nichts.
Was du meinst ist sicher das aktivieren/deaktivieren des interaktiven root-Logins. Anders formuliert: Die Fähigkeit, sich unter der Verwendung des Namens "root" und seines Kennworts an einer Terminal-Shell oder einem grafischen Anmeldefenster einzuloggen.
Für die Verwendung von sudo ist so etwas völlig überflüssig. sudo verschafft dir die nötigen Rechte auch ganz ohne dazu den gefährlichen Weg zu gehen, eine komplette Benutzersitzung aufzustarten.
 
Vielen Dank. Eines verstehe ich aber immer noch nicht oder vielleicht einfach nicht ganz.

Um sudo überhaupt verwenden zu dürfen, musst du diese bereits besitzen.

Heißt das, dass ich mein PW im Terminal/in der Shell nur deshalb eingeben muss, um nochmalig darauf hingewiesen worden zu sein, mit welcher Macht ich den kommenden Befehl/die kommenden Befehle anstoßen möchte? So, wie bei der Installation von Software über die normale GUI, wo ich zwar - nicht schimpfen - als Admin angemeldet und mit den entsprechenden Rechten ausgestattet bin, aber dennoch das PW eingeben muss? So als Warnschild quasi?

Heißt für mich:

Wenn ich als Admin angemeldet bin, bestätige ich meine (bereits durch Anmeldung bestehenden) Rechte lediglich.
Wenn ich als Otto Normal angemeldet bin, erwerbe ich kurzzeitig Admin Rechte, vor deren Benutzung ich als Admin dennoch gewarnt werde.
Das Ergebnis fühlt sich gleich an.

Oder ist es gar so?
Das Admin-PW steigert meine Rechte immer +1, bezogen auf den jeweilig gerade genutzten Kontotyp?
Otto Normal + Admin-PW == Admin-Rechte
Admin + Admin-PW == root-Rechte

Ich stehe gerade auf dem Schlauch...


Wenn dich jetzt gerade
a) der dringende Verdacht beschleicht, ich komme von Windows und
b) ich sei erst wenige Jahre mit dem Computer unterwegs und
c) ich sei noch nicht lange bei OS X dann hast du
d) absolut Recht
 
Zuletzt bearbeitet:
root und Administrator ist nicht dasselbe. die root-Ebene liegt noch höher in der Hierarchie.
Ergo hat auch ein Administrator noch nicht "volle root-Rechte", und muss sich diese erst via sudo verschaffen.

Weiterhin darf auch nur ein Admin sudo ausführen. Befindest du dich in einem normalen Benutzerkonto, musst du dich erst als ein Admin anmelden, im Terminal zB. so:
su - <adminName>
sudo .....
 
oioioioi...

root und Administrator ist nicht dasselbe. die root-Ebene liegt noch höher in der Hierarchie.
Ergo hat auch ein Administrator noch nicht "volle root-Rechte", und muss sich diese erst via sudo verschaffen.

Weiterhin darf auch nur ein Admin sudo ausführen. Befindest du dich in einem normalen Benutzerkonto, musst du dich erst als ein Admin anmelden, im Terminal zB. so:
su - <adminName>
sudo .....

Man lernt nie aus. Ich fasse das mal für mich zusammen:
Ich bin als <normaler user> am Mac angemeldet.
Ich möchte etwas im Terminal ausführen per <sudo>
Ich starte als das Terminal und gebe <su> ein + Admin-Name und Passwort um Adminrechte zu erhalten.
Ich gebe <sudo + gewünschten Befehl> ein um Root-Rechte zur Ausführung des Befehls zu erhalten.
Diese Rechte sind weitreichender als die des Admins
Ich gebe das Admin-Passwort nochmals ein um die bevorstehende <sudo> Aktion zu legitimieren?

Korrekt so?

Wenn ich also im Netz einen Terminalbefehl finde und bin als normaler user angemeldet muss ich für mich einfach nur immer den Zwischenschritt <su + Adminname + Adminpasswort> ergänzen?!

Richtig?

Danke für Eure Hilfe
DgA
 
...
Ich gebe das Admin-Passwort nochmals ein um die bevorstehende <sudo> Aktion zu legitimieren?

Korrekt so?

Jo.
Wenn ich also im Netz einen Terminalbefehl finde und bin als normaler user angemeldet muss ich für mich einfach nur immer den Zwischenschritt <su + Adminname + Adminpasswort> ergänzen?!

Richtig?

Nein, bloß nicht! Es ist nicht gerade schlau, blind Befehle aus dem Netz, deren Wirkung man nicht kennt, mit root-Rechten auszuführen.
Aber wenn du ein gewisses Vertrauen in die Quelle hast, oder ungefähr weißt, was der Befehl macht, hast du recht.
 
naja blind gebe ich sie nicht ein. Ich lese schonmal voher, was dadurch passiert...

Wenn mir die Befehlsquelle nicht vertrauenswürdig erscheint verzichte ich natürlich.

Aber Danke nochmal für den Hinweis
DgA
 
Heißt das, dass ich mein PW im Terminal/in der Shell nur deshalb eingeben muss, um nochmalig darauf hingewiesen worden zu sein, mit welcher Macht ich den kommenden Befehl/die kommenden Befehle anstoßen möchte?
Ja, aber nicht nur. Eigentlich will man auch sicherstellen, dass auch wirklich die richtige Person gerade am Keyboard sitzt - und nicht irgendwer, der sich während der Mittagspause am unbeaufsichtigten Rechner des Kollegen zu schaffen macht. :-)
sudo benutzt eine "grace period", die auf 5 Minuten voreingestellt ist. So lange gilt ein einmal eingegebenes Kennwort auch für weitere sudo-Befehle, dann verfällt der Zeitstempel wieder und es wird beim nächsten mal erneut geprüft, ob du wirklich du bist.

So, wie bei der Installation von Software über die normale GUI, wo ich zwar - nicht schimpfen - als Admin angemeldet und mit den entsprechenden Rechten ausgestattet bin, aber dennoch das PW eingeben muss? So als Warnschild quasi?
Wenn du während einer Softwareinstallation mit Apples eigenem Installer nach dem Admin-Kennwort gefragt wirst, dann folgt das Programm dabei einer Vorgabe die der Ersteller des Pakets so festgelegt hat. Manchmal wird hiernach gefragt, obwohl es technisch gar nicht notwendig wäre - manche Entwickler sind hier unachtsam bei der Bedienung des Programms oder einfach nur generell übervorsichtig.
I.d.R. aber wird das nur gemacht, wenn zumindest ein gewisser Teil der zu installierenden Software nach root-Rechten verlangt um an seinen Zielort kopiert werden zu dürfen (oder zB um ein eingebettetes Skript auszuführen, das irgendwelche Konfigurationen vornimmt).

Wenn ich als Admin angemeldet bin, bestätige ich meine (bereits durch Anmeldung bestehenden) Rechte lediglich.
Korrekt, so ist zumindest die Vorgabe unter OS X. sudo gibt es für alle Unix-basierten Systeme und das mit den Vorgaben kann unter einem "OS Y" durchaus völlig anders aussehen. (In manchen Systemen wird tatsächlich nach dem Kennwort von root gefragt)
Pflichtbewusste Systemverwalter in Unix-Netzen können das Verhalten von sudo auch ganz individuell konfigurieren. Man kann zB bestimmten Benutzern ein Sonderrecht für ganz bestimmte Befehle erteilen, so dass sie diese ganz ohne jede Kennworteingabe ausführen können, den Zugriff auf bzw von bestimmten Remote-Rechnern im Netz beschränken oder sich auch mehrere Stufen von Administratoren mit unterschiedlich weitreichendem Machtspektrum erschaffen.
Davon sollte man aber als Nicht-Vollprofi unbedingt die Finger lassen, die klitzekleinste Unachtsamkeit bei der Konfiguration reisst verheerende Sicherheitslücken im System auf. (Liest du irgendwelche "Tips" zum "sinnvollen" Bearbeiten der "sudoers" Konfigdatei - sag laut und deutlich "nein". Das sprichwörtliche Duo "Streichholz und Benzinkanister" ist ein Dreck gegen diese Schlangengrube.)

Das Admin-PW steigert meine Rechte immer +1, bezogen auf den jeweilig gerade genutzten Kontotyp?
Nein. Wenn du als eingeschränkter Nutzer in einer für OS X typischen Dialogbox nach einem Kennwort gefragt wirst, wirst du gleichzeitig auch den Namen des dazugehörigen Admin eingeben müssen. Die Aktion wird dann stellvertretend durch diesen bestimmten Admin authorisiert, nicht durch dich selbst.
Es ist hier auch nicht immer zwingend der Fall dass dieses Kennwort gebraucht wird um den dicken root-Knüppel aus dem Sack zu holen, häufig dient das auch nur zur Erteilung ganz anderer Privilegien. Dahinter steckt ein sehr komplexes Netz aus verschiedensten Sonderprivilegien, die von den Softwareautoren ganz speziell und individuell auf und für ihr Produkt zugeschnitten werden (...sollten).

Auf der Kommandozeile mit sudo funktioniert das ganze etwas anders (primitiver), dort musst du dich erst "regulär" als Admin anmelden, um den weiteren Sprung zu root ausführen zu dürfen. (Nicht weil das technisch nicht anders ginge, sondern weil die Verwendung jeglicher sudo-Funktionen für "Normalbenutzer" ganz bewusst und strikt untersagt wurde.)
Eine solche Anmeldung unter anderem (Admin) Namen kann in einem schon geöffneten Terminalfenster zB recht einfach als "temporäres Umschalten" mittels eines anderen Hilfsprogramms erfolgen: "su" (für "substitute user" oder "switch user")
su ist gewissermassen der "schnelle Benutzerwechsel" in Textform der es erlaubt vorübergehend eine andere Identität anzunehmen und dann nach Erledigung der Aufgabe wieder zu seiner eigenen zurückzukehren. Alternativ kann man auch ein komplett neues Fenster mit einem entsprechenden Login öffnen und dann zwischen den Fenstern/Tabs hin- und herschalten.
 
Du kennst sicher das Phänomen, dass dir etwas umso besser gefällt je länger du es anschaust und je besser du es verstehst / zu verstehen meinst.

Zum Dank ein kleines Rätsel: Leider ist mein Karamell aus, weil ich zu sparsam war. ;-)