Dari su
halaman manual:
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
Sulit untuk mengetahui apakah ada perbedaan antara -
dan --login
(atau seharusnya adil -l
). Yaitu, halaman manual mengatakan "bukan pintasannya -", tetapi semua opsi ini dikelompokkan bersama, dan saya tidak melihat penjelasan perbedaannya, jika ada.
UPD Saya memeriksa pertanyaan, yang seharusnya bisa menyelesaikan masalah saya . Pertanyaannya pada dasarnya adalah tentang perbedaan antara su
dan su -
. Dan saya bertanya tentang perbedaan antara su -
dan su --login
. Jadi tidak, itu tidak menyelesaikannya sama sekali.
Saya tidak tahu definisi Anda tentang duplikat, tetapi saya tidak menganggap pertanyaan saya seperti itu. Pertanyaan yang Anda sarankan pada dasarnya adalah tentang perbedaan antara
—
x-yuri
su
dan su -
. Dan saya bertanya tentang perbedaan antara su -
dan su --login
. Apa yang kulewatkan di sini?
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.