回答:
ピニングを使用すると、maverickから提供されたパッケージを選択し、それらの依存関係を自動的に取得して、パッケージマネージャーを通じて最新の状態に保つことができます。 https://help.ubuntu.com/community/PinningHowto
apt pinningを調査する方がはるかによいでしょう
man apt_preferences
。を参照してください。それでは、Oneiricを使用していて、Preciseからそれらのパッケージを取得したいとします。
男性を読むと、関連セクションをコピー/貼り付けて、リリース名を変更しただけです。
/ etc / apt / preferences
Package: libccid Pin: release n=precise Pin-Priority: 990 Package: libpcsclite* Pin: release n=precise Pin-Priority: 990 Package: libusb* Pin: release n=precise Pin-Priority: 990 Package: opensc Pin: release n=precise Pin-Priority: 990 Package: pcscd Pin: release n=precise Pin-Priority: 990 Explanation: Uninstall or do not install any Ubuntu-originated Explanation: package versions other than those in the oneiric release Package: * Pin: release n=oneiric Pin-Priority: 900 Package: * Pin: release o=Ubuntu Pin-Priority: -10
その後、私は自分のコピー
/etc/apt/sources.list
に/etc/apt/sources.list.d/precise.list
かつ正確にoneiricのすべての出現を置き換えます。その後、実行しapt-get update
、最後にapt-get upgrade
。# apt-get upgrade Reading package lists... Done Building dependency tree Reading state information... Done The following packages will be upgraded: libpcsclite1 libusb-0.1-4 libusb-1.0-0 libusbmuxd1 4 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. Need to get 86.0 kB of archives. After this operation, 88.1 kB disk space will be freed. Do you want to continue [Y/n]? y Do you want to continue [Y/n]? y Get:1 http://us.archive.ubuntu.com/ubuntu/ precise/main libusb-0.1-4 amd64 2:0.1.12-20 [17.6 kB] Get:2 http://us.archive.ubuntu.com/ubuntu/ precise/main libusb-1.0-0 amd64 2:1.0.9~rc3-2 [30.9 kB] Get:3 http://us.archive.ubuntu.com/ubuntu/ precise/main libpcsclite1 amd64 1.7.4-2ubuntu1 [23.5 kB] Get:4 http://us.archive.ubuntu.com/ubuntu/ precise/main libusbmuxd1 amd64 1.0.7-2 [14.1 kB] Fetched 86.0 kB in 0s (124 kB/s)
何らかの理由で、pcscdとopenscがインストールされませんでした。おそらく最初からインストールされていなかったため、アップグレードする必要がなく、大したことはありませんでした。このように、参照として正確にそのバージョンをインストールできます。
$ apt-get install opensc pcscd -t precise
使用に注意してください-t、
packagename/precise
また仕事をします。最新のリリースから必要なパッケージがあり、 それらのパッケージのみが自動的に更新されます。それらが不要になった場合は、からエントリを削除する
/etc/apt/preferences
と、次に実行したapt-get upgrade
ときに削除されます。prefsファイル全体を削除する場合は、そのPrecision.list sourcesファイルも削除してください。システムは最新のパッケージセットに更新しようとします。また、後でdist-upgradeする場合は、prefsファイル全体を削除する必要があります。他のsources.listを削除することをお勧めします。更新するパッケージはありません。Aptの固定はそれほど難しくありません。少し掘り下げて実験するだけです。
n=
etcのすべての動詞は、を調べると見つかりapt-cache policy
ます。これが、熟練した管理者がaptとyumを怒らせ、絶賛する理由です。サービスを簡潔に更新し、クリーンで、確定的で、保守可能な方法で最新に保つことができます。
パッケージのコンパイルも不要です。
この提案を続ける前に、manページ全体を読んで概念に慣れ、apt pinningに関する他のガイドを読むことを強くお勧めします。頑張って楽しんでね!
コマンドラインでapt-get install somepackage = someversionを使用してバージョンを強制できますが、aptが認識しているリポジトリにないバージョンを要求することはできません。これは通常、現在のリリースを意味します。
ランチパッドからmaverick debを手動でダウンロードしてインストールすることができます。これは機能する場合もあれば、さまざまなライブラリの新しいバージョンに依存する場合があるため、インストールされません。もう1つのオプションは、最新のソースをダウンロードして自分でコンパイルすることです。