Cara kembali dari "pengujian" ke "stabil" - Kernel downgrade

37

Saat ini saya sedang bersenang-senang dengan apt-get- dan yang buruk adalah itu salah saya sendiri. Saya telah mengaktifkan testingpaket - paket /etc/apt/sources.listuntuk menginstal paket tertentu. Dan saya katakan sistem saya lakukan apt-get dist-upgrade. Semuanya bekerja dengan baik, tetapi sekarang saya mencoba untuk kembali ke stablepembaruan - dan saya gagal ...

Ketika mencoba melakukan apt-get dist-upgrade, saya mendapatkan informasi berikut:

The following packages will be REMOVED:
  linux-image-3.10-3-amd64
The following NEW packages will be installed:
  libcgi-fast-perl libfcgi-perl libyaml-syck-perl
The following packages will be DOWNGRADED:
  initramfs-tools libdate-manip-perl munin munin-common

Yah, tidak apa-apa, tetapi ketika saya mencoba melakukan ini, saya mendapat peringatan dengan huruf merah ramah:

You are running a kernel (version 3.10-3-amd64) and attempting to remove the same version.
...
It is highly recommended to abort the kernel removal unless you are prepared to fix the system after removal.

Yah, saya suka mengikuti rekomendasi. Versi kernel yang benar untuk stablerilis adalah linux-image-3.2.0-4-amd64dan sudah diinstal. Mungkin downgrade tidak akan menjadi masalah jika saya bekerja di bawah kernel yang lebih lama? Sebenarnya, saya tidak tahu cara mengaktifkan kernel 3.2.0bukan 3.10.

BurninLeo
sumber
5
Saya benci membagi ini untuk Anda, tetapi downgrade tidak didukung di Debian. Anda tidak spesifik tentang berapa banyak sistem Anda sekarang terdiri dari paket-paket dari pengujian (ini dapat ditemukan, misalnya, oleh apt-show-versi), tetapi jika itu adalah bagian penting, Anda mungkin memiliki masalah. Solusi untuk masalah langsung Anda tampaknya sederhana, kecuali saya kehilangan sesuatu. Cukup reboot ke 3.2 dan kemudian hapus kernel yang lebih baru. Namun, ini tidak akan membuat sistem Anda secara ajaib kembali menjadi stabil.
Faheem Mitha
Terima kasih! Sejauh yang saya lihat, tidak ada banyak masalah sama sekali - hanya beberapa paket ... Apakah ada opsi untuk memberitahu sistem untuk menggunakan kernel 3.2 setelah reboot? Saya sedang mengerjakan VPS (server virtual) dan tidak akan dapat mengklik tombol apa pun sebelum SSH naik ...
BurninLeo
Anda mengatakan Anda tidak dapat memilih kernel secara interaktif saat boot? Jika Anda menggunakan GRUB, Anda harus dapat pergi ke konfigurasi grub dan mengubah pilihan kernel default untuk boot. Rinciannya tergantung pada versi GRUB apa yang Anda jalankan.
Faheem Mitha
1
@Wilf Debian tidak akan secara otomatis mencoba downgrade. Anda dapat mengkonfigurasi apt untuk mencoba melakukan itu, tetapi saya tidak berpikir itu akan membantu di sini.
Faheem Mitha
1
Anda mungkin menggunakan GRUB. Posting versi GRUB Anda, dpkg -l | grep grubdalam pertanyaan.
Faheem Mitha

Jawaban:

43

Lihat ini, sepertinya mengindikasikan bahwa penurunan versi dimungkinkan menggunakan apt-get:

http://ispire.me/downgrade-from-debian-sid-to-stable-from-jessie-to-wheezy/

Essentials (3 langkah):
(Jika sebagian besar sistem Anda memiliki versi yang lebih tinggi, Anda harus berhati-hati menurunkan peringkat. Lihat terutama perubahan format (data dan file konfigurasi pribadi)

  1. Hapus semua referensi mengenai sid atau tidak stabil di Anda /etc/apt/sources.listdengan menghapus, mengganti, atau komentar dari. Pastikan sources.listmemiliki apa yang Anda inginkan (saya sarankan keamanan dan sumber deb yang stabil). Sebagai contoh:

    deb http://security.debian.org/ wheezy / pembaruan utama
    deb-src http://security.debian.org/ wheezy / pembaruan utama

    deb http://cdn.debian.net/debian/ wheezy contrib non-free
    deb-src http://cdn.debian.net/debian/ wheezy contrib utama non-free

  2. Sematkan rilis yang Anda inginkan /etc/apt/preferences(ini akan menyebabkan informasi paket yang sudah diunduh tetapi sekarang tidak diinginkan diabaikan seperti yang diinginkan).

    Paket: *
    Pin: rilis a =
    Prioritas Pin- stabil : 1001

  3. Akhirnya kita harus menjalankan proses pembaruan dan pembaruan yang tepat untuk menurunkan versi semua paket.
    * aptakan meminta konfirmasi

    # apt-get update
    # apt-get upgrade
    # apt-get dist-upgrade

Jika Anda tidak dapat menjelaskan apa yang masing-masing perintah ini lakukan secara independen, baca halaman manual Anda! :) Dan lakukan hal yang sama untuk setidaknya opsi yang Anda gunakan di utilitas lain.

  1. (Jika Anda memiliki masalah menurunkan versi paket) Bersihkan, lalu instal ulang

    # apt-get purge [your_failing_package]
    # apt-get install [your_failing_package]

Bill West
sumber
2
Jawaban yang bagus, terima kasih! Inti dari itu adalah langkah 2.
Chris Harrington
File /etc/issuedan lainnya disimpan agar tidak diturunkan peringkatnya. Bagaimana mengatasinya?
Mvorisek
3
  • Nyalakan ulang mesin.
  • Dari menu lanjutan Debian di Grub, pilih kernel yang berbeda dari yang ingin Anda hapus.
  • Jika Anda menggunakan Debian, Anda akan memiliki paket meta untuk kernel yang diinstal.

    gayan@deb:~$ dpkg -l | grep linux 
    ii  linux-image-amd64                     4.9.25-1~bpo8+1
    ii  linux-image-3.16.0-4-amd64            3.16.43-2
    ii  linux-image-4.9.0-0.bpo.3-amd64       4.9.25-1~bpo8+1
    
  • Cukup bersihkan paket meta ( linux-image-amd64) dan pasang kembali.

    Maka Anda akan memiliki:

    gayan@deb:~$ dpkg -l | grep linux
    ii  linux-image-amd64                     3.16.43-2
    ii  linux-image-3.16.0-4-amd64            3.16.43-2
    
  • Mulai ulang.


Info:

linux-image-amd64adalah paket meta. Ini bisa menunjuk ke kernel yang stabil atau yang port-porting (4.9.25-1 ~ bpo8 + 1) tergantung pada bagaimana Anda menginstalnya:

apt-get -t jessie-backports install linux-image-amd64

atau

apt-get install linux-image-amd64
Gayan Weerakutti
sumber