Bootstrap

双系统下Archlinux安装记录

Archlinux安装记录

本文是一个缩写版的X61T安装双系统记录文件。主要参照了之前的一些文档,相比之前的第一次安装,已经很少在网上查找资料了。但还是会犯一些错误,更正这些错误也花了不少时间,当然问题解决后也加深了理解,因为犯错误的地方就是自己还没掌握的地方。所以还是那句老话,成功不是不犯错误,而是少犯错误和不犯同样的错误。

准备工作

言归正传,硬件是ThinkPad X61T基本满配,系统WIN7-64位已装。但C盘在第二分区上,开始没怎么注意C盘前有个100MB大小的分区(也就在这一点上吃了不少亏,详情见硬盘安装部分的“通过win7进入archlinux安装盘”)。
将archiso.img archlinux-xxxxxx-dual.iso intel_ucore.img拷贝到C盘底下
EasyBCD下编辑
root (hd0,1)
在inird /archiso.img之前再加 initrd /intel_ucore.img
archisolabel尽量简略点,按TAB时不会有错误。

启动电脑

mount -r -t ntfs /dev/sda1 /win     (对应之前的(hd0,1)!)

分区

采用cfdisk对硬盘进行分区

有点通用的概念,一个硬盘只能有四个主分区,如果要划多于4个的分区,必须将某一个先设置为一个扩展分区,然后在此扩展分区内再细分。
除了主分区以外所有的分区都是拓展分区,所以拓展分区也只有一个,拓展分区算是一个主分区,逻辑分区是拓展分区的一部分,所以只要你有一个拓展分区,逻辑分区没有限制。
最多有三个主分区加一个扩展分区,扩展分区里可以有多个逻辑分区。
对应地,将除去windows之后的所有free space共设为一个extended。即cfdisk /dev/sda后,将光标移到最后一项,选new,和所有大小(即显示大小不改动),回车后选extended,完成后显示类型为5 extended

布局如下:

deviceValue大小
/dev/sda5swap2.7G
/dev/sda6/20G
/dev/sda7/home剩余容量

正式格式化分区

mkfs.ext4 /dev/sda6
mkfs.ext4 /dev/sda7

用mkswap创建swap;

mkswap -c /dev/sda5

挂载分区:

要检查当前磁盘的标识符和布局:

lsblk /dev/sda

注意要按照顺序挂载,先把根目录挂载到 /mnt

mount /dev/sda6 /mnt
mkdir /mnt/home
mount /dev/sda7 /mnt/home

安装基本系统

pacstrap -i /mnt base base-devel

genfstab -U -p /mnt >> /mnt/etc/fstab
并检查

进入系统

arch-chroot /mnt /bin/bash
nano /etc/locale.gen
等等

locale-gen
echo LAMG=en_US.UTF-8 > /etc/locale.conf
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
hwclock --systohc --utc

开机自启动有线网络后台程序
显示如下:
Created symlink from /etc/systemd/system/multi-user.target.wants/[email protected] to /usr/lib/systemd/system/[email protected].

Configure pacman
nano /etc/pacman.conf

[multilib]
SigLevel = PackageRequired
Include = /etc/pacman.d/mirrorlist

创建初始RAM disk。
mkinitcpio -p linux

设置root密码

pacman -S grub
grub-mkconfig -o /boot/grub/grub.cfg

如果想直接安装到mbr就执行 # grub-install /dev/sdX 就好了。不然安装到分区 /dev/sda6。

modprobe dm-mod
grub-install --target=i386-pc --grub-setup=/bin/true --recheck --debug /dev/sda6
chattr -i /boot/grub/i386-pc/core.img
grub-install --target=i386-pc --recheck --debug --force /dev/sda6
mkdir -p /boot/grub/locale
cp /usr/share/locale/en@quot/LC_MESSAGES/grub.mo /boot/grub/locale/en.mo
chattr +i /boot/grub/i386-pc/core.img

安装sudo
pacman -S sudo
修改sudoers配置,nano /etc/sudoers
直接将# %sudo ALL=(ALL)这一行的注释去掉.

pacman -S bash-completion ntfs-3g

增加用户:
useradd -m -G users,audio,video,wheel,lp,optical,network,storage,sudo,dbus -s /bin/bash yourname

pacman -S xorg-server xorg-xinit xorg-utils xorg-server-utils xf86-video-intel mesa
Xorg -configure
在登录的用户(如/root)下生成一个xorg.conf.new的配置文件,移动到/etc/X11下,并改名为xorg.conf。
cp /root/xorg.conf.new /etc/X11/xorg.conf
pacman -S xfce4
startxfce4可启动图形界面。
nano /home/yourname/.xinitrc
去除exec startxfce4前的注释。

pacman -S lxdm
sudo systemctl enable lxdm.service

pacman -S alsa-utils
alsamixer
alsactl store
amixer sset Master unmute

pacman -S acpid # 监测 acpi 事件,用于电源管理
sudo systemctl enable acpid

pacman -S wqy-microhei ttf-dejavu

添加平板驱动
pacman -S xf86-input-wacom
设备热插拔问题
安装xf86-input-evdev:
pacman -S xf86-input-evdev

pacman -S ibus-rime
将以下设置添加到~/.profile中,如果没有这个文件就创建它:(我现在放在了.xsession中,)
export GTK_IM_MODULE=ibus
export XMODIFIERS=@im=ibus
export QT_IM_MODULE=ibus
ibus-daemon -d -x
上面的那个后台单词居然拼写错了!daemon daemon daemon

pacman -S networkmanager
配合network-manager-applet 以及notify显示
sudo systemctl disable dhcpcd
sudo systemctl enable NetworkManager
右击选择edit connections…
选中(创建)一个链接,如有线/无线,在IPv6 Settings 的Method 选择Ignore!!!

关于虚拟内存(非交换分区?,对于交换分区不可频繁使用的设置,参看前面的文档)
现在交换分区不能随机挂载,是否要加到fstab中?
添加前确认,该分区没有被使用!
在/etc/fstab中添加如下一行:
/dev/sda5 swap swap defaults 0 0

在fstab的参数设置里这列中不为0则为开机检测硬盘
在/boot/grub/grub.cfg中的内核启动参数中设置禁止开机检测项,即在linux /boot/vmlinuz-linux-lts root=UUID=510d7970-9aae-42e9-87c6-88ee08eb5f21 rw quiet后加上 nomodeset一项!!

sudo pacman -S mplayer vlc flashplugin

sudo pacman -S file-roller xarchiver p7zip unrar unzip zip arj lzop cpio
pacman -S cdrkit

automount
sudo pacman -S gvfs
sudo pacman -S udisks2

按 Ctrl + D 退出chroot。

卸载已经挂载的分区:

umount /mnt/home
umount /mnt

poweroff

;