Jika Anda pengguna Linux, Anda mungkin pernah melihat referensi ke sudo dan su. Artikel di sini di How-To Geek dan di tempat lain memerintahkan pengguna Ubuntu untuk menggunakan sudo dan pengguna distribusi Linux lain untuk menggunakan su, tapi apa bedanya?
Sudo dan su adalah dua cara berbeda untuk mendapatkan hak akses root. Setiap fungsi dalam cara yang berbeda, dan distribusi Linux yang berbeda menggunakan konfigurasi yang berbeda secara default.
Baik su dan sudo digunakan untuk menjalankan perintah dengan izin root. Pengguna root pada dasarnya setara dengan pengguna administrator di Windows - pengguna root memiliki izin maksimum dan dapat melakukan apa pun ke sistem. Pengguna normal di Linux berjalan dengan izin yang dikurangi - misalnya, mereka tidak dapat menginstal perangkat lunak atau menulis ke direktori sistem.
Untuk melakukan sesuatu yang memerlukan izin ini, Anda harus mendapatkannya dengan su atau sudo.
Perintah su beralih ke pengguna super - atau pengguna root - ketika Anda menjalankannya tanpa opsi tambahan. Anda harus memasukkan kata sandi akun root. Ini tidak semua perintah su, meskipun - Anda dapat menggunakannya untuk beralih ke akun pengguna. Jika Anda menjalankan su bob perintah, Anda akan diminta untuk memasukkan kata sandi Bob dan shell akan beralih ke akun pengguna Bob.
Setelah Anda selesai menjalankan perintah di shell root, Anda harus mengetik keluar untuk meninggalkan shell root dan kembali ke mode privileges terbatas.
Sudo menjalankan satu perintah dengan hak akses root. Ketika Anda mengeksekusi perintah sudo, sistem meminta Anda untuk memasukkan kata sandi akun pengguna Anda saat ini sebelum berjalan perintah sebagai pengguna root. Secara default, Ubuntu mengingat kata sandi selama lima belas menit dan tidak akan meminta kata sandi lagi sampai lima belas menit berlalu.
Ini adalah perbedaan utama antara su dan sudo. Su mengalihkan Anda ke akun pengguna root dan membutuhkan kata sandi akun root. Sudo menjalankan satu perintah dengan hak akses root - itu tidak beralih ke pengguna root atau memerlukan kata sandi pengguna root terpisah.
Perintah su adalah cara tradisional untuk mendapatkan izin root di Linux. Perintah sudo sudah ada sejak lama, tetapi Ubuntu adalah distribusi Linux populer pertama yang hanya menggunakan sudo-saja. Ketika Anda menginstal Ubuntu, akun root standar dibuat, tetapi tidak ada kata sandi yang ditugaskan untuk itu. Anda tidak dapat masuk sebagai root sampai Anda menetapkan kata sandi ke akun root.
Ada beberapa keuntungan menggunakan sudo daripada su secara default. Pengguna Ubuntu hanya perlu menyediakan dan mengingat satu kata sandi, sedangkan Fedora dan distribusi lainnya mengharuskan Anda membuat kata sandi akun pengguna dan root terpisah selama instalasi.
Keuntungan lain adalah bahwa ia melarang pengguna masuk sebagai pengguna root - atau menggunakan su untuk mendapatkan shell root - dan menjaga shell root tetap terbuka untuk melakukan pekerjaan normal mereka. Menjalankan lebih sedikit perintah saat root meningkatkan keamanan dan mencegah perubahan sistem yang tidak disengaja.
Distribusi berdasarkan Ubuntu, termasuk Linux Mint, juga menggunakan sudo, bukan su secara default.
Linux itu fleksibel, jadi tidak perlu banyak kerja untuk membuat kerja sama dengan sudo - atau sebaliknya.
Untuk menjalankan satu perintah sebagai pengguna root dengan su, jalankan perintah berikut:
su -c 'perintah'
Ini mirip dengan menjalankan perintah dengan sudo, tetapi Anda memerlukan kata sandi akun root, bukan kata sandi akun pengguna Anda saat ini.
Untuk mendapatkan shell root yang lengkap dan interaktif dengan sudo, jalankan sudo -i.
Anda harus memberikan kata sandi akun pengguna Anda saat ini bukan kata sandi akun root.
Untuk mengaktifkan akun pengguna root di Ubuntu, gunakan perintah berikut untuk mengatur kata sandi untuknya. Ingatlah bahwa Ubuntu merekomendasikan hal ini.
sudo passwd root
Sudo akan meminta Anda untuk memasukkan kata sandi akun pengguna saat ini sebelum Anda dapat menetapkan kata sandi baru. Gunakan kata sandi baru Anda untuk masuk sebagai root dari prompt login terminal atau dengan perintah su. Anda tidak boleh menjalankan lingkungan grafis penuh sebagai pengguna root - ini adalah praktik keamanan yang sangat buruk, dan banyak program akan menolak untuk bekerja.
Hanya akun tipe-administrator di Ubuntu yang dapat menjalankan perintah dengan sudo. Anda dapat mengubah jenis akun pengguna dari jendela konfigurasi Akun Pengguna.
Ubuntu secara otomatis menunjuk akun pengguna yang dibuat selama instalasi sebagai akun administrator.
Jika Anda menggunakan distribusi Linux lain, Anda dapat memberikan izin pengguna untuk menggunakan sudo dengan menjalankan visudo perintah dengan hak akses root (jadi jalankan su pertama atau gunakan su -c).
Tambahkan baris berikut ke file, ganti pengguna dengan nama akun pengguna:
pengguna ALL = (ALL: ALL) ALL
tekan Ctrl-X lalu Y untuk menyimpan file. Anda mungkin juga dapat menambahkan pengguna ke grup yang ditentukan dalam file. Pengguna dalam grup yang ditentukan dalam file akan secara otomatis memiliki hak sudo.
Linux juga mendukung versi grafis dari su, yang meminta kata sandi Anda dalam lingkungan grafis. Misalnya, Anda dapat menjalankan perintah berikut untuk mendapatkan prompt kata sandi grafis dan menjalankan peramban berkas Nautilus dengan izin root. tekan Alt-F2 untuk menjalankan perintah dari dialog menjalankan grafis tanpa meluncurkan terminal.
gksu nautilus
Perintah gksu juga memiliki beberapa trik lain - mempertahankan pengaturan desktop Anda saat ini, sehingga program grafis tidak akan terlihat tidak pada tempatnya ketika Anda meluncurkannya sebagai pengguna yang berbeda. Program seperti gksu adalah cara yang disukai untuk meluncurkan aplikasi grafis dengan hak akses root.
Gksu menggunakan backend berbasis su atau sudo, tergantung pada distribusi Linux yang Anda gunakan.
Anda sekarang harus siap untuk menghadapi su dan sudo! Anda akan menemukan keduanya jika Anda menggunakan distribusi Linux yang berbeda.