Термінал GNU GRUB - замість екрана входу в Ubuntu


14

Примітка. Перш ніж позначити це як дублікат, будь ласка, прочитайте це питання повністю.

Я використовую Ubuntu 12.04 зазвичай, але сьогодні, коли я увімкнув ноутбук і вибрав Ubuntu з двох варіантів: Windows та Ubuntu, з'явився наступний екран:

введіть тут опис зображення

Я багато шукав тут, але не зміг знайти робоче рішення.

Одне рішення запропонувало мені зробити перший спочатку lsв різних розділах і подивитися, де знаходиться файл vmliuzчи initrdзнаходиться. Але я не знайшов, де ці файли.

Я також грав з яскравістю свого ноутбука, що може бути причиною цього застрялого екрану.

Редагувати 1:

Я досі не можу знайти каталог, який містить initrd.imgфайл.

grub> ls 
(memdisk) (hd0) (hd0,msdos3) (hd0,msdos2) (hd0,msdos1)
grub> set pager=1
grub> ls (memdisk)/
wubuilder.cfg
grub> ls (hd0)/
error: unknown filesystem.
grub> ls (hd0,3)/
$AttrDef $BadClus $Bitmap $Boot $Extend/ $LogFile $MFT $MFTMirr $RECYCLE.BIN/ $Secure $UpCase $Volume ./ Code School/ Downloads/ Movies/ System Volume Information/ ubuntu/ wubuilder
grub> ls (hd0, 2)/
Programming Files (x86)/ Users/ $AttrDef $BadClus $Bitmap $Boot $Extend/ $LogFile $MFT $MFTMirr $RECYCLE.BIN/ $Secure $UpCase $Volume ./ Documents and Settings/ hiberfil.sys Intel/ MSOCache/ pagefile.sys PerfLogs/ Program Files/ ProgramDAta/ Recovery/ Setup/ swsetup/ System Volume Information/ Windows/ wubildr wubildr.mbr
grub> ls (hd0, 1)/
$AttrDef $BadClus $Bitmap $Boot $Extend/ $LogFile $MFT $MFTMirr $RECYCLE.BIN/ $Secure $UpCase $Volume ./ Boot/ bootmgr BOOTSECT.BAK System Volume Information/

Редагувати 2:

Також зауважте, що я встановив Ubuntu 12.04 та Windows 7. А мій Ubuntu проживає в наступному місці; Я перевірив це, завантаживши ОС Windows:

grub ls (hd0,3)/ubuntu/
install/ uninstall-wubi.exe winboot/ 

Так, я використовував /наприкінці. Але мій формат був ls (hdx,msdosy)/, і xта yє числами. Чи варто мені ls /boot/також переконатися, що згадані файли існують там чи ні.
Арслан Алі

Відповіді:


11

Якщо ви встановили без Wubi.exe:

У відповідь grubпідкажіть наступні команди:

set pager=1
ls

Тепер, припустимо, результат ls:: (hd0) (hd0,msdos2) (hd0,msdos1), щоб знайти кореневу файлову систему linux:

ls (hd0,1)/ який повинен надавати вам усі файли / папки, /такі як bin/ boot/ cdrom/ dev/ etc/ home/ lib/тощо.

Після цього продовжуйте:

set root=(hd0,1)
linux /boot/vmlinuz-3.13.0-29-generic root=/dev/sda1
initrd /boot/initrd.img-3.13.0-29-generic
boot

Звичайно, замініть vmlinuz-3.13.0-29-genericі initrd.img-3.13.0-29-genericтим, що знайдете у своєму/boot

/dev/sda1- розташування кореневої системи. Можливо, вам доведеться його змінити, якщо /dev/sda1не вийшло.

Якщо ви встановили за допомогою Wubi.exe:

Якщо ви встановили Ubuntu за допомогою Wubi, виконайте такі дії, як зазначено в WubiGuide :

  1. завантажтеся в Windows, запустіть chkdsk /rз Windows на тому самому диску, де ви встановили Ubuntu, чисто вимкніть і потім спробуйте завантажитися в Ubuntu знову.

  2. якщо все-таки не добре, перевірте, чи є у вас C:\ubuntu\disks\root.diskфайл. Якщо цього файлу немає, завантажтесь у Windows, відкрийте Windows Explorer, встановіть його, щоб він міг бачити приховані папки, а потім шукайте приховану папку з назвою C:\found.000або dir0000.chk. Перемістіть файли з знайденого.000 у їх початкове місце всередині \ubuntu\disksкаталогу. Можливо, вам доведеться перейменувати його в root.disk.


Я стежив за вашими кроками, але поки не можу знайти /boot/. Я оновив своє запитання, будь ласка, перегляньте його.
Арслан Алі

Як ви встановили Ubuntu? Ви користувалисьwubi installer
Рон

Так @Ron, я встановив його через інсталятор wubi. Я це робив давно.
Арслан Алі

О людино! Це спрацювало нарешті. Я дотримувався тих самих інструкцій, які ви писали у своїй редакції, але формулюйте десь в іншому місці. Чи можете ви, будь ласка, змінити порядок і перенести останні письмові інструкції, пов’язані з \disks\root.diskвгору - це здається правильним - таким чином це здебільшого піде на користь, і я прийму вашу відповідь. Дійсно дякую.
Арслан Алі

Зверніть увагу, що найбільш ймовірною причиною цієї проблеми було примусове вимкнення ОС.
Арслан Алі

8

Виконайте ці команди

grub> linux  (hd0,1)/vmlinuz root=/dev/sda1
grub> initrd  (hd0,1)/initrd.img
grub> boot

Замініть hd0свій номер hdd та / dev / sda1 своїм розділом, де тримається / boot, головним чином, dafult буде працювати, якщо у вас немає більше одного hdd та з встановленням за замовчуванням

перевірте це для отримання додаткової інформації

Коли ви знову можете завантажуватись, ви повинні вирішити свою проблему

sudo update-grub

Чи не слід використовувати (hd0,msdos1)замість (hd0,1)?
Арслан Алі

Працює або
Maythux

На жаль, не вдається знайти цей розділ. Що я отримую: я оновив питання, будь ласка, перегляньте його.
Арслан Алі
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.