데비안 백 포트 커널 자동 설치


8

다음과 같은 고정 설정이 있습니다.

Package: linux-image-amd64
Pin: release a=wheezy-backports
Pin-Priority: 1001

Package: *
Pin: release a=wheezy-backports
Pin-Priority: 499

다음과 같은 오류가 발생합니다.

$ sudo apt-get install linux-image-amd64
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 linux-image-amd64 : Depends: linux-image-3.16.0-0.bpo.4-amd64 but it is not going to   be installed
E: Unable to correct problems, you have held broken packages.

정책이 올바른 것 같습니다 :

$ apt-cache policy linux-image-amd64
linux-image-amd64:
  Installed: 3.2+46
  Candidate: 3.16+63~bpo70+1
  Package pin: 3.16+63~bpo70+1
  Version table:
     3.16+63~bpo70+1 1001
        499 http://ftp.nl.debian.org/debian/ wheezy-backports/main amd64 Packages
 *** 3.2+46 1001
        500 http://ftp.nl.debian.org/debian/ wheezy/main amd64 Packages
        100 /var/lib/dpkg/status

$ apt-cache policy linux-image-3.16.0-0.bpo.4-amd64
linux-image-3.16.0-0.bpo.4-amd64:
  Installed: (none)
  Candidate: 3.16.7-ckt4-3~bpo70+1
  Version table:
     3.16.7-ckt4-3~bpo70+1 0
        499 http://ftp.nl.debian.org/debian/ wheezy-backports/main amd64 Packages

따라서 오류가 발생하지 않습니다. 내가 무엇을 잘못하고 있지?

꼭두각시를 사용하여 모든 Wheezy 시스템을 백 포트 커널로 업그레이드하려고합니다 (재부팅 줄무늬가 계획되어 있음).이를 올바르게 해결하고 싶습니다. 모든 서버에 수동으로 로그인하여 실행할 수 있습니다.

sudo apt-get install -t wheezy-backports linux-image-amd64

어느 것이 효과가 있지만 편리하지는 않습니다.

최신 정보

요청한대로 :

/etc/apt/preferences.d$ cat linux-image 
Package: linux-image-*
Pin: release a=wheezy-backports
Pin-Priority: 1001

Package: *
Pin: release a=wheezy-backports
Pin-Priority: 499

/etc/apt/preferences.d$ sudo apt-get update
Hit http://debian.kumina.nl wheezy-kumina Release.gpg
.
.
.
Reading package lists... Done
/etc/apt/preferences.d$ sudo apt-get install linux-image-amd64
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 linux-image-amd64 : Depends: linux-image-3.16.0-0.bpo.4-amd64 but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
/etc/apt/preferences.d$ aptitude why-not linux-image-3.16.0-0.bpo.4-amd64
Unable to find a reason to remove linux-image-3.16.0-0.bpo.4-amd64.

답변:


3

그 패키지가 의존하는 것과 그 의존성이 필요한 것을 확인하십시오. 예를 들어 내 컴퓨터에서 이것을 봅니다.

#apt-cache  show linux-image-amd64
Package: linux-image-amd64
<snip>
Depends: linux-image-3.16.0-4-amd64

# apt-cache  show linux-image-3.16.0-4-amd64
Package: linux-image-3.16.0-4-amd64
<snip>
Depends: kmod | module-init-tools, linux-base (>= 3~), debconf (>= 0.5) | debconf-2.0, initramfs-tools (>= 0.110~) | linux-initramfs-tool
Pre-Depends: debconf | debconf-2.0

백 포트에서 종속성이 있는지 확인하십시오.


내 질문에 이미 설명되어 있습니다 ...
Tim Stoop

1
귀하의 질문에 의존성 버전을 고정시키는 것에 대해 아무것도 보지 못했습니다. linux-image-3.16.0-0.bpo.4-amd64에 필요한 패키지에 대해 더 높은 우선 순위를 구성해야합니다. 이것을 확인하십시오 : Depends: kmod | module-init-tools, linux-base (>= 3~), debconf (>= 0.5) | debconf-2.0, initramfs-tools (>= 0.110~) | dracut (>= 0.40+1-1~) | linux-initramfs-tool. 당신이 사용하는 경우 dracut, 예를 들어, 위지는 버전이 020-2 0백 포트가있는 반면, 040+1-1 0. 틱의 경우 백 포트에서 가져 오려면 Dracut 패키지의 우선 순위를 높여야합니다.
stimur

'apt-get -t wheezy-backports install linux-image-amd64'를 통해 설치할 때 그것들도 끌어 오지 않았습니까?
팀 스 oop

1
로 시행하면됩니다 -t wheezy-backports. 그러나이 시행은 안정적인 버전이 충분한 지 여부에 관계없이 백 포트에서 설치되지 않은 종속성에 대한 모든 최신 버전도 설치합니다. 백 포트에서 제한되고 제어 된 수의 패키지 만 설치해야하는 경우 종속성을 추적하고 수동으로 고정해야합니다. 당신이 그것에 관심이 없다면, 계속하고 전체를 수행하십시오 -t *backports.
stimur

아 알았어, 네 말이 맞아 백 포트에서 initramfs-tools를 가져와야 자동으로 수행 할 수 있습니다. 감사!
Tim Stoop

5

sudo apt-get install -t wheezy-backports 리눅스 이미지 -amd64

내가 아는 것은 편리하지 않지만 .. 장래에 어려움을 겪지 않고 일을하는 올바른 방법입니다 (물론 IMHO)


앞으로 어떤 문제가 발생하겠습니까?
Tim Stoop

1
- 데비안 일에 한 방향으로의 시스템을 설계 한 경우 나는 그들이 자신의 이유가 "가정") (참조 백 포트 지침 ) - 당신이 패키지의 넓은 수에 더 높은 우선 순위를 부여 전체 소스를 고정 테스트하고 불안정에서 재 컴파일 안정의 couterparts로 테스트하지 - 철학을 사용하여 -t종속성을 설치하도록하는 패키지이다 .. "이렇게 엄격하게 당신이 필요"..이 -리스트 접근 방식은 동안 자사가 : 당신이 할 알고있는 일을 할 때 당신이 필요
drAlberT

2
여기에는 충분한
John Blackberry

1

환경 설정에서 맨 위 줄을 다음으로 변경하십시오.

Package: linux-image-*

운영

apt-get update

다시 설치하십시오. 여전히 오류가 발생하면 확인하십시오

aptitude why-not linux-image-3.16.0-0.bpo.4-amd64

작동하지 않습니다. 내 질문에 명령 출력을 추가했습니다.
팀 스 oop

시도해 주셔서 감사합니다. aptitude리졸버를 대화식으로 사용하여 문제를 식별하는 경향이 있습니다 . 어쩌면 linux-*다른 종속 관계를 포함하는? APT::Default-Release "wheezy-backports";구성에 임시 로 추가 할 수 있습니까?
Cedric Knight

우리는 실제로 모든 서버에서 적성을 제거했습니다. 테스트를하기 위해 설치해야했습니다. 그래서 그것은 가능하지 않습니다. config 옵션을 일시적으로 추가하는 것은 실현 가능하지 않으며 솔직히 좋은 해결책은 아닙니다. :) 이것이 해킹없이 apt-get으로 가능해야한다고 확신합니다.
팀 스 oop
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.