최근 데비안 12를 설치했습니다. Apt는 작동하지만 Linux 이미지가 완전히 구성되지 않았다고 불평합니다. 이미지를 삭제하고 업그레이드를 시도했지만 지금은 apt 또는 dpkg를 사용하여 아무것도 제거하거나 설치할 수 없습니다. 패키지가 "완전히 설치되거나 제거되지 않음" 문제가 있고, 문제를 해결하는 동안 오류가 발생한 후 중단됩니다.
내가 겪은 문제를 요약하면 다음과 같습니다(자세한 내용은 아래 참조).
- apt/dpkg를 제거, 정리, 설치 또는 업그레이드할 수 없습니다.
- dpkg가 삭제된 후 스크립트 하위 프로세스에서 오류를 반환함
- raspi-firmware에서 /boot/firmware가 설치되지 않을 수 있다고 불평합니다.
- 마운트되지 않은 1K EXT4-fs 파티션이 있습니다
- raspi-firmware - 이것이 필요합니까? 파나소닉 터프북 CF-31 실행
- initramfs-tools - raspi-firmware를 제거하면 불평합니다.
저는 커널 6.1.0-9-amd64를 사용하고 있는데 linux-image-6.1.0-10-amd64로 인해 이러한 문제가 발생했습니다. 온라인에서 찾은 정보를 바탕으로 후자 패키지와 관련된 모든 파일을 수동으로 삭제했지만 여전히 오류가 발생했습니다. (dpkg-query -L linux-image-6.1.0-10-amd64는 패키지에 실제로 "어떤 파일도 포함되어 있지 않음"을 확인합니다.)
다음은 패키지를 설치하거나 제거하려고 할 때 apt가 반환한 출력의 예입니다.
Reading package lists...
Building dependency tree...
Reading state information...
Suggested packages:
cmatrix-xfont
The following packages will be REMOVED:
linux-image-6.1.0-10-amd64
The following NEW packages will be installed:
cmatrix
0 upgraded, 1 newly installed, 1 to remove and 0 not upgraded.
1 not fully installed or removed.
Need to get 17.5 kB of archives.
After this operation, 408 MB disk space will be freed.
Do you want to continue? [Y/n]
Get:1 https://deb.debian.org/debian bookworm/main amd64 cmatrix amd64 2.0-3 [17.5 kB]
Fetched 17.5 kB in 1s (12.3 kB/s)
(Reading database ... 252302 files and directories currently installed.)
Removing linux-image-6.1.0-10-amd64 (6.1.37-1) ...
/etc/kernel/postrm.d/initramfs-tools:
update-initramfs: Deleting /boot/initrd.img-6.1.0-10-amd64
/etc/kernel/postrm.d/z50-raspi-firmware:
raspi-firmware: missing /boot/firmware, did you forget to mount it?
run-parts: /etc/kernel/postrm.d/z50-raspi-firmware exited with return code 1
dpkg: error processing package linux-image-6.1.0-10-amd64 (--remove):
installed linux-image-6.1.0-10-amd64 package post-removal script subprocess returned error exit status 1
dpkg: too many errors, stopping
Errors were encountered while processing:
linux-image-6.1.0-10-amd64
Processing was halted because there were too many errors.
E: Sub-process /usr/bin/dpkg returned an error code (1)
표시된 내용에 따르면 /etc/kernel/postinst.d/z50-raspi-firmware의 35행이 표시됩니다. 이는 다음 조건이 참일 때 오류를 발생시킵니다.
! mountpoint -q /boot/firmware
나는 이 맥락에서 -q가 무엇을 의미하는지 잘 모르겠습니다. chroot나 가상 머신에서 dpkg를 실행하고 있지 않습니다. 루트 파티션에 /boot/firmware 디렉토리가 있습니다. 관련이 있는 경우 dmesg 보고서: "수퍼블록을 읽을 수 없음"과 함께 마운트에 실패한 마운트 해제된 1K Ext4-fs 파티션 sda2가 있습니다.
저는 Rasberry Pi를 실행하고 있지 않기 때문에 이 파일들을 삭제하고 apt autoremove를 실행해 보았습니다.
- /etc/initramfs/post-update.d/z50-raspi-firmware
- /etc/kernel/postrm.d/z50-raspi-firmware
그러나 Apu는 이렇게 말했습니다.
Removing linux-image-6.1.0-10-amd64 (6.1.37-1) ...
/etc/kernel/postrm.d/initramfs-tools:
update-initramfs: Deleting /boot/initrd.img-6.1.0-10-amd64
/etc/kernel/postrm.d/z50-raspi-firmware:
/etc/kernel/postrm.d/z50-raspi-firmware: 2: exec: /etc/kernel/postins
t.d/z50-raspi-firmware: not found
run-parts: /etc/kernel/postrm.d/z50-raspi-firmware exited with return
code 127
initramfs-tools가 raspi 펌웨어를 찾을 것으로 예상하도록 지시하는 것 같습니다. dpkg-query -L include /usr/share/initramfs-tools/hooks/raspi-firmware-fsck를 보고 제거해 보았지만 별 차이가 없었습니다.
비슷한 질문을 봤지만 해결책이 충분하지 않았습니다. 저는 스택 교환을 처음 접했고 이 질문을 이 질문에 어떻게 첨부해야 하는지 잘 모르겠습니다. dpkg: 패키지 linux-image-amd64(--configure) 처리 중 오류 발생: 종속성 문제 - 구성되지 않음
답변1
연결된 질문의 솔루션이 작동하려면 postinst.d/z50-raspi-formware를 먼저 복원해야 합니다.
/etc/kernel/postinst.d/z50-raspi-firmware
두 줄로 구성된 를 만듭니다 .
#!/bin/sh
true
실행 가능하게 만드세요:
chmod a=rx /etc/kernel/postinst.d/z50-raspi-firmware
그러면 삭제가 작동합니다.
apt purge raspi-firmware
이 작업을 수행한 후에 는 오류 없이 apt 등을 autoremove
실행할 수 있습니다 .install