Criada acidentalmente nova tabela de partição para o drive de boot

0

Ontem eu acidentalmente criei uma nova partição (boot) com o gdisk na minha unidade principal em vez da minha unidade externa. No entanto, isso criou uma nova tabela de partições, mas como estou executando o Kubuntu nesta unidade, o Kernel ainda não está atualizado.

Qual é o modo mais rápido de inicializar o Windows & Partições do Kubuntu com todos os meus dados e configurações?
  - Eu fiz um backup do dd, mas acho que isso só conterá a nova partição?
  Ainda tenho acesso a todos os arquivos, por isso também os fechei.
  - Tenho que reinstalar o kubuntu & Windows ou existe uma maneira de desfazer a operação do gdisk?
  - Devo desligar o computador e usar o testdisk em um sistema ao vivo?

gisk -l output:

manu@manus-Laptop:~$ sudo gdisk -l /dev/sda
[sudo] password for manu:
GPT fdisk (gdisk) version 1.0.1

Partition table scan: MBR: protective
BSD: not present
APM: not present
GPT: present

Found valid GPT with protective MBR; using GPT.
Disk /dev/sda: 468862128 sectors, 223.6 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): 62FADE32-E715-4AC6-BA77-307107A2454F
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 468862094
Partitions will be aligned on 2048-sector boundaries
Total free space is 468861108 sectors (223.6 GiB)

Number ___ Start (sector) _ _ End (sector) _ _ _ Size _ _ _ Code _ _ _ Name
______1____________2048___________ 3000 _ _ _ 476.5 KiB _ EF02 _ _ BIOS boot partition manu@manus-Laptop:~$

    
por manu at Kubuntu 24.07.2017 / 10:21

1 resposta

1

Eu conheço três maneiras de fazer o que você quer, considerando sua situação atual:

Método 1: Fácil, mas arriscado e lento

O primeiro método é usar o TestDisk, que pode escanear um disco para dados do sistema de arquivos e gerar novas entradas na tabela de partições para Combine o que encontrar. Essa abordagem é relativamente automatizada e, portanto, fácil; mas as ferramentas devem digitalizar muito do disco, o que pode demorar um pouco. Pior, o TestDisk pode ser lançado por dados dispersos de partições antigas que você excluiu, produzindo resultados ruins. Assim, há uma chance de que o TestDisk gere uma tabela de partições completamente errada; ou pode lhe dar várias opções sobre o que recuperar, e você pode não conseguir decidir o que está correto.

Embora o TestDisk possa recuperar pontos de início e de término da partição e provavelmente definirá o código do tipo de partição corretamente, ele não poderá restaurar o GUID original da partição. Isso pode ser importante para a inicialização, conforme observado na próxima seção.

Observe que o TestDisk (ou alguma ferramenta semelhante; não é o único nessa categoria) se tornará sua única opção quando você desligar ou reinicializar o computador.

Método 2: Mais difícil, mas mais seguro e rápido

Como seu kernel ainda está usando a tabela de partição antiga, os dados nas suas partições ainda podem ser recuperados da memória. A questão é como fazer isso, e a resposta é procurar na árvore de diretórios /sys/block/sda . Esse diretório deve ter subdiretórios para cada partição ( sda1 , sda2 e assim por diante) e cada um desses diretórios possui um arquivo start e um size com o local inicial e o tamanho da partição, em setores . Por exemplo:

$ cat /sys/block/sda/sda2/start
1126440
$ cat /sys/block/sda/sda2/size
1536000

Isso indica que, no meu sistema, /dev/sda2 começa no setor 1126440 e tem 1536.000 setores em tamanho. Você pode extrair essas informações e, usando gdisk , recriar a tabela de partição - ou, pelo menos, criar partições com os tamanhos corretos. Você precisará usar seu conhecimento do que está em cada partição para definir seus códigos de tipo. AFAIK, não há como recuperar os valores do GUID (o mesmo vale para a abordagem anterior). O valor GUID do ESP pode ser importante, já que é provável que seja usado pelo EFI como parte de seu processo de inicialização. Você deve conseguir extrair isso da sudo efibootmgr -v output - ela será incorporada na string que faz parte da linha ubuntu . Você pode usar gdisk para alterar esse valor depois de recriar o ESP - use a opção c no menu de especialistas.

Método 3: Melhor e mais fácil, mas você provavelmente não pode fazer isso

A melhor e mais fácil maneira de fazer o que você quer é restaurar a tabela de partições a partir de um backup. A ferramenta gdisk oferece uma opção b no menu principal para criar um backup desse tipo. Se você tivesse feito isso, você poderia restaurar o backup com a opção l (letra minúscula "L") na recuperação & menu de transformação.

A restauração de um backup dessa maneira restaurará todos os dados da tabela de partição da maneira que estava quando o backup foi feito. Isso inclui valores de GUID, nomes de partições e, claro, tamanhos de partições. É concebível que você tenha feito tal backup, mas tenha esquecido. Se sim, use-o. Se não, no entanto, isso não lhe trará nenhum benefício, a não ser que você saiba agora sobre essa opção e possa estar motivado para fazer um backup para uso no futuro.

    
por Rod Smith 24.07.2017 / 18:58