Warum wechsle ich Benutzer, wenn ich mich vom Terminal (fedora) aus als root anmelde? Und warum werden meine Änderungen an .bashrc & .bash_profile nicht angezeigt, wenn ich dies tue?

403
Dash Conroy

Okay, also, wenn ich als root anmelden in meinem Terminal sudo, sudo -ioder suerhalte ich:
[dash@localhost IN => ~]$ su
Password
[root@localhost IN => /home/dash]$( man beachte die $statt #, dies ein Fehler sein könnte ich gemacht bei der Bearbeitung .bashrc& .bashprofile) (auch wenn der letzte Teil meines .bashrcheißt \$)

Wenn ich jetzt .bashrc& .bash_profile(as root) bearbeite, sehe ich die Änderungen nur, solange ich bin root. Wenn ich das Terminal schließe und es wieder öffne, sind die Änderungen weg. Wenn ich mich rootjedoch als anmelde, werden die Änderungen erneut angezeigt. Ist es möglich, dass es 2 .bashrcs und 2 .bash_profiles gibt? Wenn ja, bedeutet das, dass ich nur die Einstellungen für den Root-Benutzer geändert habe?

Auf einem anderen Computer habe ich den .bashrcund .bash_profileals normalen Benutzer (nicht root) geändert . Die Änderungen traten nur auf, solange ich nicht root war. Ich habe gehört, dass eine dieser beiden Dateien für normales Terminal und die andere für Muscheln gedacht ist. Wenn ja, warum wurden die Änderungen nur angezeigt, während ich nicht root war, obwohl ich den gleichen Code in beide Dateien eingefügt habe, statt auf zu greifen if ~/etc/.bashrc...? (vorausgesetzt, dass root eine Shell ist)

0
Diese Dateien werden im Basisordner gespeichert, der für jeden Benutzer eindeutig ist. `~ / .bashrc` ist, wenn Sie als root angemeldet sind, nicht die gleiche Datei wie` ~ / .bashrc`, wenn Sie als anderer Benutzer angemeldet sind. `~` = Home-Ordner des Benutzers. Appleoddity vor 5 Jahren 1

1 Antwort auf die Frage

0
Debian_yadav

Beachten Sie zunächst, dass .bashrcfür jeden Benutzer eine separate Datei vorhanden ist, einschließlich root.

Wenn Sie in Ihrem ersten Fall den Befehl verwendet haben, werden suSie zum Root-Benutzer, dessen aktuelles Verzeichnis sich befindet /home/dash. Wenn Sie dies tun, werden echo $HOMESie feststellen, dass dies der Fall ist, /rootund wenn Sie die .bashrcDatei bearbeiten, bearbeiten Sie diese Datei im /rootVerzeichnis. Sie bedeutet, dass Sie die .bashrcDatei für den Root-Benutzer bearbeiten . Diese Änderungen werden also nur angezeigt, wenn Sie sich als root und nicht als normaler Benutzer anmelden.

Im zweiten Fall, wenn Sie die Datei als normaler Benutzer bearbeitet haben, werden die Änderungen nur dem normalen Benutzer angezeigt, wenn Sie die Dateien für diesen Benutzer geändert haben.

Gibt es eine Möglichkeit, root-ähnliche Privilegien zu haben, ohne root im Terminal zu sein? Bleiben Sie also als Benutzer angemeldet, haben aber noch erhöhte Berechtigungen? Dash Conroy vor 5 Jahren 0
Sollten die an den Dateien vorgenommenen Änderungen auch dann nicht erhalten bleiben, wenn Sie sich im Terminal als "root" befinden, solange Sie sich nicht vom Computer abgemeldet haben? Weil ich gehört habe, dass eine Datei für den gleichen Benutzer wie für den Computer im Terminal ist und die andere für SSH oder als andere Benutzer angemeldet ist. Dash Conroy vor 5 Jahren 0
@DashConroy Sie können `sudo` verwenden, um Befehle mit 'root'-Privilegien auszuführen, während Sie als Benutzer angemeldet bleiben Debian_yadav vor 5 Jahren 0
Okay, das ist gut, aber das bedeutet, dass ich bei jedem Befehl mein Passwort erneut eingeben muss. Gibt es eine Möglichkeit, dies zu umgehen? Dash Conroy vor 5 Jahren 0
@DashConroy Bearbeiten Sie die Sudoers-Datei mit dem Befehl "visudo", um Sudo ohne Kennwort zu kennzeichnen. Dies wird jedoch nicht empfohlen. Die zweite Lösung besteht darin, das Zeitlimit von "sudo" zu verlängern. Google es und du wirst finden. Debian_yadav vor 5 Jahren 0
Okay, vielen Dank für Ihre Hilfe! Dash Conroy vor 5 Jahren 0