Von sh zu bash geändert und jetzt kein login mehr

colourfultree

Active Member
Hallo,

ich hab vor kurzem bei meinem Root über chsh die Shell von bash wieder zu sh geändert und dabei das falsche Verzeichnis hingeschrieben. Jetzt kann ich mich nicht mehr als root anmelden oder als User mit su root-Rechte erlangen.

Wie mache ich das rückgängig?

MfG clft
 
Einfacher ist es eigentlich in "Singel User modus" zu booten (boot -s) und dann
mount /
chsh
reboot
 
Meine Tastatur reagiert irgendwie erst nachdem Slim gestartet ist und wie das mit dem USB gehen soll, weiß ich nicht.
Wie hast du den FreeBSD installiert? Einfach das Installationsmedium booten und dich bei der Live-CD anmelden mit "root". Dann mounten oder den ZPOOL importieren, ändern und fertig.
 
Davon mal abgesehen sollte man die Shell von root nicht ändern. Das führt nämlich zu solchen Problemen ;)

Richte dir lieber einen Benutzer ein, der alles via sudo machen darf.
 
Nein. Root-Shell sollt ihr am besten lassen wie sie voreingestellt ist und nicht einmal das Locale bei root anfassen!
 
FreeBSD hat einen zweiten root-User "toor". Man muss ihm nur ein Passwort setzen:
Code:
passwd toor
Dann kann man mit dem root herumfummeln, wie man glücklich ist. Geht es schief, nimmt man den unveränderten toor und repariert es wieder. Alternativ gern auch anders herum.
 
Nein. Root-Shell sollt ihr am besten lassen wie sie voreingestellt ist und nicht einmal das Locale bei root anfassen!
Gebe ich dir zu 50% recht aber mit ZFS kann man das ein bisschen lockerer sehen. Macht man dort einen Import, so ist "/" und "/usr/..." meist im gleichen POOL und somit auch immer vorhanden.
 
foxit, erst wenn man sich mit so etwas ins Knie schießt wird man schlagartig davon überzeugt sein.

Problem ist, dass mit dem root-Benutzer Builds von wichtigen Teilen des Systems gemacht werden. sh wird einfach erwartet als Start-Shell und bei root sollte man sich sowieso nicht bequem machen, sondern den Ort sofort verlassen (gute Erinnerung ist das). Es passiert selten, aber es kann sein, dass man einen kaputten Build bekommt, dadurch, dass root die falsche Shell hat ($SHELL).

Mit Locale ist noch viel schlimmer... das hat eindeutig Auswirkungen darauf wie Skripte laufen. Alle Textverarbeitungswerkzeuge wie grep, sed, uvm. verhalten sich anders und führen hier öfters zu unerklärlichen Problemen, die schwierig zu finden sind, Benutzer frustieren und für Entwickler nicht auffindbar sind.

Ich hatte schon einige Male Probleme (ungünstig abgebrochenes make installworld war bis jetzt das Highlight, was mich geschockt hat, weil /usr/bin/make nicht funktioniert hat), wegen solche harmlosen Modifikationen am Benutzer root. Lasst es einfach, ihr erspart Euch Ärger.
 
ok ok ;)

Nein ich kann das nachvollziehen. Stimmt schon und man lernt erst, wenn man sich mal, wie du sagst ins Knie schiesst.

Ich habe es bei mir so gelöst, dass "tmux" mir automatisch "zsh" startet:
Code:
set -g default-command 'zsh -i'
 
Ja natürlich kannst Du es so machen, dass Du manuell eine Shell startest, die gerade beim root-Nutzer nicht so PITA für bestimmte Arbeiten ist. Pass nur auf, dass make buildworld, make installworld und Ports-Installationen eine saubere Standardumgebung haben.
 
Ich persönlich nutze einfach den toor-User und hab keinerlei Probleme.
Root-User wird nur über IPMI / Konsole benutzt.

Gruß
Markus
 
Zurück
Oben