Все ядра хранятся, если вы явно не удалили их.
Чтобы выбрать, какое ядро вы хотите использовать, при загрузке удерживайте нажатой клавишу Shift, чтобы увидеть меню Grub, прокрутите вниз с помощью клавиш со стрелками до «Advanced опции для Ubuntu ", и вы увидите меню, в котором вы можете выбрать ядро. Вам нужен один из тех, кто не говорит «(Режим восстановления)».
Для этого есть рецепт на webupd8.org.
sudo apt-get install trash-cli
Это установит команды trash, empty-trash, list-trash и restore-trash, которые вы можете использовать as-is или сделать rm псевдоним trash (см. ниже).
Семантика команды trash немного отличается от стандартной rm - она не требует -r, чтобы иметь возможность удалять каталоги. Если это вас беспокоит, webupd8.org предлагает следующий скрипт, который вы можете поместить в свой PATH и называть его trash-rm:
#!/bin/bash
# command name: trash-rm
shopt -s extglob
recursive=1
declare -a cmd
((i = 0))
for f in "$@"; do
case "$f" in
(-*([fiIv])r*([fiIv])|-*([fiIv])R*([fiIv]))
tmp="${f//[rR]/}"
if [ -n "$tmp" ]; then
#echo "\$tmp == $tmp"
cmd[$i]="$tmp"
((i++))
fi
recursive=0
;;
(--recursive) recursive=0
;;
(*)
if [ $recursive != 0 -a -d "$f" ]; then
echo "skipping directory: $f"
continue
else
cmd[$i]="$f"
((i++))
fi
;;
esac
done
trash "${cmd[@]}"
В Ubuntu 12.04 и более поздней, последняя команда в скрипте должна be trash-put "${cmd[@]}" вместо trash "${cmd[@]}" (поскольку команда изменилась с trash на trash-put).
Затем сделайте исполняемый файл сценария:
chmod +x trash-rm
Как только вы добавьте псевдоним в ваш ~ / .bashrc, который заставит bash вызывать ваш скрипт вместо фактической команды rm:
alias rm="trash-rm"
Как djeikyb правильно указывает, трюк с псевдонимом .bashrc будет работать только для пользователя, чей .bashrc изменен, и только в сеансе терминала bash.
И это должно быть.
libtrash (пакет libtrash в Ubuntu), похоже, делает это, но я никогда не использовал его.