Ze su
strony podręcznika użytkownika:
For backward compatibility, su defaults to not change the current directory
and to only set the environment variables HOME and SHELL (plus USER and LOGNAME
if the target user is not root). It is recommended to always use the
--login option (instead of its shortcut -) to avoid side effects caused
by mixing environments.
...
-, -l, --login
Start the shell as a login shell with an environment similar to a real login:
o clears all the environment variables except TERM
o initializes the environment variables HOME, SHELL, USER, LOGNAME, and PATH
o changes to the target user's home directory
o sets argv[0] of the shell to '-' in order to make the shell a login shell
Trudno powiedzieć, czy jest jakaś różnica między -
i --login
(lub podobno tylko -l
). Mianowicie strona podręcznika mówi „zamiast skrótu -”, ale wszystkie te opcje są zgrupowane razem i nie widzę wyjaśnienia różnicy, jeśli w ogóle istnieje.
UPD Sprawdziłem pytanie, które ma rozwiązać mój problem . Pytanie dotyczy w zasadzie różnicy między su
i su -
. I pytam o różnicę między su -
i su --login
. Więc nie, to wcale nie rozwiązuje problemu.
To avoid side effects caused by mixing environments use --login option or its equivalent -. The first form is recommended because - can be placed only just before username.
su
isu -
. I pytam o różnicę międzysu -
isu --login
. Czego tu brakuje?Odpowiedzi:
Ręczne wprowadzanie Debiana wydaje się bardziej pouczające:
źródło
-
. Mówiąc o tym, dlaczego „przed jakąkolwiek nazwą użytkownika”?I disagree, however, with the general point that, "before any username" can be rephrased as "before the username, if any." Perhaps Mr. Plotnik meant that the man page* should have rephrased the text using his suggestion, but the two phrases are not equivalent (as I explained at the beginning of this post).
Oznacza to, że Mark Plotnick wie, jaksu
działa, ale „przed każdą nazwą użytkownika”! = „Przed nazwą użytkownika, jeśli istnieje”. Do takiego wniosku doszła, tak jak ja to widzę.nie ma różnicy, to jest jak bieganie;
tylko stenografia ...
źródło
-
,-l
,--login
. Moje pytanie dotyczy tego, dlaczego nie zaleca się używania-
, w przeciwieństwie do opcji „-l, and
--login”.su
w ogóle nie używać , pisząc skrypt?