Предположим, вам достался старый сервер, у которого на корневом разделе доступного места всего 500 мб и 300 из них заняты. Нужно обновить ОС или пересобрать ядро? Ниже покажу как и где можно сэкономить место.
1. удаляем symbols
Если вам не нужен debug, можно смело удалять *.symbols из папки /boot/kernel/.
2. удаляем не используемые модули
Если и этого не достаточно, то можно переместить не используемые модули в другое место. А узнать какие модули не используются, можно через kldstat:
# kldstat Id Refs Address Size Name 1 28 0xffffffff80200000 17bcab8 kernel 2 1 0xffffffff81a11000 1ee143 zfs.ko 3 1 0xffffffff81c00000 3330 opensolaris.ko 4 1 0xffffffff81c04000 33520 pf.ko 5 1 0xffffffff81c38000 382f ng_socket.ko 6 2 0xffffffff81c3c000 ba02 netgraph.ko 7 1 0xffffffff81c48000 2b99 ng_mppc.ko 8 1 0xffffffff81c4b000 80c rc4.ko 9 1 0xffffffff81c4c000 81bd ipmi.ko 10 1 0xffffffff81c55000 ba8 smbus.ko
Теперь смело перемещаем все модули, кроме тех, которые перечислены в столбце Name.
3. Сжатие
Можно сжать ядро:
# gzip -9 kernel
4. удаление отладочных символов из модулей и ядра:
# for i in `ls /boot/kernel/*.ko` ; do strip $i;done
# strip --remove-section=.note --remove-section=.comment /boot/kernel/kernel