Dapatkah seseorang mengklarifikasi dist-upgrade Ubuntu (Debian) untuk saya?

35

Saya punya server Ubuntu 8.04 LTS. Ada beberapa paket yang "disimpan kembali" ( "pembaruan berikut telah disimpan kembali" ) ketika saya melakukan apt-get upgrade. Ini pemahaman saya bahwa saya dapat melakukan apt-get dist-upgradeuntuk meningkatkan paket-paket ini, tetapi saya memiliki beberapa masalah:

  1. Jika saya melakukan dist-upgrade, apakah saya akan memutakhirkan dari 8.04 ke versi yang lebih tinggi (saya kira 8,10)? Jika demikian, apa gunanya 8.04 menjadi "Dukungan Jangka Panjang" (LTS)?

  2. Apakah ini proses yang "berbahaya"? Saya berasumsi bahwa paket disimpan kembali karena ada paket baru yang mereka andalkan. Apakah dist-upgradehanya menarik paket-paket baru dan melakukan upgrade yang cukup mudah, atau ada peringatan untuk dilihat?

Boden
sumber

Jawaban:

57

Perintah apt-get upgrade tidak akan menambah atau menghapus paket. apt-get dist-upgrade akan menambah atau menghapus paket yang diperlukan.

Perintah apt-get dist-upgrade tidak akan secara otomatis memutakhirkan Anda dari satu rilis ke rilis lain kecuali Anda juga memperbarui sumber Anda (/etc/apt/sources.list) untuk menunjuk ke rilis yang lebih baru.

orang yang tepat

upgrade
    upgrade is used to install the newest versions of all packages 
    currently installed on the system from the sources enumerated 
    in /etc/apt/sources.list.

dist-upgrade
    dist-upgrade, in addition to performing the function of upgrade, 
    also intelligently handles changing dependencies with new versions 
    of packages;

Apakah ada masalah khusus yang harus diperhatikan ketika melakukan upgrade-upgrade vs upgrade?

Untuk sebagian besar, saya selalu apt-get dist-upgrade untuk menerapkan pembaruan ke sistem. Tentu saja memperhatikan dengan tepat paket apa yang ditambahkan atau dihapus. Seringkali ini terjadi ketika ada sesuatu yang ditambahkan seperti kernel baru yang tidak kompatibel dengan yang sebelumnya dan Anda harus mengkompilasi ulang modul. Jika Anda memiliki beberapa modul kernel yang harus Anda bangun sendiri, maka Anda mungkin perlu memastikan bahwa Anda mengkompilasi ulang untuk kernel baru. Saya memiliki beberapa sistem dengan antarmuka jaringan yang tidak didukung oleh kernel stok yang harus saya kompilasi ulang driver jaringan setelah setiap pembaruan kernel.

Sakit kepala
sumber
Terima kasih, itulah yang saya harapkan. Apakah ada masalah khusus yang harus diperhatikan ketika melakukan dist-upgrade vs upgrade? (bukan yang satu adalah pengganti yang lain, saya hanya ingin tahu apakah ada hal lain yang harus saya ketahui)
Boden
ketika Anda menjalankan dist-upgrade, Anda akan mendapatkan ringkasan tentang apa yang akan dilakukan (paket untuk ditingkatkan, paket baru, paket yang akan dihapus). perhatikan saja apa yang dihapus, jika ada. jika Anda belum mengubah file /etc/apt/sources.list Anda, itu seharusnya tidak terlalu besar.
brad.lane
2
Demi penyelesaian saja. Untuk bermigrasi ke rilis LTS berikutnya setelah tersedia, Anda harus menjalankan perintah berikut setelah memastikan pemasangan 8.04 Anda terbaru. sudo apt-get install update-manager-core dan kemudian sudo do-release-upgrade.
3dinfluence
2

upgrade vs dist-upgrade adalah istilah yang benar-benar debian. Dalam debian Anda akan menggunakan pemutakhiran untuk mendapatkan perubahan dalam rilis stabil (yang tidak akan melibatkan sesuatu yang begitu drastis seperti penghapusan) dan dist-upgrade untuk beralih antar rilis. dist-upgrade harus memiliki hasil yang sama dengan upgrade dengan asumsi tidak ada kepindahan yang diperlukan.

Beralih di antara rilis akan membutuhkan mengubah sumber Anda. Daftar untuk menunjuk pada rilis baru.

Ubuntu tidak memiliki model rilis ultraconservative yang sama, jadi syaratnya tidak dipetakan secara bersih - Anda biasanya hanya ingin menggunakan dist-upgrade kecuali jika Anda akan pergi di antara rilis, dalam hal ini Anda menggunakan upgrader sendiri, lakukan-rilis -meningkatkan.

Kapten Segfault
sumber
you'd generally just want to use dist-upgrade unless you're going between releases, in which case you use the upgrade script. Saya pikir, Kapten Segfault, maksud Anda sebaliknya: - Anda biasanya hanya ingin menggunakan peningkatan kecuali jika Anda sedang berjalan di antara rilis, dalam hal ini Anda menggunakan skrip dist-upgrade.
2
Ubuntu memiliki program terpisah untuk melakukan peningkatan. Anda menggunakannya, bukan apt-get, untuk pergi di antara rilis.
Kapten Segfault
Di mana saya dapat menemukan program terpisah ini?
starbeamrainbowlabs
@starbeamrainbowlabs itu disebut do-release-upgrade , periksa man do-release-upgrade untuk detail
isync
@isync Benar. Saya tahu tentang itu - Komentar itu tidak jelas sehingga saya pikir ada perintah lain yang belum saya hubungi. Terima kasih!
starbeamrainbowlabs