昨天更新过系统,更新着更新着貌似出了什么问题,当时也没多留意,今日开机, 悲剧了
Unable to find root device /dev/disk/by-uuid/…
估计是更新内核的时候出了岔子。在强大的google和的帮助下我的Arch终于得以复生。
启动安装光盘
首先得想办法进入archlinux的备用系统,无奈手上无光盘,但庆幸的是机子上有一光盘镜像,grub2也仍建在(还好当初给boot另外分了一个区), grub2是可以引导启动镜像文件的。参照wiki上的方法
按c进入grub2的控制台
set isofile="archlinux-2011.08.19-core-i686.iso"
loopback loop (hd0,msdos6)/$isofile
linux (loop)/arch/boot/i686/vmlinuz archisolabel=ARCH_201108 img_dev=/dev/sda6 img_loop=$isofile earlymodules=loop
initrd (loop)/arch/boot/i686/archiso.img
boot
挂载一些必要的目录
挂载root
mkdir /mnt/arch
mount /dev/sda7 /mnt/arch
挂载启动分区(如果是独立分区的话)
mount /dev/sda9 /mnt/arch/boot
挂载 /dev, /sys, /proc, 这些mkinitcpio要用的
mount -t proc none /mnt/arch/proc
mount -t sysfs none /mnt/arch/sys
mount --bind /dev /mnt/arch/dev
chroot 到系统
chroot /mnt/arch
相当于以非正常的途径进入到系统里了
终端下无线上网
住的地方用的是共享的wlan,由于之前一直是在gui下面用networkmanager管理wlan,但是现在木有图形界面,只好去寻找终端下wlan的解决方案。
如果是用wep加密的,可以用下面这条命令
iwconfig wlan0 essid "MyEssid" key xxx
我这里的是wpa加密的,必须得有一个额外的wpa_supplicant模块
生成一个配置文件
wpa_passphrase 'essid' 'passwd' > /etc/wpa_supplicant.conf
启动网卡
ip link set wlan0 up
连接到网络
wpa_supplicant -B -Dwext -i wlan0 -c /etc/wpa_supplicant.conf
分配地址
dhcpcd wlan0
重新建立启动镜像
pacman -Syu
pacman -S udev
pacman -S mkinitcpio
mkinitcpio -p linux
reboot
重启,熟悉的画面终于回来了