パッケージが更新されないようにするのはなぜですか? Debian、Ubuntu、または Linux Mint リポジトリで利用可能なバージョンよりも古いパッケージをインストールしている場合、または更新が問題を引き起こしていることがわかっていて、すべてのパッケージから 1 つ (または 2 つ、3 つ...) の更新を差し引いたものを必要としているとします。 /P>
ここに例があります。 Chromium ブラウザも使用しています。Ubuntu 18.10 の Saiarcot895-dev PPA からのハードウェア アクセラレーション パッチ。ハードウェア アクセラレーションが Nvidia ドライバーで動作するには、パッチを適用した vdpau-va-driver パッケージが必要です。これは、最新の Ubuntu 18.10 用のこの PPA ではまだ利用できません。幸いなことに、Ubuntu 18.04 パッケージは Ubuntu 18.10 にインストールできますが、「apt upgrade」または Software Updater を使用してアップグレードするたびにそのパッケージが更新されますが、これは望ましくありません。したがって、この場合、このパッケージをアップグレードから遠ざけて、他のすべてのパッケージを更新しても心配する必要はありません。
保持しているパッケージが、アップグレード可能な別のパッケージへの依存関係として使用されている場合、将来のアップグレードからパッケージを防止すると、状況によっては問題が発生する可能性があることに注意してください。そのため、あまり多くのパッケージ、特にライブラリをアップグレードしないようにしてください。
同シリーズより:Debian、Ubuntu、または Linux Mint でコマンドラインから利用可能なパッケージを見つける方法 [APT]
Debian、Ubuntu、Linux Mint でパッケージが更新されないようにする 3 つの方法を次に示します。
1. GUI を使用してパッケージの更新を防止する:Synaptic Package Manager
apt 用のグラフィカルな Gtk パッケージ管理プログラムである Synaptic Package Manager は、パッケージをロックして更新できないようにすることができます。
Synaptic を使用してパッケージをロックしても、コマンド ラインから apt upgrade
を実行してパッケージを更新できなくなるわけではないことに注意してください。 または apt-get upgrade
Synaptic でロックされているパッケージを更新します。 Synaptic でパッケージをロックすると、Ubuntu のソフトウェア アップデーター アプリや、場合によっては他のグラフィカル パッケージ マネージャーを使用したパッケージのアップグレードが防止されます。ただし、Linux Mint Update Manager アプリケーションを使用してパッケージを更新することはできます。 したがって、apt-mark
を使用することをお勧めします または dpkg
(以下を参照) パッケージが更新されないようにします。
次のコマンドで Synaptic Package Manager をインストールできます:
sudo apt install synaptic
パッケージが Synaptic で更新されないようにするには、パッケージを見つけて選択し、Synaptic メニュー Package -> Lock Version
をクリックします。 :
同じ方法でパッケージのロックを解除することもできます。
Synaptic でブロックされたすべてのパケットを表示するには、Status
をクリックします。 左下、Pinned
をクリック Status
以上 セクション:
2. apt-mark
でパッケージが更新されないようにする
パッケージが apt-mark で更新されないようにすると、Ubuntu のソフトウェア アップデーターやコマンド ライン アップグレード (apt upgrade
) を使用してパッケージが更新されなくなります。 / apt-get upgrade
).
apt-mark
を使用すると、将来のアップグレード (および自動削除) のためにパッケージを使用できます このコマンドで:
sudo apt-mark hold PACKAGE
PACKAGE
に置き換えます 更新しないようにしたいパッケージと一緒に。
hold
としてマークされているパッケージを確認できます (更新されないように):
apt-mark showhold
保留を解除するには (パッケージを更新できるようにするには)、次を使用します:
sudo apt-mark unhold PACKAGE
両方の hold
と unhold
apt
でソフトウェアをインストールするのと同じように、複数のパッケージを指定できます (パッケージはスペースで区切ります)。
3. dpkg
でパッケージの更新を防ぐ
少し前に、apt-mark-hold ステータスを無視するグラフィカル パッケージ マネージャーがいくつかありました。まだそうなのかどうかはわかりませんが、安全のために (古い Debian / Ubuntu / Linux Mint バージョンを使用している場合に備えて)、Ubuntu、Linux Mint、または Debian でパッケージの更新を取得する別の方法があります。ここで防止:dpkg.
パッケージが dpkg で更新されないようにするには、次を使用します:
echo "PACKAGE hold" | sudo dpkg --set-selections
PACKAGE
に置き換えます 更新しないようにしたいパッケージと一緒に。
次のコマンドですべてのパケット保留を表示できます:
dpkg --get-selections | grep hold
ロックを解除 (パッケージのアップグレードを許可) するには:
echo "PACKAGE install" | sudo dpkg --set-selections
apt-mark
ではありません 、このソリューションでは複数のパッケージを同時に指定することはできません。