Perintah su (kependekan dari substitute atau switch user) adalah perintah yang memungkinkan Anda untuk menjalankan perintah dengan hak istimewa pengguna lain, secara default sebagai root.

Menggunakan su adalah cara paling sederhana untuk beralih ke akun administratif dalam sesi login saat ini. Ini sangat berguna ketika user root tidak diizinkan login ke sistem melalui ssh atau menggunakan GUI display manager.

Dalam tutorial ini, kita akan membahas cara menggunakan perintah su.

Cara Menggunakan Perintah su

Sintaks umum untuk perintah su adalah sebagai berikut:

su [OPTIONS] [USER [ARGUMENT...]]

Ketika dipanggil tanpa opsi apa pun, perilaku default su adalah menjalankan shell interaktif sebagai root:

su

Anda akan diminta memasukkan kata sandi root, dan jika diotentikasi, pengguna yang menjalankan perintah untuk sementara akan beralih menjadi user root.

Session shell (SHELL) dan environment variables (HOME) diatur dari entri pengguna /etc/passwd, dan direktori kerja saat ini tidak berubah.

Untuk mengonfirmasi bahwa user telah berubah, gunakan perintah whoami :

whoami

Perintah akan mencetak nama pengguna yang menjalankan sesi shell saat ini:

root

Opsi yang paling umum digunakan ketika memanggil su adalah -, -l, --login. Ini menjadikan shell sebagai shell login dengan lingkungan yang sangat mirip dengan login asli dan mengubah direktori kerja saat ini:

su -

Jika Anda ingin menjalankan shell lain daripada yang ditentukan dalam file passwd, gunakan opsi -s, --shell. Misalnya, untuk beralih ke root dan menjalankan shell zsh Anda akan mengetik:

su -s /usr/bin/zsh

Untuk menyiapkan seluruh environment (HOME, SHELL, USER, dan LOGNAME) dari pengguna yang akan di panggil, gunakan opsi -p, --preserve-environment.

su -p

Ketika opsi - digunakan, maka flag -p akan diabaikan.

Jika Anda ingin menjalankan perintah sebagai user pengganti tanpa memulai shell interaktif, gunakan opsi -c, --command. Misalnya, untuk menjalankan perintah ps sebagai root, Anda harus mengetik:

su -c ps

Untuk beralih ke akun user lain, berikan nama user sebagai argumen ke perintah su. Misalnya, untuk beralih ke user bernama adhit, maka Anda harus mengetik:

su adhit

Perbandingan antara Sudo vs Su

Pada beberapa distribusi Linux seperti Ubuntu, akun user root dinonaktifkan secara default untuk alasan keamanan. Dengan ini berarti bahwa tidak ada kata sandi yang diatur untuk root dan Anda tidak dapat menggunakan su untuk beralih ke root.

Satu opsi untuk berubah menjadi root adalah dengan menambahkan perintah su dengan sudo dan memasukkan kata sandi user yang saat ini login:

sudo su -

Perintah sudo memungkinkan Anda untuk menjalankan program sebagai pengguna lain, secara default adalah root.

Jika pengguna diberikan dengan hak akses sudo, maka perintah su akan dipanggil sebagai root. Menjalankan sudo su - dan menggunakan kata sandi user sama dengan menjalankan su - dengan kata sandi user root.

Saat digunakan dengan opsi -i, sudo menjalankan shell login interaktif dengan user environment root:

sudo -i

Menggunakan perintah sudo -i pada dasarnya sama dengan menjalankan su -.

Keuntungan menggunakan sudo daripada perintah su adalah bahwa kata sandi root tidak perlu dibagi di antara beberapa akun pengguna administratif.

Dan juga, dengan sudo Anda dapat mengizinkan pengguna untuk menjalankan hanya program tertentu dengan hak akses root.

Kesimpulan

su adalah utilitas baris perintah yang memungkinkan Anda untuk sementara menjadi pengguna lain dan menjalankan perintah sebagai user lain, yang dalam hal ini adalah root.