У меня установлены эти версии ядра, которые с помощью задания перезагрузки cron были «тронуты» последней датой доступа:
/boot$ ll vmlinuz*
-rw------- 1 root root 5836336 Jan 8 20:00 vmlinuz-3.13.0-92-generic
-rw------- 1 root root 5017584 Oct 18 13:28 vmlinuz-3.2.0-113-generic
-rw------- 1 root root 7069136 Jan 25 16:58 vmlinuz-4.4.0-59-generic
-rw------- 1 root root 7070992 Feb 8 19:38 vmlinuz-4.4.0-62-generic
-rw------- 1 root root 7087088 Feb 21 04:26 vmlinuz-4.4.0-63-generic
-rw------- 1 root root 7087152 Feb 20 06:40 vmlinuz-4.4.0-64-generic
-rw------- 1 root root 7087024 Mar 3 11:25 vmlinuz-4.4.0-66-generic
-rw------- 1 root root 6988624 Nov 19 21:01 vmlinuz-4.4.33-040433-generic
-rw------- 1 root root 7046080 Jun 24 2016 vmlinuz-4.6.3-040603-generic
-rw------- 1 root root 3974752 Aug 16 2016 vmlinuz-4.7.1-040701-generic
-rw------- 1 root root 4134688 Aug 20 2016 vmlinuz-4.7.2-040702-generic
-rw------- 1 root root 4134688 Sep 7 2016 vmlinuz-4.7.3-040703-generic
-rw------- 1 root root 4138784 Jan 8 20:17 vmlinuz-4.7.5-040705-generic
-rw------- 1 root root 7431968 Nov 28 08:03 vmlinuz-4.8.10-040810-generic
-rw------- 1 root root 4994848 Oct 7 08:50 vmlinuz-4.8.1-040801-generic
-rw------- 1 root root 7415584 Jan 8 19:58 vmlinuz-4.8.11-040811-generic
-rw------- 1 root root 7431968 Jan 8 19:57 vmlinuz-4.8.12-040812-generic
-rw------- 1 root root 7427872 Oct 22 05:46 vmlinuz-4.8.4-040804-generic
-rw------- 1 root root 7427872 Nov 19 11:24 vmlinuz-4.8.5-040805-generic
-rw------- 1 root root 7485216 Jan 2 15:12 vmlinuz-4.9.0-040900-generic
-rw------- 1 root root 7419680 Feb 24 04:26 vmlinuz-4.9.10-040910-generic
-rw------- 1 root root 7485216 Jan 10 04:15 vmlinuz-4.9.1-040901-generic
-rw------- 1 root root 7419680 Mar 5 17:40 vmlinuz-4.9.12-040912-generic
-rw------- 1 root root 7419680 Mar 8 04:16 vmlinuz-4.9.13-040913-generic
-rw------- 1 root root 7403296 Jan 25 18:21 vmlinuz-4.9.4-040904-generic
-rw------- 1 root root 7403296 Feb 2 17:14 vmlinuz-4.9.5-040905-generic
-rw------- 1 root root 7419680 Feb 12 00:43 vmlinuz-4.9.8-040908-generic
-rw------- 1 root root 7415584 Feb 12 10:58 vmlinuz-4.9.9-040909-generic
Для данного ядра я хотел бы добавить размер файла в покажите, сколько места можно сохранить, удалив это ядро. Например, 4.7.1 - это древняя история в компьютерных терминах и в конце жизни (EOL):
/boot$ ll *4.7.1*
-rw-r--r-- 1 root root 1238700 Aug 16 2016 abi-4.7.1-040701-generic
-rw-r--r-- 1 root root 181872 Aug 16 2016 config-4.7.1-040701-generic
-rw-r--r-- 1 root root 41705644 Feb 9 16:50 initrd.img-4.7.1-040701-generic
-rw------- 1 root root 3141159 Aug 16 2016 System.map-4.7.1-040701-generic
-rw------- 1 root root 3974752 Aug 16 2016 vmlinuz-4.7.1-040701-generic
Что было бы лучшим способом создания списка / массива:
Kernel Version w.x.y-zzzz - Last Access - Size
Kernel Version w.x.y-zzzz - Last Access - Size
. . . . . . .
Kernel Version w.x.y-zzzz - Last Access - Size
План состоит в том, чтобы представить этот список, используя 4.7.1 с возможностью удаления определенных записей из раздела для экономии места. Я устанавливаю новые ядра один или два раза в неделю (они больше не появляются каждое воскресенье, как раньше), поэтому мой раздел размером 30 ГБ требует обрезки каждые два или три месяца.
Вот версия Rube Goldberg, если вы ищете что-то, что нужно проанализировать в скрипте ...
ls -l|grep "4.8" |awk '{print $5}'|paste -s -d+ |bc
Это то, для чего предназначена команда du. Просто сделайте du -s *4.7.1*, и он даст вам размер (это цикл для каждой установленной версии ядра). Вы также можете использовать флаги, такие как -h или -k, чтобы изменить формат вывода. Для всех возможностей см. [F5].