Acessando a partição LVM do host do Windows XP através do Virt.manager 0.8.5 / Qemu / KVM

2

O caso de uso solicitado é ter um convidado do Windows XP SP3 em execução no Ubuntu de 64 bits.
(Linux pcs 2.6.35-22-server # 35-Ubuntu SMP Sáb Out 16 22:02:33 UTC 2010 x86_64 GNU / Linux)
Eu quero que este convidado acesse um LVM LV no disco do Ubuntu.

Eu configurei a seguinte configuração do LVM:
  --- Volume lógico ---

  LV Name                /dev/storage/sdc1  
  VG Name                storage  
  LV UUID                Zg5IMC-OlqB-prL5-fgg4-3A9A-OgKP-oZ0QkJ  
  LV Write Access        read/write  
  LV Status              available  
  # open                 0  
  LV Size                1.01 GiB  
  Current LE             259  
  Segments               1  
  Allocation             inherit  
  Read ahead sectors     auto  
  - currently set to     256  
  Block device           251:3  

-

1) Eu configurei um pool de armazenamento para / dev / storage
2) Eu tenho o mkfs.vfat / dev / storage / sdc1
3) e fez um disco IDE virtual na configuração do virt-manager para o convidado.
Dispositivo de destino: disco IDE 2
Caminho de origem: / dev / storage / sdc1

-

Agora, ao executar o XP (guest), o Windows vê um novo disco no Gerenciador de Discos e deseja instalar uma partição nele, pois acredita que a unidade está vazia.
Depois de formatar a partir do Windows, posso colocar dados no novo volume de disco.

-
De volta ao Ubuntu, no entanto, não posso mais acessar isso, pois criou uma partição dentro de um Volume Lógico LVM.

A execução do fdisk -l mostra o seguinte:

root@pcs:/media# fdisk -l /dev/storage/sdc1  

Disk /dev/storage/sdc1: 1086 MB, 1086324736 bytes  
32 heads, 63 sectors/track, 1052 cylinders  
Units = cylinders of 2016 * 512 = 1032192 bytes  
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes  
Disk identifier: 0x8d72e4f4  

             Device Boot      Start         End      Blocks   Id  System  
/dev/storage/sdc1p1               1        1050     1058368+   c  W95 FAT32 (LBA)  

-
o que parece bem para mim, mas ao tentar montar / dev / storage / sdc1p1 eu recebo o seguinte erro:

mount /dev/storage/sdc1p1 /media/xp  
mount: special device /dev/storage/sdc1p1 does not exist  

que faz sentido, pois em lvdisplay sdc1p1 não existe

Pergunta principal:
Eu quero montar a partição vfat no Ubuntu e no XP O que estou perdendo aqui?????

cumprimentos e obrigado pela sua consideração.

    
por Nico de Smidt 05.03.2011 / 12:06

1 resposta

0

Ok, [RESOLVIDO]

ponto é que o mapeador de dispositivo não cria um mapeamento para a partição guest (ou guest do Ubuntu) do XP que o convidado criou no host LV no Ubuntu, automaticamente :-) (como deveria o convidado fazer isso agora?)

Para corrigir isso, encontrei esta outra postagem: link e tirei os seguintes itens para resolver o meu problema.

1) faça um sfdisk -d /dev/mapper/storage-sdc1 (o nome do LV no qual o XP criou a partição | deve imprimir algo assim:

partition table of /dev/mapper/storage-sdc1
unit: sectors  
/dev/mapper/storage-sdc1p1 : start=       63, size=  2116737, Id= c
/dev/mapper/storage-sdc1p2 : start=        0, size=        0, Id= 0
/dev/mapper/storage-sdc1p3 : start=        0, size=        0, Id= 0  
/dev/mapper/storage-sdc1p4 : start=        0, size=        0, Id= 0  

2) Crie um arquivo de mapeamento para cada partição, no meu caso, isso é apenas uma linha (eu nomeei-lhe devmap.sdc1p1) Use start (última coluna) e tamanho (segunda coluna)

cat devmap.sdc1p1 
#start      size    type    destination start
0 2116737 linear /dev/mapper/storage-sdc1 63

3) execute dmsetup create sdc1p1 devmap.sdc1p1
isso cria o dispositivo nd DM sdc1p1 (cuidado, ele cria como sdc1 não storage-sdc1 como é convenção)

4) monte a partição como mount -t vfat /dev/mapper/sdc1p1 /media/sdc1

5) :-) e um pouco de café

    
por Nico de Smidt 05.03.2011 / 19:30