Eu estava inicializando o Windows 7 e o Linux Ubuntu na minha área de trabalho e hoje é o dia em que eles lançam atualizações gratuitas do Windows 10. Que legal! Recebi a atualização e ela estava sendo instalada e saí para tirar uma soneca de 30 minutos. No entanto, quando voltei ao meu computador, ele me levou ao prompt de resgate do grub.
error: no such partition.
Entering rescue mode...
grub rescue>
Recebo o seguinte quando digito ls
:
grub rescue> ls
(hd0) (hd0,msdos5) (hd0,msdos3) (hd0,msdos2) (hd0,msdos1)
Após uma rápida olhada nas pessoas que encontraram o prompt de resgate do grub, digitei set
e obtive o seguinte
grub rescue> set
cmdpath=(hd0)
prefix=(hd0,msdos6)/boot/grub
root=hd0,msdos6
Eu ainda estava meio perdido depois de descobrir que certos comandos normal
não funcionavam, e então encontrei um tutorial em vídeo onde você inicializa a partir de um CD de imagem do Linux e executa alguns comandos no terminal. Felizmente, eu tinha meu CD comigo e inicializei a partir daí. Quando digitei sudo fdisk -l
o terminal, porém, foi o que obtive:
ubuntu@ubuntu:~$ sudo fdisk -l
Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 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: 0xc03ede74
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 206847 102400 7 HPFS/NTFS/exFAT
/dev/sda2 206848 1547022335 773407744 7 HPFS/NTFS/exFAT
/dev/sda3 1547022336 1547943935 460800 27 Hidden NTFS WinRE
/dev/sda4 1547945982 1953521663 202787841 f W95 Ext'd (LBA)
/dev/sda5 1915731968 1953521663 18894848 7 HPFS/NTFS/exFAT
Diz aqui que nenhum dos meus dispositivos possui o sistema Linux! E eu não pude seguir o tutorial em vídeo mais do que isso ...
Eu provoquei um pouco meu cérebro e determinei que o sda2 continha meu sistema Windows (desde que me lembro que minha unidade C: tem cerca de 700-ish GB de espaço). Depois de pensar um pouco mais, lembro-me de atribuir cerca de 200 GB de espaço em disco a algo relacionado ao Ubuntu ao instalar o Ubuntu. Não me lembro exatamente qual, mas acho que era basicamente o "espaço em disco" do Ubuntu e não tinha nenhum arquivo de inicialização. Eu designei duas outras coisas para o linux, mas elas eram muito pequenas (ainda não quebrando a marca de 1 GB).
Então, alguém aqui pode me ajudar a recuperar minha atualização? Não me importarei se acabar removendo completamente as partições que possuem o Linux.
fonte
/dev/sda5
ou(hd0,msdos5)
partição, o que equivaleria a apenas 1,7 MB, portanto a partição Linux dificilmente poderia estar escondida lá. Meu melhor palpite seria que a entrada da partição Linux de alguma forma foi deslocada para esse local (nº 5 em vez de nº 6) e que seu tipo foi inexplicavelmente alterado. A primeira coisa a tentar serials (hd0,msdos5)/
no prompt de resgate do GRUB.Respostas:
Meu computador veio com o Windows 8 pré-instalado, então reduzi a partição do Windows para abrir espaço para o Ubuntu. Foi assim que funcionou no último ano. Após a segunda reinicialização no Windows 10, o computador não inicializou mais. O GRUB exibiu apenas um
grub rescue
prompt de comando. Descobri mais tarde que o problema ocorreu porque o Windows de alguma forma mudou o esquema de partição. A partição de inicialização (contendo dados normais do GRUB) não estava mais onde o GRUB esperava. Não sei como e por que isso aconteceu.A primeira coisa que você pode fazer no modo de recuperação é ver as partições com o
ls
comando Os meus eram:Tente descobrir qual partição é sua partição de inicialização. Não há Tabconclusão, você precisa digitá-la completamente. Tentei os seguintes comandos até encontrar a partição correta:
etc.
Em seguida, digite
set
o mesmo prompt. Ele exibirá onde o GRUB procura seus arquivos. No meu caso (hd0, gpt6) mudou-se para (hd0, gpt7). O comando set exibido:Para voltar ao GRUB normal, comece alterando a
prefix
configuração para apontar para a partição correta. No meu caso, o comando foi:Depois, você pode alternar do modo de recuperação para o modo normal:
Também se poderia ter fixado a
root
configuração com:Mas isso não é estritamente necessário, pois não importa para entradas de carregamento em cadeia do Windows. Uma vez no menu normal do GRUB, você pode inicializar o Windows e concluir sua atualização. O problema é que você precisa informar ao grub rescue as partições corretas em cada reinicialização. Foi assim que eu fiz. Deixei o problema do GRUB para mais tarde, porque não tinha certeza se o Windows faria mais algumas alterações nas partições ou na inicialização.
Quando o Windows terminou, comecei a resolver os problemas do GRUB. Pressione
e
para editar as opções de inicialização do Ubuntu. Mudei tudo(hd0,gpt6)
para(hd0,gpt7)
e o Ubuntu inicializou.No entanto, eu uso partição criptografada e cryptswap. Na inicialização, o Ubuntu me pediu a senha. Felizmente eu salvei na instalação do Ubuntu e entrei na inicialização. Ubuntu inicializado sem problemas.
Eu, então, corrigiu o
/boot/grub/grub.cfg
arquivo onde eu substituído(hd0,gpt6)
com(hd0,gpt7)
e executadas:Nesse ponto, o único problema restante era a criptografia. Como o número da partição raiz do Ubuntu foi aumentado em um (7 em vez de 6), a partição swap sofreu uma alteração semelhante. Eu tive que mudar o
/etc/crypttab
arquivo para apontar para em/dev/sda8
vez de/dev/sda7
.Estou usando apenas duas partições para o Ubuntu (root e swap). Se outros sistemas operacionais coexistentes com o Windows usarem mais partições, poderá haver mais alterações. Especialmente se as partições forem montadas de acordo com seus números e não por seus UUIDs. Dê uma olhada no seu
/etc/fstab
. Se as partições forem identificadas pelo UUID, não haverá problemas. Mas se houver/dev/...
linhas, o número deverá ser corrigido se essas partições tiverem sido renumeradas.fonte
ls (hd0,msdos1)/ ls (hd0,msdos1)/boot ls (hd0,msdos2)/ etc.
para todas as entradas dols
comando e toda vez que ele aparecererror: unkown filesystem
.sudo nano /boot/grub/grub.cfg
e executeisudo grub-install /dev/sda
(por algum motivo, a chamada sem o parâmetro falhou para mim). E só então as mudanças permanentes funcionaram.Instalar o Windows (ou atualizá-lo) ao lado do Linux pode ser problemático.
Tente isto: https://help.ubuntu.com/community/Boot-Repair
Usei-o para corrigir um problema depois de instalar a pré-visualização técnica do Windows 10 e funcionou. Basicamente, o que ele faz é reinstalar o grub para funcionar com todos os sistemas operacionais atualmente instalados. Não deixe de pedir para instalar o grub na sua partição linux (sd #).
Boa sorte!
fonte
Antes de alterar partições, faça um backup e salve em outro dispositivo. Caso contrário, sda altere para corrigir a unidade. Em seguida, você poderá recomeçar se restaurar o conjunto incorreto com testdisk. Você deseja apenas toda a lógica atual e a falta de lógica ao restaurar com o testdisk.
Sua partição ausente está aqui ou entre o início da partição estendida em 1547 ... e a primeira partição mostrada em 1915 ...:
Você pode usar o testdisk, mas ele usa o CHS. Você precisa escolher todas as partições existentes e a partição ausente como lógica. Pode mostrar muitas versões, dependendo de quantas vezes você mudou as partições. Portanto, escolha o tamanho que corresponda à falta, sem sobrepor nenhuma outra partição atual. Alguns que foram restaurados corretamente foram capazes de inicializar, outros precisam reinstalar o grub. E alguns não conseguiram corrigir a partição de restauração.
http://www.cgsecurity.org/wiki/TestDisk_Step_By_Step
Outra ferramenta de restauração é o resgate separado. Ele usa setores, mas o intervalo fornecido deve estar fora da partição ausente, sem sobreposição com as partições atuais. Melhor se você souber o início e o fim exatos. Veja o homem se separou
http://www.gnu.org/software/parted/manual/html_node/rescue.html
Usuário que usou o resgate separado:
http://ubuntuforums.org/showthread.php?t=1775331&p=10905969#post10905969
fonte
É um bug desagradável no particionador do Windows, e não específico do Linux. Ironicamente, ele excluiu uma partição NTFS no meu caso.
O instalador do Windows 10 cria uma nova partição (sua
/dev/sda3
) cortada no final da partição principal do Windows,sda2
se a partição de inicialização do Windowssda1
for muito pequena para conter o Windows 10 Recovery Environment.Quando reescreve a tabela de partição para fazer isso, para todas as partições lógicas na tabela de partição estendida
sda4
, se estiver localizada no disco antes do número da partição anterior, ela desiste.No seu caso, suas partições Linux estavam localizadas no seu disco antes do seu novo
sda5
, mas tinham números de partição mais altos do quesda5
antes do reparticionamento.Se você examinar os enormes logs de atualização do Windows 10, verá uma mensagem como "6 antes das 5, nada a fazer", junto com as tabelas de partição antigas e novas.
O Windows não substitui o conteúdo das partições excluídas, portanto, é possível recuperá-las se você puder encontrar onde elas estão. No meu caso, eu tinha backups da tabela de partição, mas usar o testdisk, conforme explicado na resposta do oldfred, tem uma excelente chance de encontrar todos eles. O resgate com partição será difícil de usar, pois mais de uma partição foi excluída no seu caso.
Para usar o testdisk do seu CD do Ubuntu Live, em um tipo de terminal
sudo apt-get install testdisk
para instalá-lo esudo testdisk
executar.Depois de reparar a tabela de partições, a partição Linux que contém o GRUB agora pode ter um número diferente de antes, então você ainda pode acabar no prompt de resgate do GRUB. Nesse caso, o Reparo de inicialização agora poderá corrigir o GRUB.
Novamente, usando o seu Ubuntu Live CD, digite:
para instalar e executá-lo.
Agora o Windows pode concluir sua atualização.
fonte
Para usar o reparo de inicialização, você precisa definir no BIOS:
Ativar UEFI (no meu BIOS é :)
Suporte herdado DISABLE
Desativar inicialização segura
Provavelmente você tem o Secure Boot ativado, para obter o erro "arquivo assinado incorretamente".
fonte