오래된 커널을 제거하면 오래된 initrd 파일이 제거되지 않습니다


14

이유를 설명 할 수 없습니다 ... 단순히 수동으로 삭제하는 것이 안전하지 않다고 가정하므로 지침을 주시면 감사하겠습니다. 내 / boot 디렉토리의 ls는 다음과 같습니다 (분명히 3.13.0-51 커널을 실행하고 있습니다).

-rw-r--r-- 1 root root  1164671 Apr 15 09:03 abi-3.13.0-51-generic
-rw-r--r-- 1 root root   165762 Apr 15 09:03 config-3.13.0-51-generic
drwxr-xr-x 5 root root     1024 Apr 30 14:33 grub
-rw-r--r-- 1 root root 22431280 Nov 26 14:16 initrd.img-3.13.0-36-generic.old-dkms
-rw-r--r-- 1 root root 22427261 Nov 26 14:16 initrd.img-3.13.0-37-generic.old-dkms
-rw-r--r-- 1 root root  9098067 Nov 26 18:00 initrd.img-3.13.0-39-generic.old-dkms
-rw-r--r-- 1 root root  9109727 Feb  5 15:22 initrd.img-3.13.0-40-generic.old-dkms
-rw-r--r-- 1 root root  9110419 Jan 18 02:29 initrd.img-3.13.0-43-generic.old-dkms
-rw-r--r-- 1 root root  9109659 Apr  5 23:11 initrd.img-3.13.0-44-generic.old-dkms
-rw-r--r-- 1 root root  9109097 Apr  5 23:01 initrd.img-3.13.0-46-generic.old-dkms
-rw-r--r-- 1 root root  5814104 Apr 30 14:13 initrd.img-3.13.0-48-generic
-rw-r--r-- 1 root root 22483793 Apr 30 13:52 initrd.img-3.13.0-48-generic.old-dkms
-rw-r--r-- 1 root root  9124331 Apr 30 14:28 initrd.img-3.13.0-49-generic.old-dkms
-rw-r--r-- 1 root root 22496134 Apr 30 13:59 initrd.img-3.13.0-51-generic
-rw-r--r-- 1 root root  4112384 Apr 30 12:16 initrd.img-3.13.0-51-generic.old-dkms
drwx------ 2 root root    12288 Aug  4  2014 lost+found
-rw-r--r-- 1 root root   176500 Mar 12  2014 memtest86+.bin
-rw-r--r-- 1 root root   178176 Mar 12  2014 memtest86+.elf
-rw-r--r-- 1 root root   178680 Mar 12  2014 memtest86+_multiboot.bin
-rw------- 1 root root  3389875 Apr 15 09:03 System.map-3.13.0-51-generic
-rw------- 1 root root  5818368 Apr 15 09:03 vmlinuz-3.13.0-51-generic

젠장-형식에 대해 죄송합니다 ...
Christopher Scott

텍스트를 강조 표시하고 텍스트 상자 위의 아이콘을 클릭하여 게시물을 편집하고 형식을 지정할 수 있습니다. 또는 다른 사람이 당신을 위해 그것을 할 때까지 기다리십시오.
user68186

* .old-dkms 파일이 없었습니다. 그것들을 갖기 위해 무엇을 했습니까?
jarno

@jarno 메인 라인 커널에 포함되지 않은 모듈을 위해 Dell의 DKMS (Dynamic Kernel Management System)에서 생성합니다. 예를 들어 nvidiabbsswitch소스 대체 할 수 컴파일 /boot/initrd.img그렇다면 복원 할 수있는 백업 복사본을 만들어 dkms변경 내용을 제거하는 데 사용됩니다. 오늘 rm-kernelsbash 스크립트 를 업데이트 하여 사용하지 않는 파일을 삭제하려고합니다 .old-dkms.
WinEunuuchs2Unix

