Em /boot temos os seguintes arquivos ( red-hat Linux versão 6.6 )
cd /boot
# ls -ltr
drwx------ 2 root root 12288 Oct 15 2015 lost+found
-rwxr-xr-x 1 root root 4152624 Oct 15 2015 vmlinuz-2.6.32-504.30.3.el6.x86_64
-rw------- 1 root root 6084011 Oct 15 2015 initrd-2.6.32- 504.30.3.el6.x86_64kdump.img
drwxr-xr-x 3 root root 1024 Oct 15 2015 efi
-rw-r--r-- 1 root root 106371 Oct 15 2015 config-2.6.32-504.30.3.el6.x86_64
-rw-r--r-- 1 root root 2546171 Oct 15 2015 System.map-2.6.32-504.30.3.el6.x86_64
-rw-r--r-- 1 root root 200246 Oct 15 2015 symvers-2.6.32-504.30.3.el6.x86_64.gz
-rw------- 1 root root 19360700 Oct 15 2015 initramfs-2.6.32-504.30.3.el6.x86_64.img
-rwxr-xr-x 1 root root 4222736 Nov 23 2015 vmlinuz-2.6.32-573.12.1.el6.x86_64
-rw-r--r-- 1 root root 107139 Nov 23 2015 config-2.6.32-573.12.1.el6.x86_64
-rw-r--r-- 1 root root 2585672 Nov 23 2015 System.map-2.6.32-573.12.1.el6.x86_64
-rw-r--r-- 1 root root 206008 Nov 23 2015 symvers-2.6.32-573.12.1.el6.x86_64.gz
-rw------- 1 root root 24340354 Jul 16 03:20 initramfs-2.6.32-573.12.1.el6.x86_64.img
drwxr-xr-x 2 root root 1024 Jul 16 03:20 grub
Porque o tamanho /boot é muito pequeno, ( tamanho 90M )
Queremos excluir o kernel anterior de /boot incluir TODOS os outros arquivos relacionados a este kernel
A versão atual do kernel em execução
# uname -r
2.6.32-573.12.1.el6.x86_64
Portanto, agora quero capturar todos os arquivos que não estão relacionados ao kernel atual e podem ser excluídos do /boot
egrep -v fará o trabalho
# ls -ltr | egrep -v "2.6.32-573.12.1|lost\+found|grub|efi"
-rwxr-xr-x 1 root root 4152624 Oct 15 2015 vmlinuz-2.6.32-504.30.3.el6.x86_64
-rw------- 1 root root 6084011 Oct 15 2015 initrd-2.6.32-504.30.3.el6.x86_64kdump.img
-rw-r--r-- 1 root root 106371 Oct 15 2015 config-2.6.32-504.30.3.el6.x86_64
-rw-r--r-- 1 root root 2546171 Oct 15 2015 System.map-2.6.32-504.30.3.el6.x86_64
-rw-r--r-- 1 root root 200246 Oct 15 2015 symvers-2.6.32-504.30.3.el6.x86_64.gz
-rw------- 1 root root 19360700 Oct 15 2015 initramfs-2.6.32-504.30.3.el6.x86_64.img
# rpm -qa | grep "2.6.32-504.30.3"
kernel-2.6.32-504.30.3.el6.x86_64
então meu plano é realizar o seguinte
Remova o kernel anterior
rpm –e kernel-2.6.32-504.30.3.el6.x86_64
Remova os seguintes arquivos de /boot
rm config-2.6.32-504.30.3.el6.x86_64 rm System.map-2.6.32-504.30.3.el6.x86_64 rm symvers-2.6.32-504.30.3.el6.x86_64.gz rm initramfs-2.6.32-504.30.3.el6.x86_64.img
Minha pergunta:
Meu plano é arriscado? , ou posso ter certeza de que meu procedimento é seguro ?
A resposta anterior deve funcionar, mas pensei em mencionar 'Yum-utils' pode tornar isso mais simples
rpm -q kernel
yum install yum-utils
package-cleanup --oldkernels --count=2
Acho que seu plano é muito complicado.
Os arquivos que você está sugerindo remover na etapa 2 provavelmente pertencem ao pacote de kernel relevante de qualquer maneira. Na minha máquina RHEL 6 de teste:
$ rpm -qf /boot/initramfs-2.6.32-573.18.1.el6.x86_64.img kernel-2.6.32-573.18.1.el6.x86_64
etc.
Portanto, a etapa 1 deve remover tudo. Quanto ao que remover,
rpm -qa kernel\*
listará todos os pacotes do kernel instalados. Simplesmente grep o que não correspondeuname -r
. Tome cuidado como isso pode afetar sua configuração do GRUB, mas se você permanecer nas estruturas do RHEL, o GRUB deve fazer referência apenas aos kernels que estão instalados.