好吧,故事是这样的:
- 最近通过 unetbootin 的实时 USB 设置将 Ubuntu 13.04 安装在我的 Dell Inspiron 1745 上。
- Live USB 运行良好,使用 64 位映像,能够浏览网络、进行安装、运行所有更新以及安装过程中的其他操作,没有任何问题
- 安装完成后,没有产生任何错误(或者至少没有引起我注意的错误)
- 我重启后,出现了一个关于 Kernel Panic、not-syncing: no init found 的错误,建议使用 init= 选项,并让我查看 init.txt 文件。还有一些关于 Runaway Loop Mod 的内容(就我所有的研究而言,这似乎是关于错误架构的内容(即 64 位上的 32 位 :/))
现在,我并不像这里的一些真正的大师那样精通 Linux,但我会介绍一下我迄今为止所做的事情:
运行我的实时 USB 的磁盘完整性检查,以及我的电脑上的内存检查(两项检查均通过)
检查驱动器 FSTAB,似乎表明它知道挂载点为“/”。
- 检查了启动文件夹(因为似乎现在正在使用 grub2),其中包含 initrd.img-.. 和 vmlinuz-.... 文件。
- 检查了 grub.cfg 文件,查看它使用了哪些选项,它似乎引用了 root='hd0, msdos',虽然我对系统参考的经验表明它应该是 sd* 或类似的东西,但发现 Grub2 现在引用的是第一个 hdd(尽管在某些运行中尝试过更改它)
- 尝试重新安装多次
- 尝试在引导加载程序的 linux 部分中包含 init=(按下“e”,然后包含 initrd 文件的确切位置,因为我认为这就是它的意思)
- 使用调试模式,但发现无法检索任何信息。我尝试查看 /var/log/dmesg,但发现它显示(尚未记录任何内容。)。
- 我在多个论坛上搜索过,发现大多数修复方法似乎都不起作用。
- 已尝试 32 位和 64 位版本只是为了检查是否对其有影响。
所以我现在没有主意了,想知道是否有人可以建议尝试一些东西或寻找更多信息的地方,任何帮助都将不胜感激。
答案1
好吧……经过许多眼泪和努力,我终于解决了我的问题,尽管至少可以说这类似于使用火箭筒来对付一个人。因此,此解决方案需要一个 Ubuntu 的实时 USB / 实时 CD、互联网连接和一些耐心:
- 启动实时 USB,并使用测试 Ubuntu。
- 打开终端
cd /
sudo fdisk -l
现在使用 fdisk 的输出,确定你的 ubuntu 实际所在的驱动器。输出应该类似于 fdiskhttp://paste.ubuntu.com/5758404/但请注意,实时 USB/CD 会有一条额外的线路。
接下来我们要挂载它,因此命令是
sudo mount /dev/<device-ubuntu-is-on> /mnt
。现在从技术上讲,您可以在许多地方执行此操作,但这是为了简单起见。事情变得有点烦人,所以你必须做一些绑定:
sudo mount --bind /dev/ /mnt/dev/ sudo mount --bind /proc/ /mnt/proc sudo mount --bind /dev/pts /mnt/dev/pts sudo mount --bind /sys/ /mnt/sys
在此之后,确保您已连接到互联网,然后使用以下命令,此命令以及其他命令可让您访问互联网以进行下一步。
sudo cp /etc/resolv.conf /mnt/etc/resolv.conf
sudo chroot /mnt
从这里开始,通过 apt-get 一切都变得非常清晰,无论如何我都会去完成它。
sudo apt-get update sudo apt-get dist-upgrade
现在,所有这些工作应该已经完成了,内核以及硬盘上几乎所有软件包的升级,同时 grub2 也更新了新内核等等。为了确保遵循正确的做法,您应该卸载必要的文件:
sudo umount /mnt/dev/ sudo umount /mnt/proc/ sudo umount /mnt/dev/pts sudo umount /mnt/sys/ sudo umount /mnt/
说实话,我不明白这一点,因为它是一个实时磁盘,尽管我确信有一个。
我不能把这个修复归功于我自己,因为我并不是专家。我从这里得到了很多帮助:http://ubuntuforums.org/showthread.php?t=1439061还有 freenode.net 上 #ubuntu irc 频道的友好频道冲浪者。
老实说,我不知道这是否对每个人都有帮助,但它让我的 Ubuntu 可以正常工作,并且更新了所有内容。