@jarno 아래 답변에 따라 bash 스크립트를 더 이상 수정할 필요가 없습니다. /boot/*.old-dkms제거 된 커널에 속하는 한 번의 수동 프로세스 만 삭제 하면됩니다.
WinEunuuchs2Unix

답변:


10

수동으로 제거하는 것이 안전합니다. 또한 https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=717584에 신고 된 버그 보고서가있는 것 같습니다.

3.13.0-54 커널과 3.13.0-55 커널에서 동일한 상황을보고 할 수 있습니다.

-rw-r--r-- 1 root root 1.2M Jun 17 20:03 abi-3.13.0-55-generic
-rw-r--r-- 1 root root 1.2M Jun 19 05:04 abi-3.13.0-57-generic
-rw-r--r-- 1 root root 162K Jun 17 20:03 config-3.13.0-55-generic
-rw-r--r-- 1 root root 162K Jun 19 05:04 config-3.13.0-57-generic
drwxr-xr-x 5 root root  12K Jul 11 15:54 grub
-rw-r--r-- 1 root root  11M Jul  7 21:37 initrd.img-3.13.0-54-generic.old-dkms
-rw-r--r-- 1 root root  27M Jul  4 13:37 initrd.img-3.13.0-55-generic
-rw-r--r-- 1 root root  27M Jul  4 13:37 initrd.img-3.13.0-55-generic.old-dkms
-rw-r--r-- 1 root root  27M Jul  6 18:28 initrd.img-3.13.0-57-generic
-rw-r--r-- 1 root root 173K Mar 12  2014 memtest86+.bin
-rw-r--r-- 1 root root 174K Mar 12  2014 memtest86+.elf
-rw-r--r-- 1 root root 175K Mar 12  2014 memtest86+_multiboot.bin
-rw------- 1 root root 3.3M Jun 17 20:03 System.map-3.13.0-55-generic
-rw------- 1 root root 3.3M Jun 19 05:04 System.map-3.13.0-57-generic
-rw------- 1 root root 5.6M Jun 17 20:03 vmlinuz-3.13.0-55-generic
-rw------- 1 root root 5.6M Jun 19 05:04 vmlinuz-3.13.0-57-generic

버그 링크 주셔서 감사합니다. 그것을 검토 한 결과 2017 년 4 월에 수정 프로그램이 업스트림에 있음을 발견했습니다. 아래 답변에서 bash 스크립트를 수정했습니다.
WinEunuuchs2Unix

예! 나는 실제로 오늘 아침에 그 오래된 dkm 파일이 성공적으로 제거되고 있음을 알았습니다. 우연의 일치입니다.
Nicomachus

@ WinEunuuchs2Unix 아, 내 수정으로 일부 우분투 릴리스가 된 것 같습니다. 각각의 런치 패드 버그 보고서는 여기에 있습니다 . 사용중인 dkm 버전은 무엇입니까?
jarno

@jarno 현재 실행 2.2.0.3중이지만 더 이상 사용되지 않는 initrd.img*.old-dkms파일이 남아 있을 때 어떤 버전이 실행되고 있는지 전혀 모릅니다 .
WinEunuuchs2Unix

@ WinEunuuchs2Unix dkms 2.2.0.3-1.1ubuntu5.14.04.9 (Ubuntu 14.04)에는 수정 사항이없는 것 같습니다. 16.10에서도 버전 2.2.0.3을 사용합니다. 따라서 시스템에서 .old-dkms 파일을 삭제 한 것이 무엇인지 알 수 없습니다.
jarno

3

rm /boot/*.old-dkms루트 권한으로 명령 을 실행할 수 있습니다 . 그러나 설치 한 이전 커널에는 제거 된 * .old-dkms 파일이 필요하지 않은지 확인하십시오. 을 실행하여 현재 설치된 커널 목록을 볼 수 있습니다 dpkg-query -l "linux-image-[0-9]*" | grep -e "^ii".


0

커널을 제거했다면이 오래된 백업을 삭제하기 위해 rm-kernelsbash 스크립트 를 수정할 계획이었습니다 sudo apt purge *<kernel_version>*. 그러나 버그 보고서를 조사하는 동안 이것이 업스트림 에서 수정 된 것으로 나타났습니다. 2017 년 4 월에 에서 .

GUI 응용 프로그램을 루트로 실행하는 것이 마음에 들지 않으면 pkexec nautilus삭제할 오래된 백업을 찾는 데 사용할 수도 있습니다 .

boot-initrd.img.old-dkms

내 시스템에서 노틸러스 커널 버전을 보여 4.4.8, 4.9.21그리고 4.10.10설치 및 이용할 수있는 .old-dkms백업. 강조 표시된 사본은 내가 삭제 한 오래된 백업입니다.

참고 : pkexec 정책 키트 설정이 필요합니다. 대체하기 위해 설계 gksu하고 gksudo당신은 역사의 게시물에 여러 번 참조 참조 것이다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.