最终效果
本来以前一直是用ubuntu作为日常使用系统的,没想到买了联想yoga 14s之后,这个4800U新到ubuntu内核都没驱动,然后archlinux也要换成zen内核才有,于是只能用archlinux试试了。
结果一试发现好爽。。回不去了。。kde的华丽效果,居然还没有一丝卡顿,开机内存也仅仅只是一个G,就这么用着试试先吧= =
前期安装
官网下载:https://www.archlinux.org/
安装指南:https://wiki.archlinux.org/index.php/Installation_guide (中文)
参考博客:https://www.viseator.com/2017/05/17/arch_install/
1、Arch开始
arch Linux没有图形界面,U盘启动之后选第一个,进去shell界面
2、联网
arch linux的安装必须联网,安装包都得网上下载所以必须要先联网
无线网络
1
wifi-menu
有线网络并且路由器支持DHCP
1
dhcpcd
检查
1
ping www.baidu.com
3、更新系统时间
1 | timedatectl set-ntp true |
4、分区与格式化
4.1. 标准UEFI分区参考:
4.2. fdisk分区操作
4.2.1.重置磁盘
安装要是空硬盘就最好,如果不是空硬盘就先重置硬盘吧
1 | fdisk -l #列出磁盘情况 |
1 | fdisk /dev/nvme0n1 #进入fdisk操作界面,参数为你的磁盘名字 |
4.2.2. 重新分区
参考标准分区来,有条件可以独立给/home 一个分区,这样重装就可以不用动他
1 | fdisk /dev/nvme0n1 #进入fdisk操作界面,参数为你的磁盘名 |
4.2.3. 格式化分区
1 | mkfs.fat -F32 /dev/nvme0n1p1 #格式化EFI分区 |
4.2.4. 挂载分区
1 | mount /dev/nvme0n1p2 /mnt #将根分区挂载到/mnt |
5、安装系统
5.1. 更换安装源
镜像源是我们下载的软件包的来源,我们需要根据自己的地区选择不同的源来加快下载的速度。
执行以下命令,用Vim
来编辑/etc/pacman.d/mirrorlist
这个文件
1 | vim /etc/pacman.d/mirrorlist |
我们的目标是把中国源放最上面去,找包会按顺序找起
5.2. 安装系统和基本包
下面就要安装最基本的ArchLinux
包到磁盘上了。这是一个联网下载并安装的过程。
执行以下命令:
1 | pacstrap /mnt base base-devel linux linux-firmware dhcpcd |
如果不想用默认的arch内核,可以用激进的zen内核,那么这里就换一个内核包
1 | pacstrap /mnt base base-devel linux-zen linux-firmware dhcpcd |
当然内核也能以后再更换。
根据下载速度的不同在这里需要等待一段时间,当命令提示符重新出现的时候就可以进行下一步操作了。
5.3. 配置Fstab
生成自动挂载分区的fstab
文件,执行以下命令:
1 | genfstab -L /mnt >> /mnt/etc/fstab |
由于这步比较重要,所以我们需要输出生成的文件来检查是否正确,执行以下命令:
1 | cat /mnt/etc/fstab |
5.4. Chroot到新装系统
Chroot
意为Change root
,相当于把操纵权交给我们新安装(或已经存在)的Linux
系统,执行了这步以后,我们的操作都相当于在磁盘上新装的系统中进行。
执行如下命令:
1 | arch-chroot /mnt |
这里顺便说一下,如果以后我们的系统出现了问题,只要插入U盘并启动, 将我们的系统根分区挂载到了
/mnt
下(如果有efi
分区也要挂载到/mnt/boot
下),再通过这条命令就可以进入我们的系统进行修复操作。
5.5. 设置时区
依次执行如下命令设置我们的时区为上海并生成相关文件:
1 | ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime |
5.6. 安装基本包
安装包的命令格式为pacman -S 包名
,pacman
会自动检查这个包所需要的其他包(即为依赖)并一起装上。下面我们就通过pacman
来安装一些包,这些包在之后会用上,在这里先提前装好。
1 | pacman -S vim dialog wpa_supplicant ntfs-3g networkmanager netctl |
一路确认之后包就被成功装上了。
5.7. 设置Locale
设置我们使用的语言选项,执行如下命令来编辑/etc/locale.gen
文件:
1 | vim /etc/locale.gen |
在文件中找到zh_CN.UTF-8 UTF-8
zh_HK.UTF-8 UTF-8
zh_TW.UTF-8 UTF-8
en_US.UTF-8 UTF-8
这四行,去掉行首的#号,保存退出并执行locale-gen
。
打开(不存在时会创建)/etc/locale.conf
文件:
1 | vim /etc/locale.conf |
在文件的第一行加入以下内容:
1 | LANG=en_US.UTF-8 |
保存并退出。
5.8. 设置主机名
打开(不存在时会创建)/etc/hostname
文件:
1 | vim /etc/hostname |
在文件的第一行输入你自己设定的一个myhostname
保存并退出。
编辑/etc/hosts
文件:
1 | vim /etc/hosts |
在文件末添加如下内容(将myhostname
替换成你自己设定的主机名)
1 | 127.0.0.1 localhost |
保存并退出。
5.9. 设置Root密码
Root
是Linux
中具有最高权限帐户,有些敏感的操作必须通过Root
用户进行,比如使用pacman
,我们之前进行所有的操作也都是以Root
用户进行的,也正是因为Root
的权限过高,如果使用不当会造成安全问题,所以我们之后会新建一个普通用户来进行日常的操作。在这里我们需要为Root
帐户设置一个密码:
1 | passwd |
按提示设置并确认就可以了。
5.10. 安装CPU升级补丁
如果为intel cpu
1 | pacman -S intel-ucode |
如果为amd cpu
1 | pacman -S amd-ucode |
5.11. 安装Bootloader
经常听说很多人因为引导问题导致系统安装失败,多数是因为教程没有统一或是过时的教程引起的,这里只要按照步骤来其实是不难的。这里我们安装最流行的Grub2
。(如果曾经装过Linux,记得删掉原来的Grub,否则不可能成功启动)
首先安装
os-prober
和ntfs-3g
这两个包,它可以配合Grub
检测已经存在的系统,自动设置启动选项。1
pacman -S os-prober ntfs-3g
如果为EFI/GPT引导方式:
安装
grub
与efibootmgr
两个包:1
pacman -S grub efibootmgr
生成配置文件:
1
grub-mkconfig -o /boot/grub/grub.cfg
部署
grub
:1
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=grub
出现
Installation finished. No error reported.
字样表示安装成功。
5.12. 取消挂载并重启
至此archlinux其实已经安装好了,接下来,你需要进行重启来启动已经安装好的系统,执行如下命令:
1 | exit |
如果挂载了/mnt/boot,先umount /mnt/boot,再umount /mnt,否则直接umount /mnt:
1 | umount /mnt/boot |
注意这个时候你可能会卡在有两行提示的地方无法正常关机,长按电源键强制关机即可,没有影响。
关机后拔出U盘,启动顺序会自动以硬盘启动,如果一切顺利,你将看到一个shell登陆界面。
输入root
,再输入之前设置的密码,显示出命令提示符,恭喜你,你已经成功安装ArchLinux
!
后期定制及美化
安装指南:https://wiki.archlinux.org/index.php/General_recommendations (中文)
参考博客:https://www.viseator.com/2017/05/19/arch_setup/
1、更换内核
arch linux的安装必须联网,安装包都得网上下载所以必须要先联网
无线网络
1
wifi-menu
有线网络并且路由器支持DHCP
1
dhcpcd
检查
1
ping www.baidu.com
参考wiki:https://wiki.archlinux.org/index.php/Kernel
参考博客:
这里我会换成zen内核,所以操作如下:
1 | pacman -S linux-zen ##安装内核 |
2、创建普通用户
在这之前所有操作都是以root
用户的身份进行的,由于root
的权限过高,日常使用root
用户是不安全的。Linux
为我们提供了强大的用户与组的权限管理,提高了整个系统的安全性。这里我们就来新建一个用户。
执行以下命令来创建一个名为username
的用户(请自行替换username
为你的用户名):
1 | useradd -m -G wheel username (请自行替换username为你的用户名) |
在这里稍微解释一下各参数的含义:
-m
:在创建时同时在/home
目录下创建一个与用户名同名的文件夹,这个目录就是你的家目录啦!家目录有一个别名是~
,你可以在任何地方使用~
来代替家目录路径。这个神奇的目录将会用于存放你所有的个人资料、配置文件等所有跟系统本身无关的资料。
-G wheel
:-G
代表把用户加入一个组,对用户与组的概念感兴趣的同学可以自行查找有关资料学习。后面跟着的wheel
就是加入的组名,至于为什么要加入这个组,后面会提到。
当然记得为新用户设置一个密码,执行如下命令:
1 | passwd username (请自行替换username为你的用户名) |
根据提示输入两次密码就可以了,注意,这是你的用户密码,推荐与之前设置的root
用户的密码不同。
3、日常配置
3.1. 配置sudo和vim
sudo
本身也是一个软件包,所以我们需要通过pacman
来安装(没想到连这个都没有。。。):
1 | pacman -S sudo |
接下来我们需要用专门的visudo
命令来编辑sudo
的配置文件(前面这句是为了创建vim
到vi
的软链接避免找不到vi
编辑器):
1 | ln -s /usr/bin/vim /usr/bin/vi |
实际上就是vim
的操作,使用它是为了对编辑后的文件进行检查防止格式的错误。
找到
1 | %wheel ALL=(ALL)ALL |
这行,去掉之前的#
注释符,保存并退出就可以了。
这里的%wheel
就是代表wheel
组,意味着wheel
组中的所有用户都可以使用sudo
命令。
当然为了安全使用sudo
命令还是需要输入当前用户的密码的。
配置好sudo
以后,我们进行一次重启,重启以后输入你刚创建的用户名与密码来登录。注意登录后要重新进行联网操作。
3.2. 启用 NTP 同步时间服务
1 | sudo systemctl enable systemd-timesyncd.service |
3.3. 安装 CPU 调频守护程序
CPU 调频守护程序可以帮助我们更好的控制 CPU 的频率和功耗
安装:sudo pacman -S cpupower
启用:sudo systemctl enable cpupower
3.4. 安装蓝牙支持
安装:sudo pacman -S bluedevil bluez bluez-utils pulseaudio-bluetooth
启用:sudo systemctl enable --now bluetooth
4、安装图形界面
4.1. 显卡驱动的安装
参照这个表格,安装相应的包,比如你是amd
的集成显卡(绝大多数人的情况),执行:
1 | sudo pacman -S xf86-video-amdgpu |
4.2. 安装Xorg
Xorg是Linux下的一个著名的开源图形服务,我们的桌面环境需要Xorg的支持。
执行如下命令安装Xorg及相关组件:
1 | sudo pacman -S xorg |
回车和y确认即可
4.3. 安装KDE(Plasma)
直接安装软件包组(包含了很多软件包)即可:
1 | sudo pacman -S plasma kde-applications |
4.4. 安装桌面管理器sddm
安装好了桌面环境包以后,我们需要安装一个图形化的桌面管理器来帮助我们登录并且选择我们使用的桌面环境,这里我推荐使用sddm
。执行:
1 | sudo pacman -S sddm |
4.5. 设置开机启动sddm服务
这里就要介绍一下Arch
下用于管理系统服务的命令systemctl
了,服务的作用就是字面意思,为我们提供特定的服务,比如sddm
就为我们提供了启动xorg
与管理桌面环境的服务。
命令的使用并不复杂:
1 | sudo systemctl start 服务名 (启动一项服务) |
所以这里我们就执行下面命令来设置开机启动sddm
:
1 | sudo systemctl enable sddm |
5、重新配置网络
到现在我们已经安装好了桌面环境,但是还有一件事情需要我们提前设置一下。由于我们之前使用的一直都是netctl
这个自带的网络服务,而桌面环境使用的是NetworkManager
这个网络服务,所以我们需要禁用netctl
并启用NetworkManager
:
1 | sudo systemctl disable netctl |
同时你可能需要安装工具栏工具来显示网络设置图标(某些桌面环境已经装了,但是为了保险可以再装一下):
1 | sudo pacman -S network-manager-applet |
这样开机以后我们就可以在图形界面下配置我们的网络啦。重启继续美化
6、安装日用软件
6.1. 安装chrome浏览器
Chromium 是开源版的 Google Chrome,它们的区别:
https://en.wikipedia.org/wiki/Chromium_(web_browser)#Differences_from_Google_Chrome
1.程序图标:两者图标只在色彩上不同,Chromium是天蓝色,而Chrome是Google公司的代表色(红、黄、蓝、绿);
2.自动更新:Chromium不开放自动更新功能,所以用户需要手动下载更新,而Chrome则可自动脸上Google的服务器更新,但新版的推出很慢;
3.安装模式:Chromium可以免安装,下载zip压缩包后解压即可使用,而Chrome则只有安装板;
4.功能差异:新功能会率先在Chromium上推出,Chrome则会相对落后很多。
安装命令:
1 | sudo pacman -S chromium |
6.2. 安装中文字体及输入法
不装的话中文会变成小方格,省事我们就装文泉驿好了,有更好看的再美化
1 | sudo pacman -S noto-fonts noto-fonts-cjk noto-fonts-extra ttf-liberation ttf-dejavu |
安装中文输入法,这个remi输入法比搜狗好用多了= =
1 | pacman -S fcitx fcitx-rime fcitx-im kcm-fcitx |
空文件写入这些本地化配置:
1 | export LANG=zh_CN.UTF-8 |
qw
保存之后reboot
重启即可
注意:这里这么配置会把整个环境完全变成中文环境,如果你像我一样不希望shell提示也变成中文的话,就不要配这个,在系统的设置中心里面加中文就可以了
6.3. Typora
为了可以先用这笔记本开始记录安装实况,所以先装了这个md编辑器。
还没有装AUR工具,所以先在AUR仓库搜索这个软件包。
地址:https://aur.archlinux.org/packages/typora/
点击右边的Download snapshot
下载压缩包到本地,然后解压安装:
1 | tar -xvf typora.tar.gz |
6.4. 安装AUR工具
这里我选择yay,主要是看起来比较短= =
先安装下git:sudo pacman -S git
还是先在AUR仓库搜索这个软件包。
地址:https://aur.archlinux.org/packages/yay/
点击右边的Download snapshot
下载压缩包到本地,然后解压安装:
1 | tar -xvf yay.tar.gz |
好的这种官方的方式不行,傻逼go语言编译还要再远程拉包,然后我们被墙了。。。
好在在github看到有人提了issues,我们加个国内的镜像库,参考链接:https://www.archlinuxcn.org/archlinux-cn-repo-and-mirror/
1 | sudo vim /etc/pacman.conf |
6.5. 修复discover
这个鬼东西默认装好还用不了,利用sudo pacman -Qi discover
查看一下依赖,把必选和可选的依赖都装上:
1 | sudo pacman -S knewstuff kitemmodels kdeclarative qt5-graphicaleffects appstream-qt archlinux-appstream-data hicolor-icon-theme kirigami2 discount kuserfeedback |
6.6. 安装ZSH
用惯了这个,没有好不习惯,先装回来:
1 | sudo pacman -S zsh |
6.7. 跳过grub
修改/etc/default/grub
文件
1 | sudo vim /etc/default/grub |
6.8. 安装解码器
Kid3 — MP3, Ogg/Vorbis, FLAC, MPC, MP4/AAC, MP2, Speex, TrueAudio, WavPack, WMA, WAV and AIFF files tag editor.
1 | sudo pacman -S kid3 |
7、美化环境
7.1. 安装latte-dock
所谓的dock就是一个停靠栏面板,安装好启动一下就可以设置了:
1 | sudo pacman -S latte-dock |
7.2. 挑选主题和图标
安装网页工具:
1 | sudo pacman -S ocs-url |
去官网挑选主题:
https://store.kde.org/p/1354062
https://store.kde.org/p/1294729
7.3. 安装QQ和微信
直接装如果依赖报错,如下:
1 | ➜ ~ sudo pacman -S deepin.com.qq.im |
那么你跟我一样是有个32位包没装,先装一下再执行:
使用文本编辑器打开/etc/pacman.conf,找到
1 | #[multilib] |
将之修改为
1 | [multilib] |
而后sudo pacman -Syyu
接下来就能正常安装了:
1 | sudo pacman -S deepin.com.qq.im |
系统设置——开机和关机——自动启动——双击GNOME开头的那个程序——勾选开启——点击右下角高级——只在Plasma中自动启动——完成
重启之后再打开QQ,能用。
微信同理:
1 | yay -S deepin.com.wechat2 |
安装完一切都很好,就是QQ图片显示不出来,查了一下发现是qq默认使用了ipv6,禁用一下就可以了:
1 | sudo vim /etc/default/grub |
7.4. 修改wine字体
1.下载字体包msyh.ttc:
链接
下载后解压,
1 | cp msyh.ttc ~/.deepinwine/Deepin-WeChat/drive_c/windows/Fonts |
2.修改注册序列表
1 | gedit ~/.deepinwine/Deepin-WeChat/system.reg |
修改MS Shell Dlg和MS Shell Dlg2的值如下
1 | "MS Shell Dlg"="msyh" |
3.注册字体
1 | gedit msyh_config.reg |
将一下内容添加在msyh_config.reg中
1 | REGEDIT4 |
4.注册
1 | deepin-wine regedit msyh_config.reg |
然后在重启微信就成功了。目前阶段没有出现问题。后续有问题进行更新。
7.5. 调整色温
安装redshift
:
1 | sudo pacman -S redshift |
To instantly adjusts the color temperature of your screen use:
1 | redshift -P -O TEMPERATURE |
where TEMPERATURE is the desired color temperature(between 1000
and 25000
).
7.6. 主题图标和皮肤
这个见仁见智吧。。。自己去搜索下,这里给出我最后选的配置:
1 | -` lin@voidChen |
7.7. 小部件
网速小部件:https://store.kde.org/p/998895/
菜单小部件:https://store.kde.org/p/1386465/
8、配置开发环境
8.1. 安装java、maven、scala
前往各个官网下载tar.gz
包,sudo tar -zxvf
命令,解压到/opt目录下,然后修改/etc/profile文件,添加环境变量,wq保存后自行一下 source /etc/profile
命令刷新一下就ok啦。
- java官网:https://www.oracle.com/technetwork/java/javase/downloads/index.html
- maven官网:http://maven.apache.org/download.cgi
- scala官网:https://www.scala-lang.org/download/
1 | export MAVEN_HOME=/opt/apache-maven-3.6.1 |
另外还有maven的配置,设置一下本地仓库和添加国内源:
1 | <localRepository>/home/repository</localRepository> |
8.2. 安装idea和pycharm
这里不打算去源里安装了,1是下载慢,2是wiki指导也是去官方下载tar包
idea:https://www.jetbrains.com/idea/download/#section=linux
pycharm:https://www.jetbrains.com/pycharm/download/#section=linux
1 | cd Downloads |