netatalk のバージョン固定

前回に引き続きまだnetatalkの話ですが。
このままだと、「apt-get upgrade」をしてしまうとせっかく修正したnetatalkを標準のもので上書きされてしまいます。
それでは困るのでnetatalkをバージョンアップの対象から外してみましょう。
今回は「/etc/apt/preferences」に設定を追記します。
例によってsuでroot権限を利用します。

<code>
$ su
# vi /etc/apt/preferences
</code>

これで「/etc/apt/preferences」を開くあるいは新規作成します。
具体的には

<code>
Package: netatalk
Pin: version 2.0.3-3
Pin-Priority: 900
</code>

のように追記することによって実現できます。
簡単に説明をするとこれはパッケージ「netatalk」をバージョン「2.0.3-3」に優先度「900」で固定(Pin)するということです。
バージョンは前々回インストールしたときに確認したバージョンより古い物にしておきます。
なぜかというと現行と同じバージョン(前々回の記事に合わせると2.0.3-4)にしても試してみるとうまくいかなかったためです。
優先度については下記の参考にさせていただいたページに詳しく書かれていますが今回900にした理由だけを引用させていただくと

101 以上の値は、そのパッケージがインストールされるべきであることを示しています。よくあるのは、あるパッケージのインストール済バージョンがより進んだバージョンにのみアップグレードされる場合です。100 以上 1000 以下のあらゆる値は、この典型的な動作をすることを示しています。このような値を持つパッケージは、利用可能であっても古いバージョンにはダウングレードされません。

ということです。

とりあえずこのように設定して変更を保存します。
最後に本当に上書きされないのか確認をしてみます。
apt-getの[-s]オプションを使用してテストをします。このオプションはシミュレーションのみを行い実際には何もしないようにするものです。

<code>
# apt-get update
# apt-get -s upgrade
</code>

を実行して。
「以下のパッケージはアップグレードされます:netatalk」
と出なければ成功です。
次から安心して「apt-get upgrade」ができます。

今回参考にさせていただいたページ

http://www.debian.org/doc/manuals/apt-howto/ch-apt-get.ja.html#s-update
http://debian.fam.cx/?AptGet#content_1_23

コメントを残す

メールアドレスが公開されることはありません。

question razz sad evil exclaim smile redface biggrin surprised eek confused cool lol mad twisted rolleyes wink idea arrow neutral cry mrgreen

*