我在上网本 - Acer AS 1410 上运行 Ubuntu 12.04。
下载完成后,我重新启动了计算机,它显示:
error: hd0 out of disk. Press any key to continue...
我按了所有按钮,但它只是冻结在那里。
知道它出了什么问题吗?我能做些什么来修复它?自从它这样冻结以来,我的电脑根本无法运行。请帮忙!
我启动了 Live CD 并进入sudo fdisk -lu
终端,它给了我以下内容:
Disk /dev/sda: 60.0 GB, 60022480896 bytes
255 heads, 63 sectors/track, 7297 cylinders, total 117231408 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: 0x9a696263
Device Boot Start End Blocks Id System
/dev/sda3 2048 117229567 58613760 5 Extended
/dev/sda5 * 71647232 109039615 18696192 83 Linux
/dev/sda6 109041664 117229567 4093952 82 Linux swap / Solaris
/dev/sda7 4096 71645183 35820544 83 Linux
Partition table entries are not in disk order
我在这方面还是个初学者,所以不知道这是什么意思。有什么想法吗?谢谢!
答案1
我相信您已经升级过很多次,并且有很多旧的 Linux 内核填满了您的 grub 分区。
我认为您必须从实时 DVD 或 USB 启动,安装 HD 启动分区,查看它是否确实已满,如果是的话,请手动删除几个旧内核。
如果您没有备份,您可以先将您的 ~/ 复制到安全的地方。
答案2
从 Live-Usb 开始。
已完成的加载会话:
打开一个终端。
按Ctrl++AltT
运行:
sudo -i
umount /dev/sda5
fsck -y /dev/sda5
umount /dev/sda6
fsck -y /dev/sda6
mount /dev/sda5 /mnt
mount --bind /dev /mnt/dev
mount --bind /dev/pts /mnt/dev/pts
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys
chroot /mnt
apt-get update
apt-get autoremove
apt-get clean
UNUSCONF=$(dpkg -l|grep "^rc"|awk '{print $2}')
apt-get remove --purge $UNUSCONF
NEWKERNEL=$(uname -r|sed 's/-*[a-z]//g'|sed 's/-386//g')
ADDKERNEL="linux-(image|headers|ubuntu-modules|restricted-modules)"
METAKERNEL="linux-(image|headers|restricted-modules)-(generic|i386|server|common|rt|xen)"
UNUSKERNELS=$(dpkg -l|awk '{print $2}'|grep -E $ADDKERNEL |grep -vE $METAKERNEL|grep -v $NEWKERNEL)
apt-get remove --purge $UNUSKERNELS
grub-install --root-directory=/mnt /dev/sda
grub-install --recheck /dev/sda
umount /mnt
reboot
答案3
我遇到了这样的问题。
error: hd0,msdos1 out of disk.
grub rescue>
原因是内存条没有完全插入插槽。我把内存条拆下来重新安装,检查内存条是否完全插入插槽,是否锁好。操作完成后,系统正常启动。
P.S: CPU: Pentium 4, 2.4 GHz. MotherBoard: ASUS P4P800; OS Linux MINT 10 «Julia» (32-bit)