Modificando o arquivo grub.conf no linux

6

Eu editei o arquivo 'grub.conf' do meu sistema linux e mudei o valor 'timeout' nele e adicionei alguma outra linha para resolver o problema de timeout do comando 'xm console guest'. Eu fui tolo ao assumir que esse parâmetro de 'timeout' no grub.conf está realmente relacionado ao 'xm timeout do console e alterá-lo para um valor muito grande. Então isso me levou a um grande problema. Agora, quando eu reiniciei minha máquina linux, ela simplesmente trava na tela de inicialização, mesmo depois de selecionar manualmente o Kernel para inicializar.

Então, basicamente eu quero desfazer as alterações que fiz no arquivo grub.conf durante a inicialização ou através do grub. Ou, de alguma forma, forçar o sistema a inicializar uma vez e desfazer as alterações depois. Eu não sou capaz de fazer isso. Uma maneira de fazer isso é inicializar a partir do CD do Linux no modo de recuperação e desfazê-lo, mas não posso fazê-lo, pois é uma máquina virtual no XEN e não consigo encontrar uma maneira de inicializá-lo a partir de um CD externo. p>

Existe alguma maneira de resolver a bagunça que eu criei?

    
por stillStudent 10.10.2011 / 14:47

3 respostas

1

Você pode montar o arquivo de disco no host usando losetup

sudo losetup -o32256 /dev/loop0 /path/to/harddiskimage.xm
sudo mount /dev/loop0 /media/mydisk

O -o refere-se ao deslocamento para o setor de inicialização. Isso normalmente é 32256, mas pode mudar se, por exemplo, você tiver várias partições no convidado.

Para se certificar de qual é o seu deslocamento, você pode fazer o seguinte:

sudo losetup -d /dev/loop0
sudo losetup /dev/loop0 /path/to/harddiskimage.xm
sudo fdisk -ul /dev/loop0

Ele mostrará o número de Units e sector/track . Apenas multiplique esses dois para obter o deslocamento.

Quando terminar, editando o grub.conf na pasta montada, você poderá desmontá-lo:

sudo umount /dev/loop0
sudo losetup -d /dev/loop0
    
por 10.10.2011 / 14:58
4

Você pode editar as opções de inicialização diretamente no menu do grub antes de selecionar uma opção. Eu acredito que você pressione "e" para editar a entrada. Você pode alterar as opções para essa inicialização para algo diferente.

Quando você for inicializado no sistema, você pode editar seu arquivo grub.conf novamente.

    
por 10.10.2011 / 15:00
0

Eu não sei o procedimento mencionado por 'Bart De Vos' funciona ou não, porque eu não tentei porque eu encontrei um procedimento que funciona definitivamente. O Approcah é semelhante ao montar o arquivo do convidado e depois editá-lo.

Por favor, siga os passos abaixo para montar o arquivo de imagem:

  1. Primeiro comando vgscan no dom-0, ele lhe dará volumes lógicos que estão atualmente ativos no dom-0. Agora você pode seguramente assumir que este número de volume mostrado pelo comando é da sua máquina dom-0 e não de qualquer convidado.

  2. Agora, execute kpartx -av /var/lib/xen/images/$machine_name.img Este comando irá mapear loops para o arquivo de imagem da VM e ativar o VolumeGroup da VM guest.

  3. Agora, novamente, ative o comando vgscan , você verá mais um VolGroup além do que viu na etapa 1. Agora, você pode ter certeza de que este é o grupo volumétrico de sua VM guest.

  4. Agora você deve conhecer os volumes lógicos em um grupo de volume para montá-lo com sucesso. Para isso acione o comando vgchange -ay / VolGroup00 (Grupo de volume recém-criado na etapa 2) /

  5. Agora execute o comando lvs, isso lhe dará volumes lógicos no VolGroup.

  6. Agora crie um ponto de montagem e monte qualquer volume lógico que você queira montar da seguinte forma

    mount / dev / VolGroup00 / LogVol00 $ mount_path

  7. Agora, você pode acessar qualquer diretório da VM convidada por meio desse caminho e modificar qualquer configuração desejada. Quando estiver pronto, você pode seguir o procedimento inverso como

    a) Umount $ mount_path

    b) vgchange -um VolGroup00

    c) kpartx -d /var/lib/xen/images/$machine_name.img

E você está pronto

    
por 20.10.2011 / 10:06

Tags