การล้างเมล็ดเก่าไม่สามารถลบไฟล์ initrd เก่าได้


14

ไม่สามารถอธิบายได้ว่าทำไม ... ฉันคิดว่ามันไม่ปลอดภัยที่จะลบมันด้วยตนเองง่ายๆดังนั้นคำแนะนำบางอย่างก็จะถูกชื่นชม นี่คือ ls ของไดเร็กตอรี่ / boot ของฉัน (เห็นได้ชัดว่าฉันรันเคอร์เนล 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

ประณาม - ขอโทษสำหรับการจัดรูปแบบ ...
คริสก็อตต์

คุณสามารถแก้ไขโพสต์และจัดรูปแบบได้ตลอดเวลาโดยการเน้นข้อความและคลิกที่ไอคอนด้านบนกล่องข้อความ หรือรอให้คนอื่นทำเพื่อคุณ
user68186

ฉันไม่เคยมีไฟล์ * .old-dkms มาก่อน คุณทำอะไรกับพวกเขา
jarno

@jarno พวกเขาสร้างโดยDKMS (ระบบจัดการเคอร์เนลแบบไดนามิก) ของ Dell สำหรับโมดูลที่ไม่รวมอยู่ในเคอร์เนล mainline ตัวอย่างnvidiaและbbsswitchแหล่งที่มาเมื่อรวบรวมอาจแทนที่/boot/initrd.imgเพื่อทำสำเนาสำรองซึ่งสามารถเรียกคืนได้หากdkmsใช้ในการถอนการติดตั้งการเปลี่ยนแปลง ผมทำงานในวันนี้เพื่ออัปเดตของฉันrm-kernelsสคริปต์ทุบตี.old-dkmsเพื่อที่จะลบล้าสมัย
WinEunuuchs2Unix

@jarno ตามคำตอบของฉันด้านล่างแก้ไขสคริปต์ทุบตีไม่จำเป็นอีกต่อไป ผู้คนต้องการเพียงกระบวนการแมนนวลครั้งเดียวเพื่อลบ/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

ขอบคุณสำหรับลิงก์ข้อผิดพลาด เมื่อตรวจสอบแล้วฉันพบว่าการแก้ไขถูกสร้างขึ้นในเดือนเมษายน 2560 มันช่วยให้ฉันแก้ไขสคริปต์ทุบตีตามที่ฉันตอบด้านล่าง
WinEunuuchs2Unix

ใช่ ที่จริงฉันเพิ่งสังเกตเห็นเมื่อเช้านี้ว่าไฟล์ old-dkms เหล่านั้นถูกลบสำเร็จแล้ว บังเอิญดีนะ
Nicomachus

@ WinEunuuchs2Unix โอ้ดูเหมือนว่าการแก้ไขของฉันได้เปิดตัว Ubuntu บางรุ่นแล้ว ตามลำดับรายงานข้อผิดพลาด Launchpad เป็นที่นี่ คุณกำลังใช้ dkms เวอร์ชันใดอยู่
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-kernelsสคริปต์ทุบตีsudo apt purge *<kernel_version>*ลบสำรองข้อมูลเก่าเหล่านี้ถ้าเคอร์เนลได้ถูกลบออกด้วย อย่างไรก็ตามในขณะทำการค้นคว้ารายงานข้อผิดพลาดฉันพบว่าสิ่งนี้ได้รับการแก้ไขต้นน้ำในเดือนเมษายน 2017

หากคุณไม่สนใจที่จะใช้แอพ GUI เป็นรูทคุณสามารถใช้pkexec nautilusเพื่อค้นหาสำเนาสำรองที่ล้าสมัยเพื่อลบ:

บูต initrd.img.old-DKMS

ในระบบของฉัน Nautilus เผยรุ่นเคอร์เนล4.4.8, 4.9.21และ4.10.10มีการติดตั้งและสามารถใช้ประโยชน์จาก.old-dkmsการสำรองข้อมูล สำเนาที่ไฮไลต์เป็นการสำรองข้อมูลที่ล้าสมัยซึ่งฉันลบไปแล้ว

หมายเหตุ: pkexecต้องมีการตั้งค่าชุดนโยบาย มันถูกออกแบบมาเพื่อแทนที่gksuและgksudoที่คุณจะเห็นอ้างอิงหลายครั้งในการโพสต์ประวัติศาสตร์

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.