Katakanlah Anda menjalankan server dan Anda tidak ingin memutakhirkan ke Testing (Squeeze) dari Stable (Lenny) untuk hanya menginstal satu atau dua paket yang diperlukan.
Apa cara terbaik untuk menginstal hanya paket tertentu dari Pengujian?
linux
debian
package-management
aptitude
Gareth
sumber
sumber
Jawaban:
Banyak orang tampaknya takut mencampur stabil dengan pengujian, tetapi terus terang, pengujian cukup stabil dalam dirinya sendiri, dan dengan preferensi yang tepat dan pemeriksaan solusi, Anda dapat menghindari "stabilitas drift" yang menempatkan paket inti Anda di jalur yang tidak stabil.
"Pengujian cukup stabil ??" , Anda bertanya. Iya. Agar paket dapat bermigrasi dari tidak stabil ke pengujian, paket tidak boleh memiliki bug terbuka selama 10 hari berturut-turut. Kemungkinannya adalah, terutama untuk paket yang lebih populer, seseorang akan mengirimkan laporan bug untuk versi yang tidak stabil jika ada sesuatu yang salah.
Bahkan jika Anda tidak ingin mencampurkan lingkungan, masih bagus untuk memiliki opsi di sana jika Anda mengalami sesuatu yang memerlukan versi yang lebih baru daripada yang ada di stabil.
Inilah yang saya rekomendasikan untuk pengaturan ini:
Pertama, buat file berikut di
/etc/apt/preferences.d
:stable.pref
:testing.pref
:unstable.pref
:experimental.pref
:(Jangan takut dengan hal-hal yang tidak stabil / eksperimental di sini. Prioritasnya cukup rendah sehingga tidak akan pernah secara otomatis menginstal hal-hal itu. Bahkan cabang pengujian akan berperilaku, karena hanya akan menginstal paket yang Anda inginkan. dalam pengujian.)
Sekarang, membuat set yang cocok untuk
/etc/apt/sources.list.d
:stable.list
: Salin dari sumber asli Anda/etc/apt/sources.list
. Ubah nama file lama menjadi sesuatu sepertisources.list.orig
.testing.list
: Sama sepertistable.list
, kecuali dengantesting
.unstable.list
: Sama sepertistable.list
, kecuali denganunstable
, dan menghapus daftar keamanan.experimental.list
: Sama sepertiunstable.list
, kecuali denganexperimental
.Anda juga dapat menambahkan tanda
oldstable
masuksources.lists.d
danpreferences.d
(gunakan prioritas 1), meskipun moniker ini akan cenderung kedaluwarsa dan menghilang sebelum siklus stabil berikutnya. Dalam kasus seperti itu, Anda dapat menggunakanhttp://archive.debian.org/debian/
dan "hardcode" versi Debian (etch, lenny, dll.).Untuk menginstal versi pengujian suatu paket, cukup gunakan
aptitude install lib-foobar-package/testing
, atau langsung saja ke GUI aptitude dan pilih versi di dalam detail paket (tekan enter pada paket yang Anda cari).Jika Anda mendapat keluhan tentang konflik paket, lihat solusinya terlebih dahulu. Dalam kebanyakan kasus, yang pertama adalah "jangan pasang versi ini". Belajarlah untuk menggunakan per-paket menerima / menolak pilihan resolver. Misalnya, jika Anda menginstal foobar-package / testing, dan solusi pertama adalah "jangan instal foobar-package / testing", maka tandai pilihan itu sebagai ditolak, dan solusi lain tidak akan pernah membelok ke jalur itu lagi. Dalam kasus seperti ini, Anda mungkin harus menginstal beberapa paket pengujian lainnya.
Jika terlalu berbulu (seperti mencoba untuk meng-upgrade libc atau kernel atau sistem inti besar lainnya), maka Anda dapat menolak jalur upgrade tersebut atau hanya mundur dari upgrade awal sama sekali. Ingatlah bahwa itu hanya akan memutakhirkan hal-hal menjadi pengujian / tidak stabil jika Anda mengizinkannya.
EDIT: Memperbaiki beberapa pin prioritas, dan memperbarui daftar.
sumber
apt-get update
setelah Anda membuat file konfigurasi?sudo apt-get update
, saya mendapat kesalahan pembaruan. Kemudian restart, yang memberi sayaXsession error
, restart lagi, dan sekarang saya tidak punya gui. yang/dev/sda1/
sekarang penuh. Bagus.Di
/etc/apt/apt.conf.d
tambahkan file berikut99defaultrelease
:di
/etc/apt/sources.list.d
- tambahkan url untuk menguji / sumber tidak stabilstable.list
:testing.list
:Lari
dan kemudian instal apa yang Anda butuhkan
Berhati-hatilah jika Anda menginstal barang yang memiliki banyak dependensi. Lebih disukai tidak melakukan ini pada produksi.
Anda juga dapat mencoba keberuntungan Anda di backports atau repositori serupa.
sumber
apt_preferences
Tentukan level default yang harus di-upgrade oleh sistem ke dalam file / etc / apt / preferensi:
man apt_preferences
Ada banyak yang bisa Anda lakukan dengan apt_preferences tapi demi kesederhanaan ...
Saya perlu menginstal satu paket (autoMysqlBackup) yang hanya tersedia di Pengujian. Solusinya adalah menambahkan yang berikut ke / etc / apt / preferences:
Dengan beberapa repositori yang ditambahkan ke /etc/apt/sources.list aptitude sekarang hanya akan meningkatkan ke rilis yang Anda tentukan meskipun repos rilis berikutnya terdaftar (dalam hal ini 'stabil').
Jadi untuk menginstal paket itu, yang harus Anda lakukan adalah:
sumber
Untuk apa nilainya, saran umum yang selalu saya lihat adalah "Jangan bergaul stabil dengan apa pun." Sebagian besar tutorial sistem campuran adalah untuk pengujian campuran dan tidak stabil.
Alasannya tampaknya bahwa jika Anda mencampur stabil dengan pengujian, paket yang sangat mendasar (seperti libc6) akan memerlukan pembaruan (untuk menginstal perangkat lunak dari pengujian), dan sekali paket dasar ini beralih ke pengujian, seluruh sistem dapat bergerak seperti itu.
Berikut adalah dua alternatif:
sumber
Dokumentasi debian sangat luas dalam subjek dan saya sangat menyarankan untuk menggali karena itu benar-benar akan mengungkap keindahan sistem debian.
Lihat Bagaimana menjaga sistem campuran , itu akan menjelaskan semua yang perlu Anda ketahui.
sumber
Cara lain, yang dapat mencegah instalasi terlalu banyak ketergantungan dari Testing atau Sid, adalah ini: Anda memberi tahu apt-get untuk mendapatkan sumber paket dari Testing atau Sid dan membuat paket untuk sistem Anda menggunakan alat Debian (tidak perlu mengotak-atik secara manual) dengan sumber).
Mengutip dari sini:
https://wiki.debian.org/DebianUnstable#How_do_I_backport_a_sid_package_to_testing_or_stable.3F
sumber
Saya telah melakukannya untuk waktu yang lama untuk percaya diri dalam mengatakan itu cukup aman dan dapat dibuat nyaman. Dengan setup versi stabil di bawah ini akan diinstal secara default, namun Aptitude juga akan memungkinkan Anda untuk memilih versi backported atau tidak stabil jika diinginkan:
Ada empat hal yang perlu diedit, rilis pinning default perlu diatur, sumber perlu backports dan tidak stabil ditambahkan, menurunkan prioritas pinning backports / paket tidak stabil, dan pengaturan tampilan aptitude perlu dimodifikasi untuk menampilkan pinning.
etc/apt/preferences
pinning file - jika file tidak ada, buatlah.sumber
source.list
dalamnya harus menyebutkan nama kodejessie
alih-alihsqueeze
. Kebijakan Debiantesting
hampir stabil dan paket hampir sama baru dariunstable
repositori. Saya kehabisan ruang di sini jadi silakan lihat di: wiki.debian.org/DebianReleases , wiki.debian.org/StableUpdates , dan wiki.debian.org/StableProposedUpdates ; dua yang terakhir adalah sumber repositori tambahan.Jika pilihan paket Anda lebih terlibat atau instalasi akan diulang pada beberapa mesin, Anda dapat mempertimbangkan untuk menyiapkan repositori pribadi yang mencerminkan subset dari repositori resmi. Ini membutuhkan sedikit usaha untuk mengkonfigurasi repositori tetapi hadiahnya mudah dipertahankan dengan konfigurasi minimal pada setiap klien dan hasil yang dapat diulang ketika melakukan lusinan instalasi. Saya menemukan ini membantu bahkan ketika hanya satu atau dua paket sedang diinstal, dan menggunakan metode ini untuk mengotomatisasi dan memelihara pemasangan cloud. Sebuah server tunggal pada VPS murah dapat menangani puluhan repositori pribadi.
Untuk mengkonfigurasi server repositori pribadi Anda:
Kemudian konfigurasikan server web pilihan Anda untuk menyajikan file repositori statis. Mungkin melindungi repositori dengan sertifikat keamanan dan otentikasi dasar.
Untuk menjaga repositori pribadi Anda secara otomatis dan menarik pembaruan dari hulu, letakkan yang di atas dalam sebuah skrip dan jalankan dari tugas cron.
Untuk mengkonfigurasi mesin klien Anda, pada mesin klien Anda:
Untuk memelihara mesin klien Anda dan menarik semua pembaruan repositori pribadi Anda, di mesin klien Anda:
sumber
Pilihan lain adalah mengunduh paket sumber dari pengujian. APT dapat secara otomatis membuat paket sumber setelah mengunduhnya. Dengan cara ini, paket stabil Anda tidak akan terpengaruh oleh pengujian pembaruan. Satu-satunya trade-off adalah bahwa itu akan memakan waktu lebih dari sekedar mengunduh dan menginstal paket biner.
Untuk mengonfigurasi APT untuk mengunduh paket sumber dari pengujian, cukup tambahkan:
Jika Anda hanya ingin mengikuti pengujian saat ini dan bukan pengujian di masa mendatang, ganti "pengujian" dengan nama kode saat ini (saat penulisan ini adalah "buster")
sumber