Mengapa mencegah paket diperbarui? Katakanlah Anda menginstal paket yang lebih lama dari versi yang tersedia di repositori Debian, Ubuntu, atau Linux Mint, atau Anda tahu bahwa pembaruan menyebabkan masalah dan Anda ingin semua paket dikurangi satu (atau dua, tiga ...) pembaruan.
Berikut adalah contoh. Saya juga menggunakan browser Chromium Patch akselerasi perangkat keras dari Saiarcot895-dev PPA di Ubuntu 18.10. Agar akselerasi perangkat keras berfungsi dengan driver Nvidia, diperlukan paket vdpau-va-driver yang ditambal, yang belum tersedia di PPA ini untuk Ubuntu 18.10 terbaru. Untungnya, paket Ubuntu 18.04 dapat diinstal di Ubuntu 18.10, tetapi setiap peningkatan melalui "upgrade apt" atau menggunakan Pembaruan Perangkat Lunak memperbarui paket itu, yang tidak saya inginkan. Jadi dalam hal ini saya akan menjauhkan paket ini dari peningkatan untuk memperbarui semua paket lain tanpa harus mengkhawatirkannya.
Perhatikan bahwa mencegah paket dari peningkatan di masa mendatang dapat menyebabkan masalah dalam beberapa situasi jika paket yang Anda pegang digunakan sebagai ketergantungan pada paket lain yang dapat ditingkatkan. Jadi cobalah untuk tidak menyimpan terlalu banyak paket dari peningkatan, terutama perpustakaan.
Dari seri yang sama:Cara Menemukan Paket yang Tersedia dari Baris Perintah di Debian, Ubuntu, atau Linux Mint [APT]
Berikut adalah 3 cara untuk mencegah paket agar tidak diperbarui di Debian, Ubuntu, Linux Mint.
1. Cegah pembaruan paket menggunakan GUI:Synaptic Package Manager
Synaptic Package Manager, program manajemen paket Gtk grafis untuk apt, dapat mengunci paket, yang mencegahnya diperbarui.
Penting untuk dicatat bahwa menggunakan Synaptic untuk mengunci paket tidak mencegahnya diperbarui dari baris perintah – menjalankan apt upgrade
atau apt-get upgrade
akan tetap memperbarui paket yang terkunci di Synaptic. Mengunci paket di Synaptic mencegah peningkatan paket menggunakan aplikasi Pembaruan Perangkat Lunak Ubuntu dan mungkin manajer paket grafis lainnya. Namun, itu tidak akan mencegah pembaruan paket menggunakan aplikasi Manajer Pembaruan Linux Mint. Jadi saya sarankan menggunakan apt-mark
atau dpkg
(lihat di bawah) untuk mencegah paket diperbarui.
Anda dapat menginstal Synaptic Package Manager dengan perintah ini:
sudo apt install synaptic
Untuk mencegah paket diperbarui dengan Synaptic, temukan, pilih paket, dan klik menu Synaptic Package -> Lock Version
:
Anda juga dapat membuka paket dengan cara yang sama.
Untuk melihat semua paket yang diblokir di Synaptic, klik Status
kiri bawah, lalu klik Pinned
di atas Status
Bagian:
2. Cegah paket agar tidak diperbarui dengan apt-mark
Mencegah paket diperbarui dengan apt-mark harus mencegahnya diperbarui menggunakan Pembaruan Perangkat Lunak Ubuntu, serta peningkatan baris perintah (apt upgrade
/ apt-get upgrade
).
Anda dapat menggunakan paket untuk peningkatan di masa mendatang (dan untuk penghapusan otomatis) dengan apt-mark
dengan perintah ini:
sudo apt-mark hold PACKAGE
Pengganti PACKAGE
dengan paket yang tidak ingin Anda perbarui.
Anda dapat memeriksa paket mana yang ditandai sebagai hold
(agar tidak terupdate) dengan:
apt-mark showhold
Untuk menghapus penangguhan (agar paket dapat diperbarui) gunakan:
sudo apt-mark unhold PACKAGE
Untuk keduanya hold
dan unhold
Anda dapat menentukan beberapa paket, seperti menginstal perangkat lunak dengan apt
(pisahkan paket dengan spasi).
3. Cegah pembaruan paket dengan dpkg
Beberapa waktu lalu ada beberapa pengelola paket grafis yang mengabaikan status apt-mark-hold. Saya tidak yakin apakah itu masih terjadi, tetapi hanya untuk amannya (dan jika Anda menggunakan versi lama Debian/Ubuntu/Linux Mint) ada cara lain untuk mendapatkan pembaruan paket di Ubuntu, Linux Mint, atau Debian di sini mencegah:dpkg.
Untuk mencegah paket diperbarui dengan dpkg, gunakan:
echo "PACKAGE hold" | sudo dpkg --set-selections
Pengganti PACKAGE
dengan paket yang tidak ingin Anda perbarui.
Anda dapat melihat semua paket yang disimpan dengan perintah ini:
dpkg --get-selections | grep hold
Untuk membuka kunci (mengizinkan paket ditingkatkan) gunakan:
echo "PACKAGE install" | sudo dpkg --set-selections
bukan bagaimana apt-mark
, solusi ini tidak mengizinkan beberapa paket ditentukan secara bersamaan.