Upgrade sistem Debian dengan cron

2

Saya mengerti bahwa pertanyaan yang harus dilakukan seseorang melakukan peningkatan sistem otomatis dan tanpa pengawasan sangat dapat diperdebatkan, tetapi mari kita asumsikan bahwa saya, tidak pernah memiliki masalah dengan konsep itu sejauh ini.

Setup adalah sebagai berikut: Debiansistem server berbasis stripped down , berjalan, misalnya Apachedan SSHserver, dilindungi dengan benar dengan iptablesaturan yang sangat ketat dan di belakang HW firewall. Ada cronpekerjaan harian yang melakukan hal berikut:

apt-get update &&
apt-get upgrade -y &&
apt-get dist-upgrade -y &&
apt-get autoremove -y &&
service apache restart &&
service ssh restart

Gagasan di balik ini adalah: jika ada pembaruan untuk perangkat lunak yang merupakan satu-satunya permukaan serangan ke dunia luar, instal dan restart perangkat lunak itu. (Restart terjadi bahkan jika Apache dan SSH tidak ditingkatkan, dan downtime layanan pada saat itu kurang dari satu detik).

Sekarang, masalah saya adalah, ketika ada pembaruan ke Apachedan SSH, dpkgmenanyakan apakah seseorang harus menyimpan konfigurasi asli atau menggantinya dengan generik, default. Sayangnya ini adalah prompt berbasis menu dan seseorang tidak dapat menggunakan pipa sederhana yesuntuk memilih jawaban yang tepat. Ada ide bagaimana ini bisa ditulis?

Ulrik
sumber

Jawaban:

1

Anda bisa mencoba '-qq -y', tetapi tidak disarankan.

-q, --quiet Tenang. Menghasilkan output yang cocok untuk logging, menghilangkan indikator kemajuan Semakin banyak q akan menghasilkan lebih banyak keheningan hingga maksimal dua. Anda juga dapat menggunakan -q = # untuk mengatur level tenang, menimpa file konfigurasi. Perhatikan bahwa level 2 yang tenang menyiratkan -y, Anda tidak boleh menggunakan -qq tanpa pengubah tanpa aksi seperti -d, --print-uris atau -s karena APT mungkin memutuskan untuk melakukan sesuatu yang tidak Anda harapkan.

Saya kira akan lebih baik untuk mensimulasikan upgrade terlebih dahulu, dan kemudian memutuskan apakah itu 'aman' untuk memaksa upgrade atau tidak, itu adalah jika kekuatan diperlukan.

Simulasikan:

# apt-get -qq -s upgrade

Upgrade paksa:

# apt-get -qq -y upgrade

Referensi;

apt-get man

anders
sumber
0

Menurut buku pegangan debian Anda dapat menghindari pertanyaan file konfigurasi dengan menambahkan baris berikut:

DPkg::options { "--force-confdef"; "--force-confold"; }

Ke /etc/apt/apt.conf.d/localfile Anda (buat localfile sebelumnya)

Atau sertakan opsi di atas dalam aptperintah:

apt -o DPkg::options::="--force-confdef" -o DPkg::options::="--force-confold" full-upgrade

LEBIH LANJUT Menghindari pertanyaan file konfigurasi

dpkgmenangani pembaruan file konfigurasi, tetapi, saat melakukannya, secara teratur menyela pekerjaannya untuk meminta masukan dari administrator. Ini membuatnya kurang menyenangkan bagi mereka yang ingin menjalankan pembaruan secara non-interaktif. Inilah sebabnya mengapa program ini menawarkan opsi yang memungkinkan sistem untuk merespons secara otomatis sesuai dengan logika yang sama: --force-confoldmempertahankan versi file yang lama; --force-confnewakan menggunakan versi baru file (pilihan ini dihormati, bahkan jika file belum diubah oleh administrator, yang jarang memiliki efek yang diinginkan). Menambahkan --force-confdefopsi memberitahu dpkguntuk memutuskan dengan sendirinya bila memungkinkan (dengan kata lain, ketika file konfigurasi asli belum disentuh), dan hanya menggunakan --force-confnewatau --force-confolduntuk kasus lain.

GAD3R
sumber