Como inicializar o RHEL sem bash?

1

Como posso inicializar uma VM do RHEL se eu excluíra /bin/bash ? Ao tentar inicializar, agora recebo o seguinte erro:

"INIT: Cannot execute "/etc/rc/d/rc.sysinit"

A próxima coisa que tentei foi modificar os parâmetros de inicialização do kernel adicionando init=/bin/ksh no final da linha, o que me deu um shell funcional. Depois disso, para obter permissões de gravação, remontei a partição raiz com:

mount -o remount,rw /

Então eu tentei inicializar usando o ksh como o shell, enganando o sistema e pensando que é bash:

ln -s /bin/ksh /bin/bash

Em seguida, reinicie o sistema normalmente. Infelizmente isso não funcionou, já que o ksh não é compatível e /etc/rc.d/rc.sysinit usa vários truques específicos do bash.

Alguém mais tem uma sugestão sobre como eu poderia fazer o sistema inicializar normalmente sem reinstalar o bash?

    
por nmelmun 19.10.2012 / 02:34

2 respostas

2

Sua melhor aposta será inicializar a partir do seu CDROM e, em seguida:

  • mount / /mount/point (rw)
  • cp /bin/bash /mount/point/bin/bash
por 19.10.2012 / 02:38
2

O RHEL usa o bash como seu shell padrão . Sua melhor aposta é copiá-lo de volta. Você pode usar um DVD ou outra mídia para inicializar linux rescue e copiar / bin / bash em / mnt / sysimage / bin /

Se esta for uma VM, você tem algumas outras opções:

  1. Você tem um instantâneo antes de excluir o shell? Em caso afirmativo, você pode fazer o backup para o instantâneo?
  2. Você tem dados ou arquivos que você não pode perder? Se esta for uma instalação relativamente nova ou uma instalação de teste, sua correção mais rápida pode ser apagá-la e recriá-la.

Boa sorte!

    
por 26.10.2012 / 06:40