Ergebnis 11 bis 20 von 23
- 14.05.2007, 16:49 #11
- 14.05.2007, 16:57 #12
- 14.05.2007, 19:50 #13
ROFL
Ein Witz mit verschärfter Doppelpointe. Goil.
Schaffst du den Hattrick?
Du weisst ja: "Reden ist Silber, Schweigen ist Gold"
Zwei mal hintereinander geredet, und schon bist du auf dem Umweg übers Aluminium beim Altmetall angekommen...
Aber wahrscheinlich findest du das schon wieder nicht lustig.
Aber vielleicht erheitern dich ja die man-Pages zu diesen beiden Programmen etwas mehr? Darüber hast du bestimmt noch nie gelacht während deiner...
...beruflichen Laufbahn als...
- 14.05.2007, 20:04 #14
- 15.05.2007, 05:20 #15
Also lieber Rastafari, momentan machst Du Dich nur selber zum Affen. Wer so viel heisse Luft versprüht und nichts hinterherzuschieben weiß, braucht keine Kritiker mehr, der hat sich schon selber disqualifiziert.
Übrigens: Bei mir "auf der Arbeit" (von der aus ich auch gerade schreibe) ist der Befehl "sudo su - root" durchaus in Verwendung, und das nicht ohne Grund. Solange Du also fachlich nichts entgegenzusetzen hast, bin ich da ganz ruhig und habe überhaupt keine Bedenken, irgendwann beim Altmetall anzukommen. Die Man-Pages und sudoers sind auf meiner Seite.
[FONT=Verdana]| HP: www.schaf.de mit Mac-Bereich | Haustiere: 3 Macs - 2 Wellensittiche - 1 Karnickel |[/FONT]
- 15.05.2007, 06:02 #16
Ein paar Infos über sudo:
sudo dient dazu, Kommandos als ein anderer User ausführen zu können, in der Regel ist das der root-User (also der Chef auf der Maschine). Dazu gibt es ein Konfigfile /etc/sudoers (bei Mac OS X äquivalent zu /private/etc/sudoers), in dem genau festgelegt wird, wer was wo als wer ausführen darf.
Die beiden standardmässig aktiven Zeilen lauten[FONT=Courier New]root ALL=(ALL) ALLDas bedeutet in Kurzform, der User root sowie alle User in der Gruppe admin dürfen mit sudo jedes Kommando als jeder User auf jedem Host ausführen, sozusagen ein Freifahrtschein.
%admin ALL=(ALL) ALL[/FONT]
Daher ist es als Admin-User möglich, z.B. mit einem[FONT=Courier New]sudo lsof[/FONT]das Kommando lsof als User root (da kein anderer User explizit angegeben) auszuführen, ohne dafür extra den User wechseln zu müssen. Ich kann ein Kommando aber auch als ein bestimmter anderer User ausführen, z.B. mit[FONT=Courier New]sudo -u andereruser tolleskommando[/FONT]sudo erlaubt mit dem Parameter -s einen Trick, direkt in die root-Shell zu kommen. -s bedeutet, statt ein Kommando auszuführen, wird eine Shell (definiert in der Umgebungsvariable $SHELL) aufgerufen und da bei[FONT=Courier New]sudo -s[/FONT]kein spezieller User angegeben ist, landet man automatisch in einer root-Shell.
All das funktioniert aber nur, weil ich als Admin-User in der sudoers-Datei einen Freifahrtschein habe. Alles was ich brauche, ist mein eigenes Passwort (und selbst das kann mit dem Parameter NOPASSWD in der sudoers abschalten).
Ein Nicht-Admin-User kann standardmässig auf Mac OS X kein direktes su (Userwechsel) auf den User root machen, aber auch ein sudo hilft nicht, da er nicht zur Gruppe admin gehört. Folglich bleibt nur, zuerst vom Nicht-Admin-User auf einen Admin-User zu wechseln, um dann wieder alle sudo-Vorteile geniessen zu können (Befehl direkt als root ausführen bzw. in die root-Shell wechseln).
Aber es gibt einen "Trick". Ich kann natürlich meinen Nicht-Admin-User in die sudoers eintragen (und damit den Sicherheitsvorteil ein Stück weit einbüssen
). Die Zeile[FONT=Courier New]lazertis ALL = (ALL) /usr/bin/su - root[/FONT]macht genau das. Sie gibt dem User lazertis die Möglichkeit, den Befehl "su - root" mithilfe von sudo auszuführen und so direkt root zu werden. Es reicht das eigene Passwort.[FONT=Courier New]lazertis ALL = (ALL) NOPASSWD: /usr/bin/su - root[/FONT]würde sogar dieses überflüssig machen. Hier kommt auch genau der von mir erwähnte Befehl[FONT=Courier New]sudo su - root [/FONT]ins Spiel.
Fazit: Mit sudo samt /etc/sudoers kann ich Berechtigungen zum Ausführen von Befehlen auf Wunsch filigran steuern. Eine sudoers-Zeile wie[FONT=Courier New]wwwrun ALL = (ALL) NOPASSWD: /bin/ls -l /home/lazertis/mail/[/FONT]würde meinem Apache Webserver (der ansonsten als ziemlich unpriviligierter User wwwrun läuft) erlauben, z.B. in einem PHP-Skript die Dateien in meinem IMAP-Mailverzeichnis anzuzeigen. Und da ein Webserver eher selten Passwörter irgendwo eintippen kann, braucht er das durch das NOPASSWD nicht. Vorteil: Er darf mit dieser Zeile aber auch nur genau das, kann die Dateien also z.B. nicht verändern.
Das ist die Welt von sudo...
Kleiner Nachtrag: Warum eigentlich "sudo su - root" anstatt gleich "su - root"? Weil ich bei ersterem (wenn überhaupt) mein eigenes Passwort angeben muss, letzteres aber das root-Passwort benötigt und das soll vielleicht nicht jeder wissen.
Geändert von lazertis (15.05.2007 um 06:25 Uhr) Grund: Nachtrag hinzugefügt
[FONT=Verdana]| HP: www.schaf.de mit Mac-Bereich | Haustiere: 3 Macs - 2 Wellensittiche - 1 Karnickel |[/FONT]
- 15.05.2007, 07:49 #17
Noch eine Frage zum su-Verhalten unter Mac OS X, welches für mich etwas gewöhnungsbedürftig ist:
Ein Nicht-Admin-User (weil nicht in Gruppe wheel oder admin) kann kein direktes su zu root machen. Das ist zwar, soweit ich das bisher kenne, anders als bei anderen Unixen, aber durchaus sinnvoll.
Wechsele ich nun zu einem Admin-User incl. Loginshell durch "su - adminuser" (anschl. ist BASH=/bin/bash), kann auch dieser kein su auf root machen. Benutze ich aber "su adminuser", also keine Loginshell (BASH=su), funktioniert ein anschliessendes "su - root" einwandfrei.
Das verwundert mich doch etwas. Bin da gerne offen für (sachliche
) Erklärungen oder Nachhilfe. [FONT=Verdana]| HP: www.schaf.de mit Mac-Bereich | Haustiere: 3 Macs - 2 Wellensittiche - 1 Karnickel |[/FONT]
- 15.05.2007, 11:12 #18Hobbes_Inaktiv
Allgemein verstehe ich nicht (und ich glaube auch, dass das einer von Rastafaris Punkten ist), weshalb Du bei [FONT="Courier New"]su[/FONT] immer explizit root noch erwähnst. Wenn Du [FONT="Courier New"]su[/FONT] auf einem Linux-System und auch auf Mac OS X aufrufst, wird immer standardmässig root genommen (ist dies bei anderen UNICES anders?).
---------
Bei Mac OS X ist [FONT="Courier New"]su[/FONT] auf root (eben kurz mit [FONT="Courier New"]su[/FONT] alleine) allgemein nur möglich, wenn root "aktiviert" ist. root ist also standardmässig weder normalen Usern noch Admins via [FONT="Courier New"]su[/FONT] zugänglich.
"Aktivieren" deshalb, da root ja bekanntermassen nicht wirklich inaktiv ist (siehe zahlreiche Dateien und zahlreiche laufende Prozesse auf jedem System). Es gibt jedoch wenigstens meiner Meinung absolut keinen Grund auf dem Mac den direkten Zugang zu root zu "aktivieren".
Alternativ kann man natürlich jederzeit mit [FONT="Courier New"]su[/FONT] auf einen anderen Benutzer (eben beispielsweise einen Admin) wechseln, wobei bei einem Admin dann [FONT="Courier New"]sudo[/FONT] genutzt werden kann zur Ausführung von Programmen als root.
Konkret: So wüsste ich in dem von Dir in der Frage angegebenen Beispiel
auch nicht, was für ein Passwort ich für root eingeben sollte/könnte (oder hast Du root auf dem Mac "aktiviert"?).
---------
Der Grund, weshalb man auf dem Mac nicht als Benutzer [FONT="Courier New"]sudo[/FONT] benutzen kann, ist, dass normale Benutzer nicht in der sudoers Liste sind - im Gegensatz zu den Admins, wie Du in den obenstehenden Erkärungen zur sudoers Liste bereits erwähnt hast. Dieses Einstellung macht auch Sinn, so dass man auch da meines Erachtens wenigstens als normaler Benutzer, wie ich es bin, nichts daran zu ändern braucht.
Als Ergänzung möchte ich noch sagen, dass man diese sudoers Liste nicht einfach mittels eines Editors ändern sollte, sondern das Kommando [FONT="Courier New"]visudo[/FONT] benutzen sollte, das auf [FONT="Courier New"]vim[/FONT] basiert und entsprechend gleich zu bedienen ist. Selbstverständlich führt man [FONT="Courier New"]visudo[/FONT] als Admin mittels [FONT="Courier New"]sudo[/FONT] aus
Den [FONT="Courier New"]vimtutor[/FONT] brauchst Du sicher nicht. Den erwähne ich nur der Vollständigkeit halber, so dass sich jemand, der sich mit vim nicht auskennen sollte, sehr rasch in dessen Funktionen einarbeiten kann. Selbstverständlich sollte man solche tiefgreifende Änderungen erst machen, wenn man sich absolut sicher ist, was man tut. Als root (und das ist man auch, wenn man einen Befehl via sudo ausführt) kann man ein System schneller "zerschiessen", als einem lieb ist.
---------
Noch eine Frage: Wie hier und andernorts bereits dargelegt, benutze ich eigentlich immer als Admin [FONT="Courier New"]sudo[/FONT] mit dem entsprechend als root geplanten Befehl, wenn ich als root einen Befehl ausführen lassen möchte. Allgemein geniesse ich das gewisse Sicherheitsgefühl (Sicherheit vor meinen eigenen Typos
), indem ich nicht ständig als root unterwegs bin. Wenn ich mal wirklich # im bash-Prompt sehen möchte, dann benutze ich kurz [FONT="Courier New"]sudo -s[/FONT]. Gibt es einen relevanten Unterschied zwischen [FONT="Courier New"]sudo -s[/FONT] und [FONT="Courier New"]sudo su[/FONT], so dass ich besser die zweite Option wählen sollte als die erste? Vielen Dank! Geändert von Hobbes_ (15.05.2007 um 12:04 Uhr) Grund: Kleine Änderungen / Typos
- 15.05.2007, 13:36 #19
@psc: Erstmal vielen lieben Dank für diese ausführliche Antwort. Sie hilft mir, ein Stück mehr die Unixwelt von Mac OS X zu verstehen, die manchmal doch etwas von der abweicht, die ich bis jetzt gewohnt bin. Warum das so ist, erklären auch meine untenstehenden Antworten ein Stück.
Ahaaa, deswegen. Seht Ihr, das ist für mich so selbstverständlich, bei su den User mitzunennen, weil die Standardsituation für mich genau umgekehrt ist: Ich arbeite in der 24*7 Systemüberwachung eines grossen Rechenzentrums (LH Systems), wir betreuen rund um die Uhr mehrere tausend Unix-Server im sog. 2nd und 3rd level support. Dabei geht es sowohl um Betriebssystemprobleme als auch Applikationen (R3, Oracle, diverseste Kundenanwendungen). Liegt eine Störung vor, muß die Analyse schnell und effizient erfolgen. Daher loggen wir uns auf den Servern (per ssh-key) direkt als root ein. So "arrogant" es vielleicht klingen mag, aber mein Satz mit dem "beruflich als root unterwegs" stimmt wirklich.Allgemein verstehe ich nicht (und ich glaube auch, dass das einer von Rastafaris Punkten ist), weshalb Du bei [FONT=Courier New]su[/FONT] immer explizit root noch erwähnst. Wenn Du [FONT=Courier New]su[/FONT] auf einem Linux-System und auch auf Mac OS X aufrufst, wird immer standardmässig root genommen (ist dies bei anderen UNICES anders?).
Ein Arbeiten mit eingeschränktem User plus sudo würde unser Tempo deutlich verlangsamen, was sich in der Praxis auch bereits einmal gezeigt hatte und dann ganz schnell geändert wurde.
Natürlich müssen wir für viele Maßnahmen auch häufig den User wechseln, wobei ich (weil ich als root anfange) immer einen Usernamen anzugeben habe, sei es für R3, Oracle, Middleware oder andere Applikationen. Daher ist in meinem (unserem) Sprachgebrauch das "su plus user" die Regel.
Denoch bleibt mir unverständlich, wie diese Tatsache eine solche hmmm... respektlose Reaktion wie die von Rastafari auslösen kann und er dann nicht mal fähig oder willens ist, zu sagen, um was es eigentlich geht.
Hmmm... jetzt wird mir der Mechanismus des "aktivierten" root-Accounts klarer. Bei mir geht das durchaus, aber erst, nachdem ich root ein Passwort vergeben habe (erst sudo -s, dann die Nutzung des Befehls passwd). Das ist aber nichts anderes als die Aktivierung von root im Netinfo Manager.Bei Mac OS X ist [FONT=Courier New]su[/FONT] auf root (eben kurz mit [FONT=Courier New]su[/FONT] alleine) allgemein nur möglich, wenn root "aktiviert" ist. root ist also standardmässig weder normalen Usern noch Admins via [FONT=Courier New]su[/FONT] zugänglich.
Ja... hätte ich mir denken können... mea culpa... 
Für ein privates System vollkommen richtig. In der Server-Störungsbeseitigung im Rechenzentrum ist das aus meiner Sicht anders (s.o.), aber für ein privates System vollkommen richtig. Zu Hause bin ich dann auch ganz Macianer, denn trotz aller Gewohnheiten vom Job her hat mein Hauptuser zu Hause keine Adminrechte.Es gibt jedoch wenigstens meiner Meinung absolut keinen Grund auf dem Mac den direkten Zugang zu root zu "aktivieren".
Jep, eine Selbstverständlichkeit, ebenso wie die Nutzung von vi (nicht mal vim), da wir uns auf den verschiedensten Systemen immer mal wieder editierend in Dateien bewegen müssen und da bleibt kein anderer kleinster Nenner mehr.dass man diese sudoers Liste nicht einfach mittels eines Editors ändern sollte, sondern das Kommando [FONT=Courier New]visudo[/FONT] benutzen sollte
Auch hier: Zustimmung. Ich denke, die meisten Mißverständnisse, die hier zwischen anderen und mir aufkamen, liegen am unterschiedlichen Umfeld. Ich betrachte mich sicherlich nicht als "Profi", bewege mich aber in gewisser Weise selbstverständlich als root auf einem Unix-System (mitunter auch als Server-Admin, also auch das komplette Aufsetzen und Pflegen von Systemen).Als root (und das ist man auch, wenn man einen Befehl via sudo ausführt) kann man ein System schneller "zerschiessen", als einem lieb ist.
Der Unterschied liegt im Detail, genauer in den Umgebungsvariablen, der Shell und der Ausführung von z.B. .profile und .bashrc-Dateien.Gibt es einen relevanten Unterschied zwischen [FONT=Courier New]sudo -s[/FONT] und [FONT=Courier New]sudo su[/FONT], so dass ich besser die zweite Option wählen sollte als die erste?
sudo su- keine Loginshell (BASH=/usr/bin/su)
- Homediectory wechselt zu dem von root (HOME=/var/root)
- Aktuelles Verzeichnis bleibt gleich (PWD=/Users/adminuser)
- Die Shell wird zur sh (SHELL=/bin/sh)
- .bashrc wird ausgeführt
- .profile wird NICHT ausgeführt
- Login-Shell (BASH=/bin/bash)
- Homedirectory bleibt gleich (HOME=/Users/adminuser)
- Aktuelles Verzeichnis bleibt gleich (PWD=/Users/adminuser)
- Typ der Shell wird übernommen (aus $SHELL) (SHELL=/bin/bash)
- .bashrc wird ausgeführt
- .profile wird NICHT ausgeführt
- Login-Shell (BASH=/bin/sh)
- Homediectory wechselt zu dem von root (HOME=/var/root)
- Aktuelles Verzeichnis: root's Home (PWD=/var/root)
- Die Shell wird zur sh (SHELL=/bin/sh)
- .bashrc wird NICHT ausgeführt
- .profile wird ausgeführt
) am meisten Sinn, weil die .profile auch ausgeführt wird. Ferner hast Du (im Gegensatz zu [FONT=Courier New]sudo su[/FONT]) eine neue Shell (aber sh!) und bist gleich im HomeDir von root.
Beim [FONT=Courier New]sudo -s[/FONT] bleiben Home- und aktuelles Verzeichnis unverändert, ebenso der Shell-Typ.
Ist also sozusagen ein "halber Wechsel" nach root, da auch die .profile nicht ausgeführt wird. Hier steht zwar wohl standardmässig nicht viel drin, aber das kann sich ja auch ändern.
Ein [FONT=Courier New]sudo su[/FONT], also ohne [FONT=Courier New]-[/FONT], sprich ohne Loginshell ist m.E. das größte "Durcheinander". Du hast keine Loginshell, das aktuelle Verzeichnis bleibt gleich, aber Dein HomeDir ändert sich etc.
Letzten Endes Geschmackssache, man nimmt, was am besten passt. Ich bevorzuge nachwievor (natürlich nur, wenn überhaupt notwendig
), das [FONT=Courier New]sudo su - root
[/FONT]
Fazit: Vielen Dank für diese Diskussion. Ich konnte doch noch einiges über den Hintergrund von Mac OS X lernen im Vergleich zu anderen Unices. Und aus meiner Sicht hat es bestimmt das eine oder andere Mißverständnis aufgeräumt. Danke!
[FONT=Courier New]
[/FONT]Geändert von lazertis (16.05.2007 um 03:03 Uhr) Grund: Anderen Beispieluser w/ Verständlichkeit genommen
[FONT=Verdana]| HP: www.schaf.de mit Mac-Bereich | Haustiere: 3 Macs - 2 Wellensittiche - 1 Karnickel |[/FONT]
- 21.05.2007, 12:08 #20
Diese Woche sollte mein MacBook eintreffen.. I like to switchit switchit...
Wenn ich OS X installiere macht es Sinn, als Benutzer "Administrator" als erstes einzurichten oder kann man das immer noch nachher ändern?
Ich werde für meinen täglichen Gebrauch nur mit "normalen" Benutzerrechten unterwegs sein...
also OS X mit "Administrator oder "Normal" Account aufsetzen?- iMac 24" 2,4 GHz 4 GB Ram (2007)
- iPod nano 4GB (2007)
- MacBook 13" 2,0 GHz 1 GB Ram (2007)
- Dell Dimension 8200 1,7GHz 512MB Ram (2002)
Ähnliche Themen
-
Switcherfrage: Schriftgrösse??
Von macje im Forum OS XAntworten: 15Letzter Beitrag: 24.04.2007, 01:01 -
Switcherfrage zu iBook G3 600 MHz und OS X 10.3
Von hohlymoly im Forum Mobil-MacsAntworten: 3Letzter Beitrag: 05.01.2007, 17:23



Zitieren



