Apakah ini sama dengan @bclermont answer (--Ya --force-yes)?
jjxtra
175
Masalah dengan:
apt-get --yes install $something
adalah bahwa ia akan meminta konfirmasi manual jika kunci publik pemilik tanda tangan paket tidak dalam keyring, atau kondisi lainnya. untuk memastikan itu tidak meminta konfirmasi lakukan saja ini:
apt-get --yes --force-yes install $something
Jika Anda ingin memiliki pengaturan ini permanen, buat file di /etc/apt/apt.conf.d/, seperti /etc/apt/apt.apt.conf.d/90forceyes dengan konten berikut:
+1 untuk variasi. Semua -ysemakin membosankan. (Plus itu jawaban yang lebih lengkap.)
Dennis Williamson
1
Akankah ini bekerja ketika dikatakan "Untuk melanjutkan mengetikkan frasa 'Ya, lakukan seperti yang saya katakan!'" Juga? Jika tidak, apa masalahnya? Saya menemukan ini ketika mencoba untuk mengganti sysvinit dengan systemd di gambar debian saya yang di-chroot.
Lennart Rolland
13
Harap jangan pernah menggunakan --force-yes: seperti yang dibalas oleh utas terkait inidebian-devel , --force-yesmungkin membuat sistem tidak dapat digunakan. (Saya tidak downvoting karena jawabannya sebenarnya mengatasi masalah seperti yang dinyatakan oleh OP, tapi saya tetap akan menambahkan PERINGATAN MERAH BESAR untuk jawabannya.)
kostix
7
APT :: Dapatkan :: Asumsikan-Ya "benar"; membantu saya untuk menghindari interupsi dalam instalasi di wadah buruh pelabuhan.
Perhatikan bahwa jika Anda juga ingin secara otomatis mengikuti jawaban default saat prompt interaktif muncul, Anda dapat menggunakannya DEBIAN_FRONTEND=noninteractive
Jawaban yang bagus Bahkan dengan -y, saya masih mendapat konfirmasi menanyakan apakah saya ingin memulai kembali layanan. Saya membutuhkan ini untuk sepenuhnya menghilangkan semua prompt.
Setidaknya ini harus masuk /etc/apt/apt.confdan berkomentar. Saya khawatir Ubuntu mengambil taktik Microsoft untuk selalu meminta izin.
"Apakah kamu yakin?", Tentu saja aku yakin, aku bukan monyet yang terlatih hanya mengetik di keyboard, akan klik senang.
Selanjutnya pintu akan bertanya, "Apakah Anda yakin ingin keluar?"
Oven akan bertanya, "Apakah Anda yakin ingin memasak?"
Mobil akan bertanya, "Apakah Anda yakin ingin mengerem?"
Pemadam api akan bertanya, "Apakah Anda yakin ingin memadamkan api?"
Maaf Dave, aku tidak bisa membiarkanmu melakukan itu.
HAL9000 dapat menggunakan kontraksi tetapi Data tidak bisa, atau tidak bisa.
Perbedaannya dengan HAL9000 dan dpkg yang meminta izin adalah bahwa HAL mengatakan "tidak, titik", sedangkan "Ya, lakukan apa yang saya katakan" hanya akan muncul jika Anda akan benar-benar dan benar-benar merusak sistem Anda. Jika itu yang Anda inginkan, tentu saja, silakan. Tetapi memiliki peringatan dalam kasus itu tampaknya masuk akal.
@amyassin apt-get updateperintah ini memerlukan izin root karena memperbarui daftar paket lokal (indeks), yang merupakan file sistem yang dimiliki oleh root.
jjmontes
3
umumnya opsi dari manual harus bekerja dengan baik
apt-get -y --force-yes install package
jika tidak berhasil Anda dapat mencoba menggunakan yesperintah.
yes | apt-get -y --force-yes install package
memang menggunakan ini dengan skrip penyediaan shell gelandangan saya
PS: jika Anda ingin non-interaktif tetapi dengan umumnya menyatakan tidak maka Anda dapat mencoba ini:
Jika Anda selalu menginginkan argumen -y saya sarankan menambahkan baris
alias apt-get='apt-get -y' #Automatic -y argument on apt-get commands
ke dalam .bashrc Anda. Ini, seperti dijelaskan oleh komentar, akan secara otomatis menambahkan argumen -y ke semua perintah apt-get Anda dan karenanya menyetujui semua unduhan.
CATATAN: Ini akan tetap benar sampai Anda mengembalikan .bashrc Anda dan memulai kembali shell.
Saya sedang mencari cara untuk memilih non-default dalam skrip, khususnya ketika menginstal wireshark, dan akhirnya menggunakan tmux untuk berinteraksi dengan shell, sebagai berikut:
# Start a detached root session
sudo tmux new-session -d
# Send the command
sudo tmux send-keys "DEBIAN_FRONTEND=readline apt-get -qq install wireshark-common; exit" enter
# Wait for the tmux session to get to the interactive stage
sleep 5
# Answer the question
sudo tmux send-keys "yes" enter
# Now attach to the session so we wait for command completion
sudo tmux attach
Masalah dengan:
adalah bahwa ia akan meminta konfirmasi manual jika kunci publik pemilik tanda tangan paket tidak dalam keyring, atau kondisi lainnya. untuk memastikan itu tidak meminta konfirmasi lakukan saja ini:
Jika Anda ingin memiliki pengaturan ini permanen, buat file di /etc/apt/apt.conf.d/, seperti /etc/apt/apt.apt.conf.d/90forceyes dengan konten berikut:
sumber
-y
semakin membosankan. (Plus itu jawaban yang lebih lengkap.)--force-yes
: seperti yang dibalas oleh utas terkait inidebian-devel
,--force-yes
mungkin membuat sistem tidak dapat digunakan. (Saya tidak downvoting karena jawabannya sebenarnya mengatasi masalah seperti yang dinyatakan oleh OP, tapi saya tetap akan menambahkan PERINGATAN MERAH BESAR untuk jawabannya.)Perhatikan bahwa jika Anda juga ingin secara otomatis mengikuti jawaban default saat prompt interaktif muncul, Anda dapat menggunakannya
DEBIAN_FRONTEND=noninteractive
Instalasi tunggal:
Misalnya:
Semua pembaruan:
Anda dapat mengatur opsi yang lebih baik dengan
-o Dpkg::Options::="--force-confdef"
dan-o Dpkg::Options::="--force-confold"
.Contoh:
atau
Contoh prompt interaktif:
Bacaan menarik: Lakukan instalasi paket Debian tanpa pengawasan
sumber
-y
, saya masih mendapat konfirmasi menanyakan apakah saya ingin memulai kembali layanan. Saya membutuhkan ini untuk sepenuhnya menghilangkan semua prompt.Setidaknya ini harus masuk
/etc/apt/apt.conf
dan berkomentar. Saya khawatir Ubuntu mengambil taktik Microsoft untuk selalu meminta izin."Apakah kamu yakin?", Tentu saja aku yakin, aku bukan monyet yang terlatih hanya mengetik di keyboard, akan klik senang.
Selanjutnya pintu akan bertanya, "Apakah Anda yakin ingin keluar?"
Oven akan bertanya, "Apakah Anda yakin ingin memasak?"
Mobil akan bertanya, "Apakah Anda yakin ingin mengerem?"
Pemadam api akan bertanya, "Apakah Anda yakin ingin memadamkan api?"
Maaf Dave, aku tidak bisa membiarkanmu melakukan itu.
HAL9000 dapat menggunakan kontraksi tetapi Data tidak bisa, atau tidak bisa.
sumber
Dari HOWTO apt-get
Gunakan
-y
sakelar:apt-get -y install packagename
sumber
sumber
update
perlu izin?apt-get update
perintah ini memerlukan izin root karena memperbarui daftar paket lokal (indeks), yang merupakan file sistem yang dimiliki oleh root.umumnya opsi dari manual harus bekerja dengan baik
jika tidak berhasil Anda dapat mencoba menggunakan
yes
perintah.memang menggunakan ini dengan skrip penyediaan shell gelandangan saya
PS: jika Anda ingin non-interaktif tetapi dengan umumnya menyatakan tidak maka Anda dapat mencoba ini:
sumber
Alias ( well ) yang baru juga
apt
mengambil sakelar-y
(--yes
):sumber
Jika Anda selalu menginginkan argumen -y saya sarankan menambahkan baris
ke dalam .bashrc Anda. Ini, seperti dijelaskan oleh komentar, akan secara otomatis menambahkan argumen -y ke semua perintah apt-get Anda dan karenanya menyetujui semua unduhan.
CATATAN: Ini akan tetap benar sampai Anda mengembalikan .bashrc Anda dan memulai kembali shell.
sumber
Saya sedang mencari cara untuk memilih non-default dalam skrip, khususnya ketika menginstal wireshark, dan akhirnya menggunakan tmux untuk berinteraksi dengan shell, sebagai berikut:
sumber