/ / sudo ma różne środowiska, dlaczego? - bash, root, sudo, env

sudo ma różne środowiska, dlaczego? - bash, root, sudo, env

Zdaję sobie sprawę, że:

sudo -i
env

jest różny od:

sudo -i
sudo env

Oboje są sudo, dlaczego są inni?

W moim przypadku zdaję sobie sprawę, że PATH są bardzo różne, więc czasami rzeczy nie mogą działać z "sudo blah", ale działa, gdy po raz pierwszy loguję się do sudo, a następnie uruchamiam polecenie. (Podobnie jak moje inne pytanie # 4976658)

Odpowiedzi:

1 dla odpowiedzi № 1

Są spodziewane różnice, takie jak SUDO_USER, SUDO_UID, i SUDO_GID.

A potem jest PATH.

Kiedy uciekasz

sudo -i
env

powinieneś oczekiwać root'a PATH, ale kiedy uciekasz

sudo -i
sudo env

powinieneś oczekiwać wartości domyślnej PATH.

Myślę, że przekonasz się, że wynika to z opcji "bezpiecznej ścieżki", którą przyjęły zarówno Ubuntu, jak i Fedora.

Zgadzam się, że to denerwujące, istnieje wiele innych wątków dotyczących tego zachowania.: /

Na przykład zobacz ten wątek stackoverflow: sudo zmienia PATH - dlaczego?