Perintah sudo memungkinkan Anda untuk menjalankan program sebagai pengguna lain, secara default pengguna root. Jika Anda menghabiskan banyak waktu di baris perintah, sudo adalah salah satu perintah yang cukup sering Anda gunakan.
Menggunakan sudo daripada login sebagai root lebih aman karena Anda dapat memberikan hak administratif terbatas kepada pengguna individu tanpa mereka mengetahui kata sandi root.
Dalam tutorial ini, kami akan menjelaskan cara menggunakan sudo
perintah.
Menginstal Sudo (perintah sudo tidak ditemukan) #
Paket sudo sudah diinstal sebelumnya di sebagian besar distribusi Linux.
Untuk memeriksa apakah paket sudo diinstal pada sistem Anda, buka konsol Anda, ketik sudo
, dan tekan Enter
. Jika Anda telah menginstal sistem sudo, akan menampilkan pesan bantuan singkat. Jika tidak, Anda akan melihat sesuatu seperti sudo command not found
.
Jika sudo tidak diinstal, Anda dapat menginstalnya dengan mudah menggunakan manajer paket distro Anda.
Instal Sudo di Ubuntu dan Debian #
apt install sudo
Instal Sudo di CentOS dan Fedora #
yum install sudo
Menambahkan Pengguna ke Sudoers #
Secara default, pada sebagian besar distribusi Linux yang memberikan akses sudo semudah menambahkan pengguna ke grup sudo yang ditentukan dalam sudoers
mengajukan. Anggota grup ini akan dapat menjalankan perintah apa pun sebagai root. Nama grup mungkin berbeda dari distribusi ke distribusi.
Pada distribusi berbasis RedHat seperti CentOS dan Fedora, nama grup sudo adalah wheel
. Untuk menambahkan pengguna ke grup, jalankan:
usermod -aG wheel username
Di Debian, Ubuntu, dan turunannya, anggota grup sudo
diberikan akses sudo:
usermod -aG sudo username
Akun pengguna root di Ubuntu dinonaktifkan secara default karena alasan keamanan, dan pengguna didorong untuk melakukan tugas administratif sistem menggunakan sudo. Pengguna awal yang dibuat oleh penginstal Ubuntu sudah menjadi anggota grup sudo, jadi jika Anda menjalankan Ubuntu, kemungkinan besar pengguna yang Anda masuki sudah diberikan hak istimewa sudo.
Untuk mengizinkan pengguna tertentu menjalankan hanya program tertentu sebagai sudo, alih-alih menambahkan pengguna ke grup sudo, tambahkan pengguna ke sudoers
berkas.
Misalnya, untuk mengizinkan pengguna linuxize
untuk menjalankan hanya mkdir
perintah sebagai sudo, ketik:
sudo visudo
dan tambahkan baris berikut:
linuxize ALL=/bin/mkdir
Pada kebanyakan sistem, visudo
perintah membuka /etc/sudoers
file dengan editor teks vim. Jika Anda tidak memiliki pengalaman dengan vim, lihat artikel kami tentang cara menyimpan file dan keluar dari editor vim.
Anda juga dapat mengizinkan pengguna menjalankan perintah sudo tanpa memasukkan kata sandi:
linuxize ALL=(ALL) NOPASSWD: ALL
Cara Menggunakan Sudo #
Sintaks untuk sudo
perintahnya adalah sebagai berikut:
sudo OPTION.. COMMAND
sudo
perintah memiliki banyak opsi yang mengontrol perilakunya, tetapi biasanya, perintah ini digunakan dalam bentuk paling dasar, tanpa opsi apa pun.
Untuk menggunakan sudo, cukup awali perintah dengan sudo
:
sudo command
Dimana command
adalah perintah yang ingin Anda gunakan sudo.
Sudo akan membaca /etc/sudoers
file dan periksa apakah pengguna yang meminta diberikan dengan Sudo menilai. Pertama kali Anda menggunakan sudo dalam suatu sesi, Anda akan diminta untuk memasukkan kata sandi pengguna, dan perintah tersebut akan dijalankan sebagai root.
Misalnya, untuk membuat daftar semua file di /root
direktori yang akan Anda gunakan:
sudo ls /root
[sudo] password for linuxize:
. .. .bashrc .cache .config .local .profile
Waktu Habis Sandi #
Secara default, sudo akan meminta Anda memasukkan kata sandi lagi setelah lima menit sudo tidak aktif. Anda dapat mengubah batas waktu default dengan mengedit sudoers
mengajukan. Buka file dengan visudo
:
sudo visudo
Atur batas waktu default dengan menambahkan baris di bawah ini, di mana 10
adalah batas waktu yang ditentukan dalam menit:
Defaults timestamp_timeout=10
Jika Anda ingin mengubah stempel waktu hanya untuk pengguna tertentu, tambahkan baris berikut, di mana nama_pengguna adalah pengguna yang dimaksud.
Defaults:user_name timestamp_timeout=10
Jalankan Perintah sebagai Pengguna Selain Root #
Ada persepsi yang salah bahwa sudo
hanya digunakan untuk memberikan izin root kepada pengguna biasa. Sebenarnya, Anda dapat menggunakan sudo
untuk menjalankan perintah sebagai pengguna mana pun.
-u
opsi memungkinkan Anda menjalankan perintah sebagai pengguna tertentu.
Dalam contoh berikut, kami menggunakan sudo
untuk menjalankan whoami
perintah sebagai pengguna "richard":
sudo -u richard whoami
whoami
perintah akan mencetak nama pengguna yang menjalankan perintah:
richard
Cara Mengarahkan Ulang dengan Sudo #
Jika Anda mencoba untuk mengarahkan output dari perintah ke file yang pengguna Anda tidak memiliki izin menulis, Anda akan mendapatkan kesalahan "Izin ditolak".
sudo echo "test" > /root/file.txt
bash: /root/file.txt: Permission denied
Ini terjadi karena pengalihan “>
” dari output dilakukan di bawah pengguna yang Anda masuki, bukan pengguna yang ditentukan dengan Sudo. Pengalihan terjadi sebelum sudo
perintah dipanggil.
Salah satu solusinya adalah memanggil shell baru sebagai root dengan menggunakan sudo sh -c
:
sudo sh -c 'echo "test" > /root/file.txt'
Opsi lainnya adalah menyalurkan output sebagai pengguna biasa ke tee
perintah, seperti yang ditunjukkan di bawah ini:
echo "test" | sudo tee /root/file.txt
Kesimpulan #
Anda telah mempelajari cara menggunakan sudo
perintah dan cara membuat pengguna baru dengan hak istimewa sudo.
Jika Anda memiliki pertanyaan, silakan tinggalkan komentar.