Saya memiliki keraguan berikut. Dalam tutorial yang terkait dengan instalasi perangkat lunak yang saya ikuti katakan bahwa saya harus menjalankan perintah berikut (saya melakukannya di shell ssh , jadi daftar langkah ini diakhiri dengan exit
perintah):
sudo -s
apt-get update
apt-get install -y build-essential libtool libcurl4-openssl-dev libncurses5-dev libudev-dev autoconf automake screen
exit
Keraguan saya adalah:
Apa sebenarnya yang dilakukan -s
parameter setelah sudo
perintah?
Mencari di web saya menemukan bahwa:
‑S [command] Opsi shells (shell) menjalankan shell yang ditentukan oleh variabel lingkungan SHELL jika diatur atau shell seperti yang ditentukan dalam basis data kata sandi. Jika suatu perintah ditentukan, itu diteruskan ke shell untuk dieksekusi melalui opsi c shell. Jika tidak ada perintah yang ditentukan, shell interaktif dijalankan
Sepertinya saya yang sudo -s
menjalankan perintah menggunakan variabel lingkungan shell.
Tetapi ini tidak jelas bagi saya: dalam hal ini apa perintah yang dijalankan dengan variabel lingkungan? (hanya dijalankan sudo -s
dan tidak sudo -s [command]
).
sumber
sudo
umumnya; menjalankan perintah sebagai root tanpa harus login secara manual sebagai root.sudo -s
berbeda secara drastis karena pengetahuan saya yang terbatas dan terjadi secara kebetulan di seluruh situasi. Masih Anda mungkin ingin membaca jawaban "rendah hati" saya dan mungkin menyegarkan kembali jawaban Anda yang sudah berumur 1/2 dekade.sudo -s
akan menjalankan perintah di direktori saat ini seperti yang dilakukan pengguna biasa. Sebagai contoh:Tentu saja menggunakan
-s
alih-alih awalan perintah dengan./
mungkin tidak terlalu menghemat waktu.sumber