sudo -s und sudo su - Unterschied

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
Antworten
AxelMD
Beiträge: 1381
Registriert: 15.03.2009 08:02:11

sudo -s und sudo su - Unterschied

Beitrag von AxelMD » 16.04.2020 17:48:41

Hallo Forum,

wo ist der Unterschied zwischen sudo -s und sudo su?

MfG

AxelMD

willy4711

Re: sudo -s und sudo su - Unterschied

Beitrag von willy4711 » 16.04.2020 18:55:21

Das Manual sagt:
-s [command]

The -s (shell) option runs the shell specified by the SHELL environment variable if it is set or the shell as specified in the password database. If a command is specified, it is passed to the shell for execution via the shell's -c option. If no command is specified, an interactive shell is executed.
Was da allerdings interaktiv ist kann ich die nicht sagen. Sieht aus wie sudo su

Code: Alles auswählen

sudo su:
Du wirst root, wechselst aber nicht in das Root Environment (Umgebung). Für die Benutzung und die Rechte von sudo hat das keine Auswirkungen, weil du dann eh alles darfst, auch der Pfad nach /sbin/ ist dann gesetzt.

Wenn du kein sudo benutzen willst, und die Pfade ($PATH) nicht erweitert wurden, kannst du z.B: als "normaler " su keine Befehle
ausführen, die im Pfad /sbin/ liegen, es sei denn du gibst den Pfad mit dem Befehl zusammen ein.
Mit su - hast du dann alle Pfade offen.

Unterschiede im Terminal:

Code: Alles auswählen

willy@debian:~$ sudo su
[sudo] Passwort für willy: 
root@debian:/home/willy# exit 
Gleichbedeutend mit aber immer mit dem Root- PW:

Code: Alles auswählen

willy@debian:~$ su
Passwort: 
root@debian:/home/willy# 
aber:

Code: Alles auswählen

willy@debian:~$ su -
Passwort: 
root@debian:~# Abgemeldet
Sehr seltsam:
Alle Befehle, die du mit sudo eingibst landen in deiner persönlichen ~/bash_history

Gibst du die Befehle als "normaler Root" also nur mit su ein, landen sie in der History von Root in /root/.bash_history

Na ja nicht drüber nachdenken :facepalm:

Antworten