Salah satu fitur yang paling terkenal adalah kemampuannya untuk mengupgrade sistem terinstall dari satu rilis stable ke rilis berikutnya: dist-upgrade — istilah yang mashur — besar kontribusinya terhadap reputasi rroyek. Dengan sedikit tindakan pencegahan, mengupgrade sebuah komputer dapat membutuhkan waktu beberapa menit, atau belasan menit, tergantung kecepatan unduh dari repositori paket.
6.7.1. Prosedur yang Direkomendasikan
Karena Debian memiliki beberapa waktu untuk evolusi antara rilis stable, Anda harus membaca catatan rilis sebelum melakukan upgrade.
Pada bagian ini, kami akan fokus pada peningkatan sistem Buster ke Bullseye. Ini adalah operasi besar pada suatu sistem; dengan demikian, tidak pernah 100% bebas risiko, dan tidak boleh dicoba sebelum semua data penting dicadangkan.
Kebiasaan lain yang baik yang membuat peningkatan lebih mudah (dan lebih pendek) adalah untuk merapikan paket terpasang Anda dan hanya menyimpan yang benar-benar dibutuhkan. Alat yang bermanfaat untuk melakukan itu termasuk
aptitude
,
deborphan
,
debfoster
, dan
apt-show-versions
(lihat
Bagian 6.2.7, “Pelacakan Otomatis Paket Terinstall”). Misalnya, Anda dapat menggunakan perintah berikut, dan kemudian menggunakan mode interaktif
aptitude
untuk memeriksa ulang dan menyempurnakan penghapusan yang dijadwalkan:
#
deborphan | xargs aptitude --schedule-only remove
Sekarang untuk peningkatan itu sendiri. Pertama, Anda perlu mengubah berkas
/etc/apt/sources.list
agar memberi tahu APT untuk mendapatkan paketnya dari
Bullseye, bukan
Buster. Jika berkas hanya berisi referensi ke
Stable daripada nama kode eksplisit, perubahan bahkan tidak diperlukan, karena
Stable selalu mengacu pada versi Debian terbaru yang dirilis. Dalam kedua kasus, basis data paket yang tersedia harus disegarkan dengan perintah
apt update
atau tombol segarkan dalam
synaptic
(
Bagian 6.2.1, “Inisialisasi”).
Setelah sumber paket baru ini didaftarkan, Anda harus terlebih dahulu melakukan peningkatan minimal dengan
apt upgrade
dkk. seperti yang dijelaskan dalam
Bagian 6.2.3, “Pembaharuan Sistem”). Dengan melakukan peningkatan dalam dua langkah, kita memudahkan pekerjaan alat manajemen paket dan sering memastikan bahwa kita memiliki versi terbaru mereka, yang mungkin telah mengumpulkan perbaikan bug dan perbaikan yang diperlukan untuk menyelesaikan peningkatan distribusi penuh.
Setelah peningkatan pertama ini dilakukan, sekarang saatnya untuk menangani peningkatan itu sendiri, baik dengan
apt full-upgrade
,
aptitude
, atau
synaptic
(
Bagian 6.7, “Upgrade dari Satu Distribusi Stable ke Berikutnya”). Anda harus hati-hati memeriksa tindakan yang disarankan sebelum menerapkannya: Anda mungkin ingin menambahkan paket yang disarankan atau batal memilih paket yang hanya direkomendasikan dan diketahui tidak berguna. Bagaimanapun, frontend harus datang dengan skenario yang berakhir dengan sistem
Bullseye yang koheren dan terkini. Kemudian, yang perlu Anda lakukan adalah menunggu sementara paket yang diperlukan diunduh, menjawab pertanyaan debconf dan mungkin yang tentang berkas konfigurasi yang dimodifikasi secara lokal, dan duduk menunggu sementara APT melakukan sihirnya.
6.7.2. Menangani Masalah setelah Pembaharuan
Dalam kegemasan usaha terbaik maintainer Debian, upgrade sistem utama tidak selalu selancar yang Anda inginkan. Versi terbaru perangkat lunak mungkin tidak cocok dengan versi sebelumnya (misalnya, perilaku bawaannya atau format data mereka mungkin berubah). Juga, beberapa kutu mungkin terselip oleh crack walaupun fase testing yang selalu mendahului rilis Debian.
Untuk mengantisipasi beberapa masalah ini, Anda dapat menginstall paket apt-listchanges, yang menampilkan informasi tentang kemungkinan masalah di permulaan upgrade paket. Informasi ini dikompilasi oleh maintainer paket Debian dan dimasukkan dalam berkas /usr/share/doc/paket/NEWS.Debian
untuk memberi manfaat bagi pengguna. Membaca berkas perubahan ini (melalui apt-listchanges) akan membantu Anda menghindari kejutan buruk.
Anda mungkin kadang-kadang menemukan bahwa versi baru dari perangkat lunak tidak berfungsi sama sekali. Hal ini umumnya terjadi jika aplikasi tidak terlalu populer dan belum cukup diuji; pembaruan menit terakhir juga dapat memperkenalkan regresi yang hanya ditemukan setelah rilis stabil. Dalam kedua kasus, hal pertama yang harus dilakukan adalah melihat sistem pelacakan bug di
https://bugs.debian.org/paket
, dan memeriksa apakah masalahnya telah dilaporkan. Jika ini yang terjadi, itu juga akan tercantum sebelum peningkatan dimulai jika Anda memasang
apt-listbugs. Jika belum, Anda harus melaporkannya sendiri dengan
reportbug
. Jika itu sudah diketahui, laporan bug dan pesan terkait biasanya merupakan sumber informasi yang sangat baik terkait dengan bug:
dalam kasus lain, pengguna mungkin menemukan solusi masalah tersebut dan dibagi dalam penjelasannya dalam balasan ke laporan tersebut;
dan dalam kasus lain, paket perbaikkan mungkin telah dipersiapkan dan tersedia secara publik oleh maintainer.
Tergantung pada keparahan kutu, versi terbaru paket mungkin telah dipersiapkan secara spesifik untuk revisi baru rilis stable. Ketika hal ini terjadi, paket perbaikan tersedia di bagian
proposed-updates
dari mirror Debian (lihat
Bagian 6.1.2.3, “Pengajuan Pembaharuan”). Entri yang sesuai dapat ditambahkan sementara ke berkas
sources.list
, dan paket yang diperbaharui dapat diinstall dengan
apt
atau
aptitude
.
Terkadang paket yang diperbaiki belum tersedia di bagian ini karena tertunda validasi oleh Manajer Rilis Stable. Anda dapat memverifikasi apakah itu yang terjadi pada laman web mereka. Daftar paket belum tersedia, namun setidaknya Anda tahu bahwa proses publikasi sedang berjalan.
6.7.3. Membersihkan setelah Peningkatan
APT biasanya memastikan peningkatan yang bersih, menarik dependensi baru dan yang diperbarui, atau menghapus paket yang bertentangan. Tetapi bahkan alat yang hebat, itu tidak dapat mencakup semua tugas yang akan dihadapi pengguna dan administrator setelah peningkatan, karena mereka memerlukan keputusan manusia.
6.7.3.1. Paket-paket yang dihapus dari Arsip Debian
Kadang-kadang ftpmaster Debian menghapus paket dari arsip Debian, karena mereka berisi bug kritis rilis, ditinggalkan oleh penulis hulu mereka atau pengelola paket mereka, atau sekadar mencapai akhir hidup mereka. Dalam hal ini rilis Debian yang lebih baru tidak mengirimkan paket itu lagi. Untuk menemukan semua paket, yang tidak memiliki sumber paket, gunakan perintah apt-show-versions
:
$
apt-show-versions | grep "No available version"
Hasil serupa dapat dicapai dengan aptitude search ~o
. Jika paket yang ditemukan tidak diperlukan lagi, mereka harus dibersihkan dari sistem, karena mereka tidak akan menghadapi pembaruan apa pun untuk bug terkait kritis atau keamanan lagi.
6.7.3.2. Paket-paket Transisi dan Dummy
Kadang-kadang, mungkin perlu untuk paket untuk mendapatkan nama baru. Dalam hal ini sering kali paket lama disimpan sebagai paket (hampir) kosong, bergantung pada yang baru dan hanya menginstal berkas wajib di
/usr/share/doc/paket/
. Paket tersebut disebut paket "dummy" atau "transitional". Jika pengelola paket yang bertanggung jawab juga mengubah bagian paket ini menjadi
oldlibs
, maka alat seperti
aptitude
,
deborphan
, atau
debfoster
(lihat sidebar
ALTERNATIVE deborphan
dan debfoster
) dapat mengambil paket-paket ini untuk menyarankan penghapusan mereka.
Sayangnya saat ini tidak ada cara ampuh untuk memastikan bahwa paket ini secara otomatis dihapus atau dipilih oleh alat yang disebutkan di atas. Salah satu cara untuk memeriksa apakah sistem masih memiliki beberapa paket ini diinstal, adalah untuk melihat melalui deskripsi paket-paket yang diinstal dan kemudian memeriksa hasilnya. Berhati-hatilah untuk tidak menjadwalkan hasil untuk penghapusan otomatis, karena metode ini dapat menyebabkan positif palsu:
$
dpkg -l | grep ^ii | grep -i -E "(transition|dummy)"
6.7.3.3. Berkas-berkas Konfigurasi Tak Terpakai atau Lama
Jika peningkatan berhasil mungkin ada beberapa sisa berkas konfigurasi, baik dari dpkg (lihat
Bagian 5.2.3, “Checksum, Daftar Berkas Konfigurasi, dsb.”), ucf, atau dari paket yang dihapus. Yang terakhir dapat
dibersihkan tuntas dengan menggunakan
apt autoremove --purge
. Berkas konfigurasi yang ditangani oleh
dpkg atau
ucf selama proses peningkatan telah meninggalkan beberapa berkas dengan akhiran khusus, misalnya
.dpkg-dist
,
.dpkg-old
,
.ucf-old
. Menggunakan perintah
find
atau
locate
dapat membantu melacaknya. Jika mereka tidak lagi berguna, mereka dapat dihapus.
6.7.3.4. Berkas yang tak dimiliki oleh sebarang Paket
Kebijakan Debian memberlakukan bahwa paket tidak meninggalkan berkas ketika mereka dibersihkan. Melanggar prinsip ini adalah bug serius dan Anda akan jarang menghadapinya. Jika Anda menemuinya, laporkan; dan jika Anda penasaran, Anda dapat menggunakan paket cruft atau cruft-ng untuk memeriksa sistem Anda untuk berkas yang tidak dimiliki oleh paket apa pun.