Kernel Panic on CentOS - Instância do Google Compute Engine

2

Estou recebendo um erro de kernel panic em uma instância do CentOS do Google Compute Engine. Eu sou capaz de ver o erro e já descobrir como resolvê-lo, mas não consigo entrar no menu do GRUB através do console serial.

dracut: Mounted root filesystem /dev/sda1
dracut: Loading SELinux policy
type=1404 audit(1479929075.614:2): enforcing=1 old_enforcing=0 auid=4294967295 ses=4294967295
dracut: SELinux: Could not open policy file <= /etc/selinux/targeted/policy/policy.24: No such file or directory
 /sbin/load_policy: Can't load policy and enforcing mode requested: No such file or directory
dracut Warning: Initial SELinux policy load failed.
dracut FATAL: Initial SELinux policy load failed. Machine in enforcing mode. To disable selinux, add selinux=0 t
o the kernel command line.
dracut Warning: 
dracut Warning: Boot has failed. To debug this issue add "rdshell" to the kernel command line.
dracut Warning: Signal caught!
dracut Warning: Boot has failed. To debug this issue add "rdshell" to the kernel command line.
Kernel panic - not syncing: Attempted to kill init!
Pid: 1, comm: init Not tainted 2.6.32-642.11.1.el6.x86_64 #1
Call Trace:
     [<ffffffff815482b1>] ? panic+0xa7/0x179
     [<ffffffff8112aea0>] ? perf_event_exit_task+0xc0/0x340
     [<ffffffff81081f97>] ? do_exit+0x867/0x870
     [<ffffffff8119b735>] ? fput+0x25/0x30
     [<ffffffff81081ff8>] ? do_group_exit+0x58/0xd0
     [<ffffffff81082087>] ? sys_exit_group+0x17/0x20
     [<ffffffff8100b0d2>] ? system_call_fastpath+0x16/0x1b

A versão do CentOS é 6.7 e isso aconteceu depois de uma atualização do yum. Eu só estou tentando entrar no menu GRUBs para acrescentar "selinux = 0" para inicializar no modo Permissivo, mas parece que não é possível através do console serial. Eu apreciaria qualquer ajuda.

    
por João Felipe Coutinho de Sousa 24.11.2016 / 12:44

2 respostas

1

Eu fiz um trabalho e instalei minha instância novamente. O problema básico é que, por padrão, as instâncias do Linux no Google Cloud são definidas como tempo limite zero no menu GRUBs. Portanto, você não pode acessar o menu, mesmo através do console serial. Descreverei os passos que fiz para restaurar minha instância.

  1. Crie um instantâneo do disco de inicialização da máquina.
  2. Crie um disco cuja origem é o instantâneo criado no primeiro passo. Vamos chamar de disco de resgate .
  3. Inicie uma nova instância do Linux. Pode ser a instância micro e você pode excluí-la depois. Chame de rescue-instance .
  4. Anexe o disco de resgate à instância de resgate .
  5. Na rescue-instance monte o rescue-disk e altere o <mount point>/etc/grub.conf da seguinte forma:
    root (hd0,0)
    kernel /boot/vmlinuz-2.6.32-642.11.1.el6.x86_64 ro root=UUID=23f78139-a1ac-4a7a-b608-05687cecfa37 selinux=0
  1. Anexe rescue-disk da rescue-instance e exclua essa instância, se desejar.
  2. Inicie uma nova instância na qual a origem é o disco de recuperação . Você pode fazer isso no disco.

Se você já tem outra instância do Linux em execução no gcloud, não é necessário criar uma nova instância. Basta usar a VM que você tem.

    
por 24.11.2016 / 19:33
0

Igual à outra resposta para acessar e editar o disco e torná-lo inicializável, mas para corrigir o problema,

# yum install selinux-policy-targeted   # may have to use reinstall
# semodule -B
# vi/nano /boot/grub/grub.conf          # remove selinux=0
# reboot

Nos registros do sistema:

*** Warning -- SELinux targeted policy relabel is required.
*** Relabeling could take a very long time, depending on file
*** system size and speed of hard drives.

link

    
por 05.06.2017 / 19:37