Postagem por Fernandez de Quilon me ajudou:
$ mount -t ext4 -o offset=32256 /dev/xvda4 /mnt/foo
Funciona bem. 32256
é calculado como 63
(início da partição) multiplicado por 512
(tamanho do setor).
Estou tentando montar um disco criado há algum tempo no Amazon EC2. Isto é o que eu vejo (quebras de linha adicionadas por uma questão de legibilidade):
$ sudo file -s /dev/xvda4
/dev/xvda4: x86 boot sector; partition 1: ID=0x83, starthead 1,
startsector 63, 10474317 sectors, extended partition table (last)1,
code offset 0x0
Quando estou tentando montá-lo:
$ sudo mount /dev/xvda4 /mnt/foo
mount: wrong fs type, bad option, bad superblock on /dev/xvda4,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so
Como posso montar este disco?
Talvez essa informação ajude:
$ sudo fdisk -lu /dev/xvda4
Disk /dev/xvda4: 5368 MB, 5368709120 bytes
255 heads, 63 sectors/track, 652 cylinders, total 10485760 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0952616d
Device Boot Start End Blocks Id System
/dev/xvda4p1 63 10474379 5237158+ 83 Linux
Postagem por Fernandez de Quilon me ajudou:
$ mount -t ext4 -o offset=32256 /dev/xvda4 /mnt/foo
Funciona bem. 32256
é calculado como 63
(início da partição) multiplicado por 512
(tamanho do setor).
Se você está tentando montar um instantâneo antigo, provavelmente está recebendo um erro uuid. Verifique se
dmesg | tail
Mostra:
[-your.timestamp.here-] XFS (xvdg): Filesystem has duplicate UUID - can't mount
Se isso acontecer, e você só precisa montar algo para obter, você pode montá-lo assim (em / var / www2 no meu caso):
mount -o nouuid /dev/xvdg /var/www2
Se você quiser usá-lo regularmente, você precisa gerar um novo UUID como este (no meu / dev / xvdg que você deve substituir por seu / dev /...) :
xfs_admin -U generate /dev/xvdg
/dev/xvda4
não contém um sistema de arquivos, como a saída de file
indica. Ele contém uma tabela de partições. fdisk
exibe esta tabela de partições. Existe presumivelmente um sistema de arquivos na única partição dentro desse volume (o nome da partição é visível na saída fdisk
).
sudo mount /dev/xvda4p1 /mnt/foo
Estou assumindo que / dev / xvda é o dispositivo e / dev / xvda4 é uma partição. Com uma tabela de partições em uma partição, isso complica um pouco as coisas. Mas podemos contornar isso usando o dispositivo de loopback que normalmente seria usado para montar sistemas de arquivos que residem em arquivos. Mas podemos aplicá-lo a um dispositivo também.
sudo mount -o loop,offset=32256 /dev/xvda4 /mnt/foo
O número 32256 é o número de bytes para o setor 63, onde a saída do fdisk mostrou que a partição interna estava começando em.
Que tal apenas:
# mount -t auto /dev/xvda4 /mnt/foo
Tags mount filesystems