ASUS ZenBook U303UB 6200 笔记本安装archlinux笔记

fbcha   •   2016-12-17   •  

ASUS ZenBook U303UB 6200 笔记本配置:

CPU:六代intel i5-6200
内存:4GB 可扩展
硬盘:500GB 机械硬盘
显卡:NVIDIA GeForce 940M(独显)
13.3寸屏,1920x1080分辨率

原装windows 10 home 操作系统,默认分了两个分区,直接把archlinux装在了第二个分区上,运行双系统。

装archlinux前先进bios把secure boot关闭了,一定要关掉,否则无法安装archlinux,当然也有另外的方法,关闭secure boot最为省事 :)

下载archlinux系统镜像,可以直接在官方下载,http://www.archlinux.org

把下载的archlinux镜像文件写入到u盘中,windows下有很多工具,其它系统也可以用命令写入,网上有很多方法,默认的window 10系统使用的是uefi引导方式,所以直接使用就可以了。

用做好的u盘启动,进入,出现命令界面,进行安装盘的配置:

之前网上找到的教程要设置键盘布局、字体、语言什么的,个人感觉没什么必要,除非有些机型,一般没什么问题,显示语言尽量不用动,因为如果设成中文的话,会出现乱码,这个需要改动内核了。网络和pacman软件仓库是要设置的。

网络设置:
因为zenbook u303ub 是一款便携本,所以是不能插网线的(除非外接),直接联接无线网络就可以了,可以使用下边的命令:

1
# wifi-menu

然后选择你的网络连接。

pacman 软件仓库镜像服务器:

1
2
3
4
5
6
软件仓库全部服务器列表,可以手动去掉前边的“#”启用,然后使用 pacman-Syy 更新本地数据
# nano /etc/pacman.d/mirrorlist
也可以通过下边的方法直接选择所有中国大陆镜像服务器
# grep -A 1 'China' /etc/pacman.d/mirrorlist // 查看所有中国大陆镜像
# sed -i '/Score/{/China/!{n;s/^/#/}}' /etc/pacman.d/mirrorlist // 选择所有中国大陆镜像
# pacman -Syy // 更新本地数据

分区:
可以使用fdisk工具来分区,用 lsblk来查看磁盘及分区,因为我的在一块硬盘上装双系统,所以直接把第二分区划分了一个swap分区和系统分区,用mkfs.ext4来格式化系统分区,用mkswap来创建swap分区,用swapon来激活swap分区;这里的设备名移是我的磁盘划分(比如 sda5、sda6),具体可根据自己的实际情况划分:

1
2
3
4
5
6
7
8
# lsblk // 查看磁盘及分区
# mkfs.ext4 /dev/sda5 // 创建ext4分区
# mkswap /dev/sda6 // 创建swap交互分区
# swapon /dev/sda6 // 激活交互分区
挂载分区:
# mount /dev/sda5 /mnt // 挂载根目录
# mkdir -p /mnt/boot/EFI // 创建UEFI挂载点
# mount /dev/sda1 /mnt/boot/EFI // 挂载UEFI分区,sda1 是共用的UEFI分区,windows的也在这里

安装基础系统:

1
# pacstrap -i /mnt base base-devel

配置fstab:
不要重复使用genfstab生成fstab,如果有问题直接修改fstab。

1
2
# genfstab -U /mnt >> /mnt/etc/fstab // 生成fstab
# cat /mnt/etc/fstab // 检查生成的fstab

配置系统:

1
2
# arch-chroot /mnt /bin/bash // 切换到根目录
# ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime // 设置中国大陆时区

硬件时间设置,推荐utc,如果是双系统的话要注意保持两个系统用同样的时间设置,windows使用的是CST时间,设置不对的话,两个系统时间会不同步,所以尽量的让两个系统使用同一时间设置,这里我使用的是本地时间,和windows同步(懒得去修改windows时间 ^_^) :

1
2
# hwclock --systohc --utc // UTC标准时间
# hwclock --systohc --localtime // 本地时间

主机名:

1
2
3
4
5
# echo fbchalinux > /etc/hostname
# nano /etc/hosts // 将主机名填入
快速设置
# HOSTNAME='fbchalinux'; echo $HOSTNAME > /etc/hostname; \
sed -i '/localhost/s/$/\t'"$HOSTNAME"'/g' /etc/hosts

无线网络:

1
# pacman -S iw wpa_supplicant dialog

设置root用户密码,创建一个日常用户,添加wheel用户组能够使用sudo

1
2
3
4
5
# passwd // 设置root用户密码
# useradd -m -g users -G wheel -s /bin/bash fbcha // 创建日常用户"fbcha"并添加到wheel用户组
# passwd fbcha // 为fbcha设置密码
编辑sudsers文件,去掉 %wheel ALL=(ALL) 注释,允许wheel用户组使用sudo
# nano /etc/sudoers

安装UEFI引导:
如果多系统可以安装os-prober自动检索其它系统

1
2
3
# pacman -S dosfstools grub efibootmgr os-prober
# grub-install --target=x86_64-efi --efi-directory=/boot/EFI --bootloader-id=arch_grub --recheck
# grub-mkconfig -o /boot/grub/grub.cfg

卸载分区并重启:

