/ dev / sda1 não em um grupo de volume, e vgextend não funciona

1

Eu tenho várias máquinas virtuais que acesso através de um cliente VMware vSphere (v 5.1.0). Um ficou sem espaço e estou tentando dar um pouco mais de espaço.

O que eu fiz até agora:
- Maior tamanho provisionado usando "Editar configurações" na guia "Resumo".
- Criei uma nova partição (/ dev / sda3) com o sistema Linux LVM.

O problema é que não há nenhum grupo de volume na máquina antes, então não posso seguir os tutoriais normais que me dizem apenas

vgextend VolGroup00 /dev/sda1

quando faço isso, recebo o erro:

No physical volume label read from /dev/sda1
Can't open /dev/sda1/ exclusively. Mounted filesystem?
Unable to add physical volume '/dev/sda1' to volume group 'VolGroup00'.

Eu pesquisei o dia todo, mas não consegui descobrir como adicionar / dev / sda1 ao meu grupo de volume. Não está em nenhum grupo de volume ...

Alguém tem alguma sugestão ou indicação?

EDITAR: Alguns dados adicionais:

# fdisk -l
Disk /dev/sda: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders
Units = cylinders of 16065 * 512 = 822580 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optional): 512 bytes / 512 bytes
Disk identifier: 0x000d2064

Device    Boot Start   End    Blocks   Id  System
/dev/sda1   *      1  1998  16043008   83  Linux
/dev/sda2       1998  2089    731137    5  Extended
/dev/sda3       2089  5221  25161490+  8e  Linux LVM
/dev/sda5       1998  2089    731136   82  Linux swap / Solaris


# df -h
Filesystem  Size  Used  Avail  Use%  Mounted on
/dev/sda1    16G   14G   754M   95%  /
tmpfs       4.0G     0   4.0G    0%  /lib/init/rw
udev        4.0G  104K   4.0G    1%  /dev
tmpfs       4.0G     0   4.0G    0%  /dev/shm


# lbslk
-bash: lsblk: command not found


# pvs
PV         VG           Fmt  Attr   PSize   PFree
/dev/sda3  VolGroup00  lvm2  a-     23.99g  23.99g


# vgs
VG          #PV  #LV  #SN  Attr    VSize   VFree
VolGroup00    1    0    0  ws--n-  23.99g  23.99g


# lvs
#
(no output)
    
por steffen 04.09.2013 / 10:44

3 respostas

3

Embora eu não tenha interesse em nenhuma das respostas existentes, não tenho certeza se vejo qualquer razão para complicar isso com o LVM, já que você não o possui atualmente. Se você não está pensando em fazer uma extensão como essa novamente, pode não valer a pena apresentar o LVM agora.

Uma alternativa, que é complicada, mas não envolve reconstruir a máquina, a menos que você a complemente, é:

  1. Reverta a configuração do LVM que você fez e faça um backup completo
  2. Excluir a partição /dev/sda3
  3. Pare o espaço de troca existente com swapoff e, em seguida, exclua as partições /dev/sda[25]
  4. Recrie a partição /dev/sda1 para abranger todo o disco existente, menos algum espaço de troca na parte superior. Não altere o bloco inicial da partição .
  5. Crie um /dev/sda2 na parte superior do disco, marque-o como swap, verifique se /etc/fstab reflete a alteração de sda5 para sda2 .
  6. Reinicialize e use resize2fs para expandir o sistema de arquivos raiz in situ para preencher o novo% maior /dev/sda1 .
por 04.09.2013 / 12:12
2

Neste momento específico e com a forma como descreveu a sua configuração, receio que a resposta seja "desculpe, não pode ser feito". Pelo menos não da maneira que você descreve.

Mas a verdadeira questão não é "como eu posso estender o sda1" - é "como eu posso aumentar o espaço disponível para meus usuários, já que o servidor foi instalado sem grupos de volume". Essa é uma pergunta que pode ser respondida de várias maneiras. Estou te dando duas respostas que não envolvem, e. um NAS / SAN ou outro sistema de armazenamento externo.

Antes de fazer qualquer um dos itens abaixo, certifique-se de ter um backup atual do seu sistema. Esteja ciente de que haverá tempo de inatividade envolvido!

A maneira mais fácil é verificar quais diretórios existem no disco / dev / sda1 atual. Você pode ter, por exemplo,

/var
/home
/usr

tudo no mesmo disco. Uma coisa que você pode fazer é copiar todos os dados de, e. / home para o novo disco e, em seguida, monte esse novo disco como / home. (Isso obviamente precisa ser feito no momento em que não houver usuários logados na máquina - de preferência, deve ser inicializado no modo de usuário único!)

Quando a cópia estiver concluída, reinicie o sistema com / dev / sda3 montado como / home. Verifique se tudo funciona conforme projetado. Em seguida, desmonte / dev / sda3 e exclua todos os diretórios em / home no disco antigo.

A desvantagem é que agora você ficará trancado em uma quantidade limitada de espaço, exceto que agora você tem dois discos não extensíveis em vez de um, então levará algum tempo até que você alcance o teto da próxima vez.

Editado abaixo porque / boot está em / dev / sda1 então a solução original não funciona.

A maneira mais difícil é fazer uma reinstalação. Ao reinstalar, crie um VG em / dev / sda3 somente . Não particione ou toque em / dev / sda1 de qualquer forma.

Quando o sistema estiver ativo, você monta o / dev / sda1 em um novo ponto de montagem (por exemplo, / mnt / olddisk). Em seguida, copie todos os dados desse disco (isso deve ser tudo, exceto o sistema operacional real). Feito isso, você pode estender o VG para o antigo / dev / sda1. Agora você terá um sistema que pode ser estendido adicionando mais discos ao grupo de volumes.

    
por 04.09.2013 / 11:42
1

Você só pode criar ou estender grupos de volumes LVM para volumes físicos.

Para resolver o problema, crie um volume físico LVM na partição desejada.

pvcreate /dev/sda1

NOTA: Esta operação destrói todos os dados na partição nomeada.

Você pode estender o grupo de volumes para o volume físico.

(E você provavelmente não quer dizer /dev/sda1 porque normalmente é a partição /boot . Como isso é destrutivo, tenha absoluta certeza do que está fazendo.)

    
por 04.09.2013 / 10:46