VineLinuxパフォーマンスアッププロジェクト:0204
■[ユーティリティ/ツール]Synaptic起動時のエラー対策■
Synapticパッケージマネージャにて、パッケージのバージョンを固定すると、突然Synapticパッケージマネージャが終了し、再度起動しようとするとエラーが発生する現象が確認できました。
今回はこのエラーについての対策をご紹介します。
Synapticにてアップグレード可能なパッケージが存在する場合、現在のバージョンをそのまま利用したい場合には、「パッケージ」→「バージョンの固定」を選択することでアップグレード対象外にすることができます。
ところが、この「バージョンの固定」にチェックを入れるとSynapticが突然終了してしまい、再度起動しようすると下記の画面が表示され、パッケージ情報が表示されなくなってしまいます。
画像1:preferencesファイル不正によるSynaptic起動時のエラー画面
これは、/var以下に作成される"preferences"というファイルの中身が、中途半端に記載されているのが原因です。
この状態で/var以下のファイル構成を見てみると、下記のように"preferences"というファイルが作成されていることが分かります。
画像2:/var以下のファイル構成
上記のように、rootユーザ権限で"preferences"を消せば、次回から問題なくSynapticが立ち上がります。
▼【参考】preferencesファイルとは?
preferencesファイルは、インストール済パッケージを特定バージョンのまま保持したい場合に、パッケージごとに決められたルールに従って維持したいバージョン情報等を記載するためのファイルです。
記載ルールは以下の通りです。
Package: emacs ←バージョンを維持したいパッケージ名
Pin: version 23.3 ←維持したいパッケージのバージョン
Pin-Priority: 989 ←維持したいパッケージの方針
上記のPin-Priorityは以下のような意味を持ちます。
値 |
意味 |
マイナス値〜0 |
インストールしない。 |
1〜100 |
指定すればインストールできるが、アップグレードの対象にはならない。 |
101〜500 |
通常のアーカイブよりも優先度が低いが、指定してインストールしたものはアップグレードの対象になる。 |
501〜990 |
「ターゲットリリース」指定のアーカイブよりも優先度が低いが、アップグレードの対象になる。 |
991〜1000 |
現在インストールされているパッケージよりも新しければ「ターゲットリリース」指定に関係なくインストールされる |
1001〜 |
ダウングレードしてでも、そのパッケージをインストールさせる。 |
Synapticでバージョンの固定ができますが、上記のように突然終了してしまうようであれば、直接preferencesファイルを編集することをおすすめします。
●Special Thanks!
・「Debianのwheezy(testing)からsqueeze(stable)へダウングレード(非推奨)」
http://mypace75.blog92.fc2.com/blog-category-43.html