Apakah ada cara di mana saya dapat membuat sudo
perintah memberi saya izin untuk jangka waktu yang lebih lama dari waktu default?
Bisa jadi susah karena harus tetap memasukkan sudo
kata sandi, ketika membutuhkan instalasi banyak paket, jadi alangkah baiknya jika ada perintah atau konfigurasi yang dapat dilakukan untuk memengaruhi masa penggunaannya.
command-line
permissions
sudo
password
TellMeWhy
sumber
sumber
su
lagi? Pernah?sudo -i
dan Anda memiliki shell root, siap untuk siapa saja untuk membantu shoothing diri di kaki selama sebanyak waktu seperti ...su
membutuhkan root untuk memiliki kata sandi. Secara default, pengguna root Ubuntu tidak memiliki kata sandi. Karena itu, Anda tidak dapatsu
melakukan root.su
berfungsi sebagaimana dimaksud di sini. Coba dengan pengguna yang memiliki kata sandi.sudo su
bekerja dengan baik, meskipun sedikit berulang.Jawaban:
Perilaku
sudo
dikonfigurasi dalam/etc/sudoers
file. Adatimestamp_timeout
opsi yang bertanggung jawab untuk menyusun ulang kata sandi pengguna setelah jangka waktu tertentu.Dari man sudoers
Untuk mengubah pengaturan itu lakukan hal berikut:
sudo visudo
.visudo
digunakan khusus untuk mengedit/etc/sudoers
file dan secara default menggunakannano
editor teks.Temukan garis yang dimulai dengan
Defaults
. Tambahkan baris berikutdi mana x adalah jumlah menit yang Anda inginkan di antara reprompts
Simpan file dengan Ctrl+O
sumber
Dari
man sudoers
:Seperti yang Anda lihat, batas waktu default
sudo
adalah 15 menit. Anda dapat mengubah nilai ini di/etc/sudoers
.Anda tidak langsung mengedit
/etc/sudoers
, melainkan gunakanvisudo
untuk melakukannya.Dari
man visudo
:Jadi, ketikkan
sudo visudo
terminal, yang akan membuka/etc/sudoers
file dalamnano
teks-editor.Cari baris ini:
Dan tambahkan di mana X adalah waktu yang ingin Anda atur dalam menit.
timestamp_timeout=X
Jadi sebagai contoh:
Jika Anda menentukan 0, Anda akan selalu ditanya kata sandi. Jika Anda menentukan nilai negatif, batas waktu tidak akan pernah berakhir.
Setelah selesai, simpan dan keluar.
Lihat RootSudoTimeout
sumber
Coba ini .
Jalankan perintah berikut di Terminal:
Gulir ke bawah ke garis yang terlihat seperti ini:
Ubah ke misalnya:
Ubah 30 ke waktu, dalam hitungan menit, yang Anda ingin menunggu sebelum waktu habis. Anda juga dapat mengubahnya menjadi 0 jika Anda menginginkan kata sandi setiap kali Anda menjalankan sudo, atau -1 jika Anda tidak pernah menginginkan kata sandi. Tekan Ctrl+ Xuntuk menyelesaikan pengeditan, Y untuk menyimpan perubahan, dan Enter untuk keluar.
Berikut adalah sumbernya: http://lifehacker.com/make-sudo-sessions-last-longer-in-linux-1221545774
sumber
Anda dapat mengedit
/etc/sudoers
file (dengansudo visudo
: hati-hati) dan tambahkan baris sepertidi mana
myname
id pengguna Anda. Nilai batas waktu dalam hitungan menit. Anda dapat menggunakan nilai -1 untuk tidak pernah kedaluwarsa, lalu ketiksudo -k
untuk mematikan autentikasi, sehingga Anda perlu kata sandi lagi.Atau Anda dapat menambahkan entri untuk mengatakan perintah tertentu tidak memerlukan kata sandi sama sekali.
sumber
sudo -k
secara manual membatalkan otentikasi yang di-cache.Saya tidak percaya bahwa perintah yang paling sederhana:
tidak disebutkan di sini. Switch "-s" memberi Anda konsol dengan izin root, yang bertahan sampai Anda keluar. Tidak perlu kabur dengan pengaturan default.
sumber
sudo
: setiap perintah dicatat (sehingga Anda dapat melihat apa yang Anda lakukan) Anda kehilangan logging itu ketika Anda membuka shell root.Semua jawaban lain sejauh ini tampaknya berpusat pada perubahan batas waktu default untuk berapa lama sebelum Anda harus mengetik kata sandi lagi
sudo
. Namun, jika Anda hanya ingin dapat menjalankan perintah sebagai root tanpa menambahkan setiap perintah dengansudo
, Anda bisa mendapatkan shell root dengan:atau
atau
Sementara semua ini hanya memulai proses tunggal sebagai root, proses tunggal yang dimaksud kebetulan adalah sebuah shell yang akan memungkinkan Anda untuk memulai sebanyak mungkin proses lain yang Anda inginkan sebagai root tanpa perlu mengetik
sudo
atau kata sandi. :)Tentu saja, dengan kekuatan besar datang tanggung jawab besar, jangan lakukan hal-hal bodoh, dll.
sumber
Setelah melihat satu terlalu banyak pertanyaan dari pengguna yang memodifikasi file konfigurasi dan bingung tentang mengapa perubahan mereka ditimpa setelah peningkatan paket, saya akan perhatikan bahwa jika Anda ingin memodifikasi
timestamp_timeout
, lebih baik melakukannya dengan membuat file/etc/sudoers.d
daripada memodifikasi/etc/sudoers
secara langsung.Jadi, Anda harus melakukannya
(nama file bisa apa saja yang Anda inginkan asalkan tidak mengandung titik (
.
) atau diakhiri dengan tilde (~
)). Alih-alih membuka/etc/sudoers
di editor pilihan Anda, itu akan terbuka/etc/sudoers.d/timeout
, biasanya sebagai file kosong karena tidak ada. Letakkandi dalamnya, dan simpan seperti biasa. Kemudian jika versi baru
/etc/sudoers
keluar, Anda tidak harus memilih antara menginstal versi yang lebih baru atau menyimpan perubahan - Anda akan memiliki keduanya secara otomatis.sumber
Jika Anda mencari solusi yang tidak mengubah file konfigurasi , misalnya ketika Anda ingin token bertahan lebih lama untuk sesi tertentu, atau itu berlaku hanya setelah tindakan eksplisit, Anda dapat mencoba hal berikut:
Pada dasarnya kode sebelumnya menyegarkan token sudo setiap 4 menit , melalui proses yang diluncurkan di latar belakang.
Memang, menurut
sudo
manual: "batas waktu prompt kata sandi default untuk kebijakan keamanan sudoers adalah 5 menit ." Jadi tergantung pada kebijakan khusus sistem, Anda mungkin men-tweak jumlah waktu loop melewati tidur antara dua siklus.sumber