古いサーバーでDebian Squeezeを実行しています。手動でパッチを適用できるように、パッケージのソースをダウンロードしようとしています。ただし、apt-get source
はすべてのパッケージで失敗します。例:
root@xxxx:/home/myhomedir# apt-get source emacs
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Ignore unavailable target release 'stable' of package 'emacs'
E: Unable to find a source package for
同じエラーが、他のすべてのソースパッケージで繰り返されます。ただし、同じ名前のパッケージのインストールは機能します(たとえば、apt-get install emacs
)。これが私のsources.list
の内容です。
# the basic archive
deb ftp://ftp.fi.debian.org/debian/ squeeze-lts main non-free contrib
deb-src ftp://ftp.fi.debian.org/debian/ squeeze-lts main non-free contrib
# the security patches
deb http://security.debian.org/ squeeze/updates main contrib non-free
deb-src http://security.debian.org/ squeeze/updates main contrib non-free
最初はapt-get update
から取得したエラーが原因であると思っていました(以前の質問 apt-get updateがdebian squeezeで "File not found" で失敗します)==)。これは修正されましたそれでもソースをダウンロードできません。
構成のAPT::Default-Release "stable";
行がstable
に固定しているため、deb
またはdeb-src
行のいずれも提供しません(stable
がjessie
)。ディストリビューション全体をアップグレードせずにapt-get source
を使用できるようにするには、行をコメント化するか、stable
をsqueeze-lts
に変更する必要があります。
apt-get source
を実行するためにroot
である必要はありません。標準ユーザーとして実行できます。
また、 garethTheRed が指摘するように、Squeezeはサポートされなくなりました(重要なことに、セキュリティ更新を受信しなくなりました)。それだけでなく、 Squeeze LTS 自体もサポートされなくなったので、実際にはWheezy LTSまたはJessieにすぐに移行する必要があります。
Debian Squeezeは サポート終了 です。
サポートされていないパッケージを引き続き使用するには、apt-get
が別のリポジトリを指すようにする必要があります。
/etc/apt/sources.list
を編集し、前に#
があるすべての行をコメント化して、次の行を追加します。
deb http://archive.debian.org/debian/ squeeze contrib main non-free
これにより、DebianアーカイブサイトからSqueezeの最新リリースバージョンにアクセスできるようになります。