패키지를 업그레이드할 때 마법 같은 일이 일어날 -t
수 --default-release
있습니다.
➜ ~ sudo apt-get install -t unstable libpam-gnome-keyring
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be upgraded:
libpam-gnome-keyring
1 upgraded, 0 newly installed, 0 to remove and 376 not upgraded.
Need to get 284 kB of archives.
After this operation, 22.5 kB disk space will be freed.
(Reading database ... 268717 files and directories currently installed.)
Preparing to unpack .../libpam-gnome-keyring_3.12.0-2_i386.deb ...
Unpacking libpam-gnome-keyring (3.12.0-2) over (3.8.2-2+b1) ...
Setting up libpam-gnome-keyring (3.12.0-2) ...
하지만 이를 사용하여 다운그레이드하려고 하면 전혀 작동하지 않습니다.
➜ ~ sudo apt-get install -t testing libpam-gnome-keyring
Reading package lists... Done
Building dependency tree
Reading state information... Done
libpam-gnome-keyring is already the newest version. ## Why???
libpam-gnome-keyring set to manually installed.
0 upgraded, 0 newly installed, 0 to remove and 25 not upgraded.
유일한 방법은 다음 package/target_release
방법을 사용하는 것입니다.
➜ ~ sudo apt-get install libpam-gnome-keyring/testing
Reading package lists... Done
Building dependency tree
Reading state information... Done
Selected version '3.8.2-2+b1' (Debian:testing [i386]) for 'libpam-gnome-keyring'
The following packages will be DOWNGRADED:
libpam-gnome-keyring
0 upgraded, 0 newly installed, 1 downgraded, 0 to remove and 0 not upgraded.
Need to get 272 kB of archives.
After this operation, 22.5 kB of additional disk space will be used.
Do you want to continue? [Y/n] y
dpkg: warning: downgrading libpam-gnome-keyring from 3.12.0-2 to 3.8.2-2+b1
(Reading database ... 268716 files and directories currently installed.)
Preparing to unpack .../libpam-gnome-keyring_3.8.2-2+b1_i386.deb ...
Unpacking libpam-gnome-keyring (3.8.2-2+b1) over (3.12.0-2) ...
Setting up libpam-gnome-keyring (3.8.2-2+b1) ...
-t
패키지를 다운그레이드 하지 않는 이유는 무엇입니까 ?
답변1
이 -t
옵션은 단순히 apt의 고정 기본 설정을 제거하고 선택한 버전을 다음과 같은 우선순위 990으로 설정합니다.
Package: *
Pin: release a=testing # for testing
Pin-Priority: 900
이 우선순위는 패키지 다운그레이드를 강제할 만큼 높지 않습니다. 패키지를 강제로 다운그레이드하려면 다운그레이드하려는 버전에 대해 우선 순위를 1000 이상으로 설정하거나, 제거하려는 버전에서 패키지에 대해 -1 이하의 우선 순위를 설정해야 합니다.
package/release
완전히 다른 일을 해보세요. 패키지가 여러 개인 경우 패키지 아카이브에서 최신 버전을 선택하고 해당 패키지만 설치합니다. 다음과 동일:
apt-get download package=version
dpkg -i --force-downgrade package.deb
요약하면 -t
둘 다 package/release
서로 다른 절차를 따르며 apt에서 패키지를 다운그레이드할 수 있는 유일한 명령은 명시적인 버전 선택기 package=version
및 입니다 package/release
.