суббота, 4 декабря 2010 г.

Ubuntu удаляем ненужные ядра.

Накопилось у меня целая толпа разных ядер.
$ dpkg -l |grep ii|grep -E 'linux-headers|linux-image'          
ii  linux-headers-2.6.32-21              2.6.32-21.32                                          Header files related to Linux kernel version 2.6.32
ii  linux-headers-2.6.32-21-generic      2.6.32-21.32                                          Linux kernel headers for version 2.6.32 on x86/x86_64
ii  linux-headers-2.6.32-24              2.6.32-24.43                                          Header files related to Linux kernel version 2.6.32
ii  linux-headers-2.6.32-24-generic      2.6.32-24.43                                          Linux kernel headers for version 2.6.32 on x86/x86_64
ii  linux-headers-2.6.32-25              2.6.32-25.45                                          Header files related to Linux kernel version 2.6.32
ii  linux-headers-2.6.32-25-generic      2.6.32-25.45                                          Linux kernel headers for version 2.6.32 on x86/x86_64
ii  linux-headers-2.6.32-26              2.6.32-26.48                                          Header files related to Linux kernel version 2.6.32
ii  linux-headers-2.6.32-26-generic      2.6.32-26.48                                          Linux kernel headers for version 2.6.32 on x86/x86_64
ii  linux-headers-generic                2.6.32.26.28                                          Generic Linux kernel headers
ii  linux-image-2.6.32-21-generic        2.6.32-21.32                                          Linux kernel image for version 2.6.32 on x86/x86_64
ii  linux-image-2.6.32-24-generic        2.6.32-24.43                                          Linux kernel image for version 2.6.32 on x86/x86_64
ii  linux-image-2.6.32-25-generic        2.6.32-25.45                                          Linux kernel image for version 2.6.32 on x86/x86_64
ii  linux-image-2.6.32-26-generic        2.6.32-26.48                                          Linux kernel image for version 2.6.32 on x86/x86_64
ii  linux-image-generic                  2.6.32.26.28                                          Generic Linux kernel image
И решил я их подчистить, тоесть удалить все кроме текущего
$ uname -r                                                                                                                                                     
2.6.32-26-generic
можно конечно руками в synaptic или каждый копипастить, но "мы не ищем простых путей - нам лень"(c) поэтому вот небольшой скрипт, который можно скопировать в командную строку и выполнить, на каждую операцию удаления спросит подтверждения
$ VERSION=$(uname -r|sed -r "s|-[^-]*$||;s|-|.|"); PACKAGES=$(dpkg -l |grep ii|grep -E 'linux-headers|linux-image' |grep -rv "$VERSION" | awk '{print $2}'); for i in  $PACKAGES;do sudo apt-get remove $i;done

Если у кого есть более красивый вариант, предлагайте :), буду рад.

Комментариев нет: