A minha partição home
no Arch Linux inicia atualmente cerca de 20GiB após o início do espaço não alocado e vai até o final da unidade.
Meu problema: Eu preciso de uma maneira de recuperar essa partição, que atualmente está dividida em unallocated
space e dev/sdb3
. /dev/sdb3
obviamente não pode ser reconhecido como um sistema de arquivos desde o início da partição é de cerca de 215GiB antes do início de /dev/sdb3
(consulte a imagem abaixo).
Euoriginalmentetinha3partiçõesnestaunidade-apartiçãoreservadadaMicrosoft,umapartiçãoparadadosdoWindowseminhapartição/home
doLinux.EutenhoumapartiçãodoWindowseraizdoLinux,bootepartiçãoswapemoutraunidade.
Aestruturaoriginaldaunidadetinha/dev/sdb3
ocupaamesmaquantidadedeespaço(~390GiB),eoWindows/dev/sdb2
ocupavacercade540GiB.ReduziapartiçãodoWindowsem215GiBnoWindowse,usandooGParted,moviapartição/home
paraaesquerdaparaocuparoespaçoliberadoeestendi-loatéofinaldaunidade.QuandoeureinicieinoArchLinux,tudofuncionoubemeeunãotivequeatualizar/etc/fstab
.
EuentãotenteiencolherapartiçãodoWindowsporoutro20GiBnoWindows.NoteiqueaindaestavaexibindooespaçoliberadopeloWindowsanteriormentecomoespaçonãoalocado,emvezdeserassumidopelapartiçãoLinux.Eunãopenseinissoecomeceiadiminuirpara20GiB.OgerenciadordepartiçãodoWindowsmostrouqueoespaçonãoalocadocresceuemmais20GiB,paraocuparcercade235GiBdeespaço.
EucomeceiainicializaroArchLinuxnovamente,masamontagem/home
filesystemfalhou.EutenteisalvarasituaçãoemumUbuntu16.04liveUSBecomGPartedefdiskviaestruturadepartiçãoatual(consulteamesmaimagemacima).
Nomomento,estoutentandoencontraropontoinicialdapartição/home
,tentandotentarmontaremcadasetorapóscercade20GiBapósotérminodapartiçãodoWindows.Noentanto,nãoestouotimistaquandotenteiexecutaroscriptparatentarencontrarminhapartição/
(oqueébom)definindoodeslocamentodelosetupcomosetorialstart*tamanhodosetor,masdasaídaelenãoconseguiuencontrarapartição./p>
Portanto,minhapartição/
estáem/dev/sda5
,comsetorinicialde285696000e,portanto,285696000*512=146276352000bytes.
ubuntu-gnome@ubuntu-gnome:/$sudofdisk-l/dev/sdaDisk/dev/sda:232.9GiB,250059350016bytes,488397168sectorsUnits:sectorsof1*512=512bytesSectorsize(logical/physical):512bytes/512bytesI/Osize(minimum/optimal):512bytes/512bytesDisklabeltype:gptDiskidentifier:88407810-7885-4F92-A726-53E86D2E8A71DeviceStartEndSectorsSizeType/dev/sda12048534527532480260MEFISystem/dev/sda25345285672953276816MMicrosoftreserved/dev/sda356729615892471021952499MWindowsrecoveryenvironment/dev/sda41589248285692238284102991135.5GMicrosoftbasicdata/dev/sda528569600045490175916920576080.7GLinuxfilesystem/dev/sda64549017604883971343349537516GLinuxfilesystem
Euentãotenteimontá-lo:
ubuntu-gnome@ubuntu-gnome:/$sudolosetup-o146276352000/dev/loop2/dev/sda
Noentanto,ofdisknãomostranenhumdispositivo
ubuntu-gnome@ubuntu-gnome:/$sudofdisk-l/dev/loop2Disk/dev/loop2:96.7GiB,103782998016bytes,202701168sectorsUnits:sectorsof1*512=512bytesSectorsize(logical/physical):512bytes/512bytesI/Osize(minimum/optimal):512bytes/512bytes
Oscriptqueescreviparatentarmontaraunidadeemtodosossetoresémostradoabaixo.
#!/bin/bashRECOVER_START=350039834624i="0"
while [ $i -ne -1 ] # for offset in {-10..50}
do
sudo losetup -d /dev/loop2
let "START_OFFSET=$RECOVER_START + $i * 512"
sudo losetup -o $START_OFFSET /dev/loop2 /dev/sdb
lines=$(sudo fdisk -l /dev/loop2 | wc -l)
if [ "$lines" -ne 4 ]
then
sudo fdisk -l /dev/loop2
fi
i=$[$i+1]
done
Não sei o que fazer e aprecio qualquer ajuda e orientação sobre como minha partição /home
pode ser recuperada. Obrigado.