1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Leopard: Root Bash

Dieses Thema im Forum "macOS & OS X" wurde erstellt von galdo, 08.11.07.

  1. galdo

    galdo Auralia

    Dabei seit:
    02.06.06
    Beiträge:
    201
    Hallo,

    ich habe ein kleines Problem mit dem Leoparden :(
    Also normaler User ist ja standardmäßig die Bash als Shell eingestellt, was auch wunderbar ist, aber wenn ich mich mit su als root anmelden möchte, dann erhalte ich als Shell TCSH...

    in meiner /etc/passwd steht im Root-Eintrag /bin/bash als Shell, aber irgendwie scheint der das zu ignorieren. Selbst ein
    in der .profile-Datei und der globalen /etc/profile bringt leider nichts :(

    Hat jemand eine Idee, wie ich dennoch die Bash auch für den Root-User aktivieren kann?

    Vielen Dank
    Galdo
     
  2. fuzz

    fuzz Tokyo Rose

    Dabei seit:
    13.06.06
    Beiträge:
    69
    bei mir geht "su" gar nicht erst... geht was du suchst vielleicht mit "sudo -s" ???
    so habe ich es unter tiger immer gemacht und unter leopard schaut es nur bissl anders aus aber es erscheint "bash 3-2" oder so
     
  3. galdo

    galdo Auralia

    Dabei seit:
    02.06.06
    Beiträge:
    201
    Habs gelöst:

    chsh -s /path/to/your/shell username

    ändert die Shell für bestimmte benutzer - also bei mir:

    chsh -s /bin/bash root

    Um den User root anzulegen, musst du erst mit sudo passwd root erst ein Passwort festlegen...
     
  4. pepi

    pepi Cellini

    Dabei seit:
    03.09.05
    Beiträge:
    8.741
    Erstens hast Du als normaler User definitiv absolut keinen Grund unter Mac OS X als rot zu arbeiten! Das nur mal so am Rande erwähnt.

    Frage dazu: Wurde Dein System von 10.2 > 10.3 > 10.4 > 10.5 upgedatet?

    Die /etc/passwd wird ausschließlich im Single User mode berücksichtigt und ist somit für Dich erstens uninteressant und zweitens tabu, es sei denn Du weist genau warum Du Dein System potentiell verschrotten willst.

    Der root User muß nicht angelegt werden, er exisitert sowieso und immer schon. Es hat auch einen Grund warum er nicht aktiviert ist. chsh ist zwar der korrekte Weg um die Login Shell eines Users zu ändern, es ist jedoch definitiv gefährlich dies bei root zu tun, da viele Systemkomponenten nicht shellagnostisch sind!


    Und weils mich interessiert: Warum glaubst Du unbedingt als root etwas (was?) tun zu müssen und warum bist Du der Meinung, daß dafür sudo nicht ausreichend ist?

    Man kann es garnicht oft genug wiederholen: Es ist unter Mac OS X definitiv nicht notwendig und auch nicht ratsam den root User zu aktivieren!
    Gruß Pepi
     
  5. galdo

    galdo Auralia

    Dabei seit:
    02.06.06
    Beiträge:
    201
    Das mit dem Single-Mode ist mir neu - danke für die Infos.
    Aber um den Rest brauchst du dir keinen Gedanken machen, lass das mal getrost meine Sorge sein - übrigens bei Tiger war für den Root ja auch die Bash aktiv und nicht die Shell...

    Außerdem mach ich Backups und darf mit meinem System machen was ich will - ich bin ja schließlich root :p

    Ne Spaß beiseite - ich mag sudo nicht! Und dass mit "anlegen" war natürlich nicht so gemeint wies da steht - mir scheint nur, als wüßte "fuzz" nicht so wirklich über den UNIX-Unterbau bescheid und da war das eben am anschaulichsten...

    Du brauchst dir um mich keine Gedanken machen - ich weiß schon was ich tue :)

    Galdo
     
  6. TaTonka

    TaTonka Neuer Berner Rosenapfel

    Dabei seit:
    19.03.06
    Beiträge:
    1.961
    naja, wenn wir schon dabei sind...
    ich konnte mit tiger wunderbar mit "sudo su" in ne rootshell wechseln. das geht jetzt auch noch, allerdings hab ich da wie gesagt, tcsh und nicht die bash.
    kann ich das wie oben erwähnt genau so einstellen, ohne meinen rootaccount zu aktivieren?
     
  7. Rastafari

    Rastafari Golden Noble

    Dabei seit:
    10.03.05
    Beiträge:
    17.896
    Ein Blödsinn, der schon längst abgestellt wäre, ginge es nach mir.
    Code:
    man sudo
    sudo -s
    sudo benötigt keine Aktivierung des Root-Logins.
     
  8. MacMark

    MacMark Biesterfelder Renette

    Dabei seit:
    01.01.05
    Beiträge:
    4.709
    Leopard _ist_ UNIX.
     
  9. Rastafari

    Rastafari Golden Noble

    Dabei seit:
    10.03.05
    Beiträge:
    17.896
    Der erste Satz überführt den zweiten der Lüge.
     
  10. Hobbes_

    Hobbes_ Gast

    Ich gebe zu: Ich bin selbst begeisterter sudoer. Mir gefällt einfach die Idee dahinter. Doch bin ich ja auch nur ein Einsteiger...
     
  11. WDZaphod

    WDZaphod Prinzenapfel

    Dabei seit:
    10.11.06
    Beiträge:
    546
    Viele Unixe verwenden eine "Rudimenär-Shell", da diese hard gelinkt ist, und daher so gut wie immer funktioniert. Die Bash kann man zerlegen, was dann etwas blöd ist - wenn root die als Loginshell verwendet.
    Unter Solaris und AIX kommt auch erst mal die C-Shell, welche gelinde gesagt grausam ist. Daher rufe ich da zuerst immer /bin/bash auf...
    Ich denke, daß OSX einfach diese Eigenschaft übernommen hat, um unbenutzbare Systeme zu vermeiden.
     
  12. pepi

    pepi Cellini

    Dabei seit:
    03.09.05
    Beiträge:
    8.741
    Für Einsteiger gibts da ein hervorragendes Terminal Tutorial! :p


    Unter Leopard ist die Standard Shell für Root /bin/sh welche genaugenommen eine bash im sh Mode ist.

    Die einzigen Möglichkeiten wie root zu einer tcsh als default shell gekommen ist sind manuelle Änderung derselben, oder das System wurde von maximal 10.2 Jaguar immer nur aktualisiert und niemals clean installiert. Dann bleiben solche Altlasten erhalten. Mir persönlch wäre das Risiko allerdings zu groß um bei so einem System die root Shell zu ändern, da ich das für betriebsgefährlich halte.
    Gruß Pepi
     
    1 Person gefällt das.
  13. Katagia

    Katagia Zuccalmaglios Renette

    Dabei seit:
    18.02.07
    Beiträge:
    260
    Also wenn ich eine Root-Shell aufmache, öffne ich zu erst eine normale
    Terminalsitzung und wechsele auf einen Adminbenutzer.

    Mit dem mache ich dann ein "sudo bash" und habe meine root-Shelle.
    Das sollte so auch mit jeder anderen Shell gehn.
     

Diese Seite empfehlen