Dalam konfigurasi tipikal, perintahnya tidak relevan. Anda harus memasukkan kata sandi saat pertama kali menggunakan sudo, dan Anda tidak memerlukan kata sandi di shell khusus itu selama 15 menit berikutnya.
Dari perspektif komputer, tidak ada yang namanya "perintah yang membutuhkan sudo". Setiap pengguna dapat mencoba menjalankan perintah apa pun. Hasilnya mungkin tidak lain adalah pesan kesalahan seperti "Izin ditolak" atau "Tidak ada file atau direktori", tetapi selalu memungkinkan untuk menjalankan perintah.
Misalnya, jika Anda menjalankan dupada pohon direktori yang memiliki konten yang Anda tidak memiliki izin untuk mengakses, Anda akan mendapatkan kesalahan izin. Itu artinya "izin ditolak". Jika Anda menjalankan sudo du, sudo dijalankan dusebagai root, jadi Anda tidak mendapatkan kesalahan izin (itulah tujuan akun root: root¹ selalu memiliki izin). Ketika Anda menjalankan sudo du, dujalankan sebagai root, dan sudotidak terlibat sama sekali setelah dudimulai. Apakah du menemukan kesalahan izin sama sekali tidak relevan dengan cara kerja sudo.
Ada perintah yang perlu sudo untuk melakukan sesuatu yang bermanfaat . Kegunaan adalah konsep manusia. Anda perlu menggunakan sudo (atau beberapa metode lain untuk menjalankan perintah sebagai root) jika perintah itu melakukan sesuatu yang berguna ketika dijalankan sebagai root tetapi tidak ketika dijalankan di bawah akun Anda.
Apakah sudo meminta kata sandi Anda tergantung pada dua hal.
- Berdasarkan konfigurasi, sudo memutuskan apakah Anda perlu disahkan. Secara default, sudo memerlukan kata sandi. Ini dapat dimatikan dalam beberapa cara, termasuk mengatur
authenticateopsi ke false dan memiliki aturan yang berlaku dengan NOPASSWDtag.
- Jika sudo memerlukan kata sandi Anda, mungkin konten untuk menggunakan nilai yang di-cache. Tidak apa-apa karena alasan sudo memerlukan kata sandi Anda bukan untuk mengotentikasi siapa yang memanggilnya (sudo tahu apa yang pengguna panggil), tetapi untuk mengonfirmasi bahwa itu masih Anda atas perintah dan bukan seseorang yang mengambil kendali atas keyboard Anda. Secara default, sudo mau percaya bahwa Anda masih mematuhi perintah jika Anda memasukkan kata sandi kurang dari 15 menit yang lalu (ini dapat diubah dengan
timeoutopsi). Anda harus memasukkan kata sandi di terminal yang sama (sehingga jika Anda tetap masuk di satu terminal kemudian meninggalkan terminal itu tanpa pengawasan dan kemudian menggunakan terminal lain, seseorang dapat 'tty_tickets
¹ hampir, tapi itu di luar cakupan utas ini.