4Aug

Apa Perbedaan Antara Sudo dan Su di Linux?

Jika Anda pengguna Linux, Anda mungkin pernah melihat referensi untuk kedua sudo dan su. Artikel di sini tentang How-To Geek dan di tempat lain menginstruksikan pengguna Ubuntu untuk menggunakan pengguna distribusi sudo dan Linux lainnya untuk menggunakan su, tapi apa bedanya?

Sudo dan su adalah dua cara berbeda untuk mendapatkan hak istimewa root. Setiap fungsi dengan cara yang berbeda, dan distribusi Linux yang berbeda menggunakan konfigurasi yang berbeda secara default.

Pengguna Root

Baik su dan sudo digunakan untuk menjalankan perintah dengan izin root. Pengguna root pada dasarnya setara dengan pengguna administrator pada Windows - pengguna root memiliki izin maksimum dan dapat melakukan apapun terhadap 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.

Su vs. Sudo

Perintah su beralih ke pengguna super - atau pengguna root - saat Anda menjalankannya tanpa opsi tambahan. Anda harus memasukkan kata sandi akun root. Ini tidak semua perintah su tidak, meskipun - Anda dapat menggunakannya untuk beralih ke akun pengguna manapun. Jika Anda menjalankan perintah su bob , Anda akan diminta untuk memasukkan kata sandi Bob dan shell akan beralih ke akun pengguna Bob.

Setelah selesai menjalankan perintah di shell root, Anda harus mengetik keluar dari untuk meninggalkan shell root dan kembali ke mode privilege terbatas.

Sudo menjalankan satu perintah dengan hak akses root. Saat Anda menjalankan perintah sudo , sistem akan meminta Anda untuk memasukkan kata sandi akun pengguna Anda saat menjalankan perintah sebagai pengguna root. Secara default, Ubuntu mengingat kata sandinya selama lima belas menit dan tidak akan meminta kata sandi lagi sampai lima belas menit lagi.

Ini adalah perbedaan utama antara su dan sudo. Su mengalihkan Anda ke akun pengguna root dan memerlukan kata sandi akun root. Sudo menjalankan satu perintah dengan hak istimewa root - ia tidak beralih ke pengguna root atau memerlukan kata sandi pengguna root yang terpisah.

Ubuntu vs Distribusi Linux Lainnya

Perintah su adalah cara tradisional untuk memperoleh hak akses root di Linux. Perintah sudo telah ada sejak lama, namun Ubuntu adalah distribusi Linux yang pertama yang populer untuk hanya digunakan sudo-only. Saat Anda menginstal Ubuntu, akun root standar dibuat, namun tidak ada kata kunci yang ditugaskan padanya. Anda tidak bisa masuk sebagai root sampai Anda menetapkan kata sandi ke akun root.

Ada beberapa keuntungan menggunakan sudo bukan su secara default. Pengguna Ubuntu hanya harus menyediakan dan mengingat satu kata kunci, sedangkan Fedora dan distro lainnya mengharuskan Anda membuat kata kunci akun root dan user yang terpisah saat pemasangan.

Keuntungan lainnya adalah hal itu membuat pengguna enggan masuk sebagai pengguna root - atau menggunakan su untuk mendapatkan shell root - dan menjaga agar shell root tetap terbuka untuk melakukan pekerjaan normal mereka. Menjalankan perintah yang lebih sedikit karena root meningkatkan keamanan dan mencegah perubahan sistem secara tidak disengaja. Distribusi

berbasis Ubuntu, termasuk Linux Mint, juga menggunakan sudo bukan su secara default.

Beberapa Trik

Linux fleksibel, jadi tidak perlu banyak kerja keras untuk melakukan pekerjaan serupa dengan sudo - atau sebaliknya.

Untuk menjalankan perintah tunggal sebagai root user dengan su, jalankan perintah berikut:

su -c 'command'

Ini mirip dengan menjalankan perintah dengan sudo, namun Anda memerlukan kata sandi akun root dan bukan pengguna Anda saat ini.kata sandi akun

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 kunci akun root.

Mengaktifkan Pengguna Root di Ubuntu

Untuk mengaktifkan akun pengguna root di Ubuntu, gunakan perintah berikut untuk menyetel kata sandi untuknya. Ingatlah bahwa Ubuntu merekomendasikan hal ini.

sudo passwd root

Sudo akan meminta Anda untuk kata sandi akun pengguna Anda saat ini sebelum Anda dapat mengatur kata sandi baru. Gunakan kata sandi baru Anda untuk login 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.

Menambahkan Pengguna ke File Sudoers

Hanya akun tipe administrator di Ubuntu yang bisa menjalankan perintah dengan sudo. Anda dapat mengubah jenis akun pengguna dari jendela konfigurasi Akun Pengguna.

Ubuntu secara otomatis menunjuk akun pengguna yang dibuat saat instalasi sebagai akun administrator.

Jika Anda menggunakan distribusi Linux lain, Anda dapat memberi izin kepada pengguna untuk menggunakan sudo dengan menjalankan perintah dengan hak akses root( jadi jalankan su terlebih dahulu atau gunakan su -c ).

Tambahkan baris berikut ke file, ganti pengguna dengan nama akun pengguna:

pengguna SEMUA =( SEMUA: SEMUA) SEMUA

Tekan Ctrl-X dan kemudian Y untuk menyimpan file. Anda mungkin juga dapat menambahkan pengguna ke grup yang ditentukan dalam file. Pengguna dalam kelompok yang ditentukan dalam file secara otomatis akan memiliki hak istimewa sudo.

Versi Grafis Su

Linux juga mendukung versi grafis su, yang meminta kata sandi Anda di lingkungan grafis. Misalnya, Anda dapat menjalankan perintah berikut untuk mendapatkan prompt kata kunci grafis dan menjalankan browser file Nautilus dengan izin root. Tekan Alt-F2 untuk menjalankan perintah dari dialog grafis tanpa meluncurkan terminal.

gksu nautilus

Perintah gksu juga memiliki beberapa trik lain pada lengan bajunya - ini menjaga pengaturan desktop Anda saat ini, jadi program grafis tidak akan terlihat tidak pada tempatnya saat Anda meluncurkannya sebagai pengguna yang berbeda. Program seperti gksu adalah cara yang lebih disukai untuk meluncurkan aplikasi grafis dengan hak akses root.

Gksu menggunakan su atau sudo berbasis backend, tergantung pada distribusi Linux yang Anda gunakan.

Anda sekarang harus siap menghadapi su dan sudo! Anda akan menemukan keduanya jika Anda menggunakan distro Linux yang berbeda.