su
bukan pengguna itu program untuk menjalankan perintah/program selanjutnya di bawah identitas alternatif pengguna lain daripada yang menjalankan perintah. Ini sangat mirip dengan sudo
dalam hal itu.
Kecuali jika pengguna lain ditentukan, kedua perintah akan secara default menjalankan perintah dengan identitas alternatif dari root
pengguna, superuser/administrator.
Perbedaan utama antara su
dan sudo
apakah itu:
su
mengharuskan Anda mengetahui kata sandi pengguna alternatif itu, di manasudo
akan menanyakan kata sandi pengguna yang menjalankansudo
perintah dan memerlukan pengaturan sehingga pengguna diizinkan untuk menjalankan perintah/program yang diminta.
(Kapan root
menjalankan su
atau sudo
tidak diperlukan kata sandi.)
Seperti skrip init lainnya, /etc/rc.local
skrip dijalankan oleh root
pengguna dan Anda tidak perlu menambahkan su
atau sudo
ke perintah/program yang perlu dijalankan sebagai root.
Anda mungkin masih perlu menggunakan su
atau sudo
dalam skrip init Anda jika perintah tersebut perlu dijalankan bukan sebagai root
tetapi pengguna/akun-layanan lain...
su -
oracle
/do/something/as/oracle/user
Ya, semua skrip dan program langsung dipanggil oleh root.
/etc/rc.local
file dipanggil langsung oleh proses init.