1
2
3
4
# exit // 退回安装环境
# umount -R /mnt // 卸载新分区
# reboot // 重启
拔掉U盘

以上是安装,下边是安装后的一些配置,根据自已需要进行安装。

配置图形界面(本人用的是xfce4桌面环境):

安装显卡驱动:

1
2
3
4
5
6
7
# lspci | grep "3D|VGA" // 确定显卡型号,如果只有集显的话可以把3D去掉
# pacman -S xf86-video-vesa // 通用显卡驱动
# pacman -S xf86-video-intel // intel核显驱动
# pacman -S nvidia // nvidia 显卡驱动
如果双显卡想使用nvidia的optimus技术的话,可以使用bumblebee来实现,因为nvidia的optimus技术在linux下是无法使用的,可以用第三方技术来实现,使用bumblebee方式可以用下边的方法安装,来解决依赖问题:
# pacman -S intel-dri xf86-video-intel bumblebee nvidia
# gpasswd -a fbcha bumblebee // 把用户添加到bumblebee用户组

安装X窗口系统服务:

1
2
3
# pacman -S xorg-server xorg-server-utils
# pacman -S xf86-input-synaptics // 触控板驱动
# pacman -S ttf-dejavu wqy-microhei // 安装字体

安装桌面环境:

1
# pacman -S xfce4 xfce4-goodies

安装输入法:

1
2
3
4
5
6
7
# pacman -S fcitx-im fcite-configtool // 安装fcitx
配置输入法
# nano ./.xinitrc // 编辑.xinitrc 没有可以自行创建,在用户目录,然后写入以下信息
export LANG=zh-CN.UTF-8
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS="@im=fcitx"

安装网络连接:

1
2
3
4
5
# pacman -S networkmanager network-manager-applet xfce4-notifyd hicolor-icon-theme gonme-icon-theme gnome-keyring
如果有dhcpcd则关闭
# systemctl disable dhcpcd.service
# systemctl enable NetworkManager
# systemctl start NetworkManager

安装Bluetooth:

1
2
3
4
5
6
7
# pacman -S bluez bluez-utils blueman
# systemctl enable bluetooth
如果需要开机启动蓝牙:
# nano /etc/udev/rules.d/10-local.rules
写入以下内容:
# Set bluetooth power up
ACTION=="add", KERNEL=="hci0", RUN+="usr/bin/hciconfig hci0 up"

安装yaourt:

1
2
3
4
5
6
7
8
# nano /etc/pacman.conf // 编辑pacman.conf,写入以下内容
[archlinuxcn]
SigLevel = Optional TrustedOnly
Server = http://mirrors.163.com/archlinux-cn/$arch
更新本地数据
# pacman -Syy
安装yaourt
# pacman -S yaourt

关闭独显:
下面的配置文件如果没有需要自行创建

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# pacman -S bbswitch
# nano /etc/modules-load.d/bbswitch.conf // 写入下边内容,每次启动都会加载bbswitch模块
bbswitch
# nano /etc/modprobe.d/bbswitch.conf // 写入下边内容,关闭bbswitch默认加载参数
options bbswitch load_state=0
# nano /etc/modprobe.d/nouveau_blacklist.conf
写入下边内容,有时候bbswitch加载了,但是不能关闭显卡,因为有些模块正在占用着,因此要禁掉
blacklist nouveau
blacklist nvidiafb
# nano /usr/lib/systemd/system-shutdown/nvidia_card_enable.sh
需要运行权限,写入下边内容,每次reboot的时候,显卡都是关闭的,不管是重启到windows还是linux,都会找不到设备,必须彻底关机才行。解决该问题的办法就是每次重启都启用显卡。
#!/bin/bash
case "$1" in
reboot)
echo "Enabling NVIDIA GPU"
echo ON > /proc/acpi/bbswitch
;;
*)
esac

配置laptop-mode-tools:

1
2
3
4
5
6
7
8
9
# yaourt -S laptop-mode-tools
# pacman -S hdparm cpupower
# systemctl enable cpupower.service
修改 /etc/laptop-mode/laptop-mode.conf
ENABLE_LAPTOP_MODE_ON_AC=0
默认为 0 ,这里可以修改为 1 ,使用外接电源时也启用laptop_mode
CONTROL_HD_IDLE_TIMEOUT=1 // 默认为 1 ,修改为 0
BATT_HD_POWERMGMT=1 // 默认为 1 ,修改为128
# systemctl enable laptop-mode.service

安装声音工具:

1
# pacman -S alsa-utils

配置Fn+快捷键:

1
2
3
4
5
6
7
8
9
10
11
编辑 /etc/default/grub
# nano /etc/default/grub
将 GRUB_CMDLINE_LINUX_DEFAULT="quiet" 修改为:
GRUB_CMDLINE_LINUX_DEFAULT="quiet acpi_osi="
# nano /usr/share/X11/xorg.conf.d/20-intel.conf // 如没有自行创建,写入下边内容
Section "Device"
Identifier "card0"
Driver "intel"
Option "Backlight" "intel_backlight"
BusID "PCI:0:2:0"
EndSection

到此,archlinux 安装配置完毕,以上只是按本人机器做的安装和配置,会和实际情况或其它机型有所不同,仅供参考。