• Arch Linux配置&Linux使用教程

          目录:

          1.简介2.安装前的准备——镜像烧录2.1 原Windows用户2.2 原Linux用户2.3 使用ventory实现烧录3.进入安装环境前的准备3.1 原windows用户3.2 原Linux用户3.3 不管你是什么用户4.开始安装过程4.1 确认当前的引导模式为UEFI4.2 连接网络4.3 确认网络连接状态4.4 禁用reflector4.5 进行时间同步若有类似以下返回即代表时间服务正常4.6 更换国内镜像源4.7 分区4.7.1 打算换到纯Arch的用户或拥有专门的硬盘安装Arch的用户以及windows to go用户4.7.2 Windows与Linux双系统用户4.7.3 虚拟机用户4.7.4 分区操作命令使用方法演示4.8 格式化新分区4.9 挂载分区4.10 安装系统4.10.1 基础包安装4.10.2 功能性包安装4.11 生成fstab文件4.12 切换环境到新系统内4.13 设置主机名(local hosts)4.14 设置时区与同步硬件时间4.15 设置地区信息4.16 设置root账户的密码4.17 安装微码4.18 安装与配置引导程序GRUB4.19 退出安装5.安装桌面环境和部分系统配置5.1 连接网络5.2 更新系统5.3 准备日常使用账户5.4 配置sudo5.5 安装KDE桌面环境5.6 安装终端与文件管理器5.7 开启SDDM服务5.8 开启32位源与archlinuxcn源5.9 刷新pacman数据库5.10 重启进入桌面环境6.进入桌面后的准备6.1 网络连接6.2 安装并应用中文字体和表情包支持6.3 配置AUR6.4 安装中文输入法6.5 安装一些可能必备的软件6.6 蓝牙设置7.显卡驱动7.1 AMD核显&独显7.2 Intel核显7.3 Nvidia独显7.4 Nvidia独显与核显混合(笔记本)8.安装配置结束9.系统美化9.1 系统主题9.2 SDDM主题设置9.3 桌面设置9.4 桌面插件推荐9.5 混成器设置9.6 终端效果配置9.7 Krunner居中9.8 Yakuake配置(请确保你已安装Yakuake)9.9 kvantum-qt5主题9.10 GRUB主题10.日常软件推荐10.1音乐软件10.2即时通讯软件10.3远程协助10.4 网盘与下载11.专业软件11.1 开发软件11.2 媒体工作软件11.3 虚拟机以及虚拟化11.3.1 VMware安装11.3.2 KVM-Qemu虚拟化的配置11.3.3 linux中的虚拟化以及docker虚拟化技术简介11.3.4 KVM显卡直通11.3.5 Docker使用12.特殊网络需求解决12.1 使用魔法12.2 透明代理12.3 有关当前QV2Ray的特殊问题13.其它需求的解决13.1蓝牙耳机音质问题13.2运行Windows应用程序13.2.1 什么是wine13.2.2 wine的兼容性13.2.3 wine的衍生版本13.2.4 wine的基本使用13.3 运行安卓应用程序13.4 使用其它类型内核13.5 fcitx输入法使用搜狗输入法主题13.6 fcitx5输入法使用搜狗输入法主题13.7 KDE使用wayland显示服务13.8 Git走代理13.9 curl走代理13.10 AUR的makepkg下载模式修改13.11 命令习惯简写的配置13.12 pacman启动并行下载13.13 备份还原软件包列表13.14 使用开源Nvidia驱动13.15 常见使用时问题解决14.常用知识点14.1常用基本命令表14.2 部分常用高级命令表及其相关知识14.2.1 部分systemctl相关命令表(仅使用systemd的系统可用)14.2.2 KDE桌面进程控制14.2.3 tty(终端)相关知识14.2.4 链接文件14.2.5 挂载&卸载磁盘设备14.2.6 文件路径14.2.7 内存&内存管理14.2.8 管道14.2.9 命令逻辑连接词14.2.10 返回结果处理14.2.11 权限15.永恒不变的真理15.1 Linux/Unix的核心设计理念15.2 一切皆文件15.3 Linux的文件目录结构15.4 linux的启动过程15.5 一切皆文件的利与弊16 结语

          1.简介

          本配置教程根据个人安装经验整合编写,用来帮助想要入门Arch Linux的用户快速上手Arch Linux的配置过程并尽快的掌握一些可能算是必须的相关知识点以及技能并了解部分的操作系统运行原理,包含从 arch linux 安装,KDE 桌面环境安装,到 Linux 显卡驱动,魔法上网,常用软件,日常维护以及部分Linux相关知识,部分内容存在个人主观观点,并不会完全以开源GNU的思维去展开一切内容,而是将开源软件和专有软件相互交叉结合以此向用户提供较好的使用体验,此外,此文档参考引用并修改了部分网络上的现有教程代码和命令以及当前的Arch Wiki内容(更新于2022年10月23日),此外,此文档将会不定期持续更新保证内容的时效性

          2.安装前的准备——镜像烧录

          2.1 原Windows用户

          原windows用户推荐使用rufus软件进行Arch镜像的烧录,官网:https://rufus.ie/zh/

          注:当前最新版可能不会提醒你是否使用dd模式写入镜像,若出现该类提示时选择以dd模式写入,否则烧录完的镜像无法正常使用!

          2.2 原Linux用户

          原Linux用户可使用Balena Etcher进行Arch镜像的烧录,亦可使用指令进行烧录操作,操作指令为

          命令解释:

          提权指令 调用dd命令 设置文件输入输出块大小为4M 指定镜像目录 指定烧录设备地址 输出刻录过程总的信息 保证数据真正写入了U盘

          虚拟机用户请忽略此步骤

          2.3 使用ventory实现烧录

          ventory使用了一种显得十分高端大气上档次的方法实现镜像的功能,在windows上,你可以下载ventory并使用它,然后将arch的镜像拖进U盘的文件夹内即可,linux同理,具体使用方式省略(如果你原来都用linux的话这个应该能够应付的过来吧)

          3.进入安装环境前的准备

          3.1 原windows用户

          以下内容虚拟机用户请忽略

          3.1.1在BIOS中关闭Secure Boot功能

          Secure Boot用来限制主板的启动,它会禁止主板从未经认证的操作系统或硬件驱动程序的加载,以此来防止恶意软件的入侵,但因为这种特性,导致了操作系统的垄断(即若想启动一个系统则该主板上必须要有对应的公钥),如果想要启动非Windows系统则很可能需要关闭主板上的该功能

          3.1.2调整启动方式为UEFI

          在某些旧的主板里,需要调整启动模式为 UEFI,而非传统的 BIOS/CSM。在类似名为 boot 的选项卡中,找到类似名为 Boot Mode 的选项,确保将其调整为UEFI,而非 legacy/CSM

          3.1.3关闭windows的快速启动功能

          快速启动是 Windows 8 (及更新的版本) 中的一项功能,通过休眠来提高启动速度.但是如果你休眠 Windows 然后进入另一个系统修改文件,可能会造成数据丢失.即使你不打算在双系统中共享文件,这也容易损坏 EFI 系统分区.因此你应该在安装前禁用快速启动

          3.3.4 确定硬盘分配(想双系统的用户注意!!!)

          由于安装需要使用一部分磁盘空间(整个分区),因此,你需要查看你的设备分区状态,准备好一整块的分区便于以后使用(当前部分电脑是单C盘使用,因此需要考虑拆分分区的操作,一般情况下借助windows自带的计算机管理中的磁盘管理就可以轻松的执行该步骤)

          3.3.5 windows to go原用户

          由于windows to go的特殊性,你只需要执行3.1.1,3.1.2两个部分,随后就可以按照linux的方案走了,但要注意,安装时,建议将windows to go硬盘拔掉,以防止后面发生错误格式化等不期望的的事情发生

          3.2 原Linux用户

          如果是的话应该可以直接跳过该环节了~~

          3.3 不管你是什么用户

          想要从U盘启动的方式主要有两种,从启动选项菜单中选择(临时)或直接修改BIOS的设置(永久),部分电脑为默认优先从U盘启动

          虚拟机用户请忽略。。。

          4.开始安装过程

          此时你应该进入了arch的安装环境了,选择第一项或第二项均可(第二项会在环境准备就绪时说一段话),请注意,在一些场合下,你可以使用TAB键实现命令的自动补全,以此来减少打字次数节省时间并降低错误率,此外,安装环境默认的文本编辑器为VIM,需掌握VIM的基本操作,以下为需要掌握的VIM的操作示例:

          功能操作方式
          剪切非编辑模式下连续输入2次d
          粘贴非编辑模式下输入1次p
          进入编辑模式输入i
          退出编辑模式按下ESC键
          顺向查找非编辑模式下输入 / 后加上需要查找的文本内容后回车
          反向查找非编辑模式下输入 ? 后加上需要查找的文本内容后回车
          保存并退出输入:wq后回车
          不保存直接退出输入:q!后回车
          回到第一行非编辑模式下连按2次g
          跳转到文末非编辑模式下按下shift和g

          然后让我们开始安装流程

          4.1 确认当前的引导模式为UEFI

          若执行后有输出内容即当前为UEFI模式,若没有该输出请尝试重新执行3.1.2的内容

          4.2 连接网络

          若你是使用有线连接网络,你可以跳过该步骤,进行4.3的内容,若你是无线连接,请利用以下指令进行网络连接

          4.3 确认网络连接状态

          ping命令用于测试网络连通性,其最简单用法为:ping 目标网址或IP地址

          有返回类似64 比特,来自 ecs-119-3-234-165.compute.hwclouds-dns.com (119.3.234.165): icmp_seq=4 ttl=42 时间=24.6 毫秒的内容即代表网络连接正常,按下Ctrl + c 终止ping命令即可,如果无法连接,使用 ip link set xxx up 命令激活对应的网卡,再重新执行ping命令,若有类似Operation not possible due to RF-kill的报错,可尝试rfkill unblock wifi来解锁无线网卡

          4.4 禁用reflector

          reflector 服务用于自动更新 mirrorlist,但在特定情况下,它可能会误删源信息,导致在国内无法访问软件源,这将强迫你再次手动修改源配置文件

          4.5 进行时间同步
          若有类似以下返回即代表时间服务正常
          4.6 更换国内镜像源

          执行完毕后你会进入VIM编辑器,在里面利用查找功能快速定位到china部分,选择你想使用的源将其剪切粘贴到所有的镜像源的最前面(此文件中的链接是世界各地的源,pacman会按照该源内的顺序从上而下的尝试直到该源可用,更多相关信息可以自行阅读该文件内的注释部分)

          4.7 分区
          4.7.1 打算换到纯Arch的用户或拥有专门的硬盘安装Arch的用户以及windows to go用户

          因为分区需求每个人都可能不同,因此给出以下下部分Linux目录表以便于你自行定义

          目录说明是否推荐独立分区推荐大小标签备注(独立分区的好处是能在系统崩溃时保证某一部分的正常,缺点是ext4格式无法后期修改大小,而若不使用ext4格式可能会出现兼容问题)
          EFI开机引导目录推荐800MBEFI System请将该分区作为第一个分区,以防不兼容的问题发生,
          /根目录没得选,必须是100Glinux file system防治所以文件的地方,是最底层的目录,若你不打算将home独立分区,那么跟目录就是越大越好
          swap交换分区,将部分内存数据保存到硬盘上4~8Glinux swapswap为可有可无的分区,推荐开启,否则可能在运行部分软件时出现异常或因内存不足出现异常,或无法使用系统休眠功能
          home家目录越大越好linux home存放你的个人数据的地方,独立分区可以保证以后系统崩溃时不会损坏你的个人文件
          opt第三方软件安装目录80Glinux file system大小取决于你想要安装的软件的大小,可视情况而定,若你将此独立分区,你就可以将/的大小适当减小
          tmp存放临时文件目录8Glinux file system部分软件因为会产生大量的垃圾文件可能会导致占用大量根目录空间,若此类情况发生可考虑将其独立分区
          usr应用程序放置目录80Glinux /usr x86-64大小取决于你想要安装的软件的大小,可视情况而定,若你将此独立分区,你就可以将/的大小适当减小

          linux的部分设备命名规则

          在linux系统中,你的所有设备都将以文件的形式放在/dev文件夹中,在不同的场景下通过挂载相应设备来使用它们,以硬盘为例,你的硬盘会以adx或nvmexnx的文件形式存在,下表为命名规则(以下内容均会使用sdax来演示)

           adx类nvmexnx类
          硬盘命名规则SCSI/SATA/U盘会以adx的形式存在,x表示从a到p的字母,通过排序表示设备,如一个U盘的文件为sdbnvme设备会以nvmexnx的形式存储,第一个x表示插槽命名空间,第二个x表示位置,如某个硬盘为nvme0n1
          分区命名规则adx的分区命名规则为在后面加一个数字,如某设备的第一个分区为sda1nvmexnx的分区命名规则为在后面添加px(x为数字),如某设备的第一个分区为nvme0n1p1

          在执行lsblk时,你将会看到类似如下的返回信息:

          NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT loop0 7:0 0 547.9M 1 loop /var/xdroid/common/rootfs sda 8:0 0 111.8G 0 disk └─sda1 8:1 0 111.8G 0 part /run/timeshift/backup nvme1n1 259:0 0 476.9G 0 disk ├─nvme1n1p1 259:2 0 260M 0 part ├─nvme1n1p2 259:3 0 16M 0 part ├─nvme1n1p3 259:4 0 457.9G 0 part /run/media/stvsl/OS ├─nvme1n1p4 259:5 0 1.3G 0 part └─nvme1n1p5 259:6 0 17.5G 0 part nvme0n1 259:1 0 465.8G 0 disk ├─nvme0n1p1 259:7 0 800M 0 part ├─nvme0n1p2 259:8 0 8G 0 part [SWAP] └─nvme0n1p3 259:9 0 457G 0 part /

          4.7.2 Windows与Linux双系统用户

          原windows用户请注意!不要执行parted相关的命令!!!这可能会损坏你的windows系统!!!

          原windows用户请注意!不要执行parted相关的命令!!!这可能会损坏你的windows系统!!!

          原windows用户请注意!不要执行parted相关的命令!!!这可能会损坏你的windows系统!!!

          重要的事情说三遍!!!

          此外,你可能需要额外另建一个EFI分区(尽管原来已经有了)用来引导双系统

          4.7.3 虚拟机用户

          虚拟机请随意,与4.7.1基本一致

          4.7.4 分区操作命令使用方法演示

          (以cfdisk为例,当然,你也可以使用fdisk,gdisk等工具)

          4.8 格式化新分区

          以下仅为部分命令,其它分区命令与之类似

          注意:双系统用户仅需要格式化新的几个分区,其它的原有分区不要操作!!!

          4.9 挂载分区

          注意!!!挂载时为保证目录树正常,请从根目录/mnt开始挂载

          4.10 安装系统
          4.10.1 基础包安装

          若你想要使用AUR或使用系统的一些基础工具的话请额外安装 base-devel !!!即 pacstrap /mnt base base-devel linux linux-firmware ,不安装可能会极大的降低你的使用体验(将会无法使用AUR)!

          4.10.2 功能性包安装
          4.11 生成fstab文件

          fstab是用于存放文件系统的静态信息,位于/etc/目录下,当系统启动的时候,系统会从这个文件读取信息,并且会自动将此文件中指定的文件系统挂载到指定的目录,以下为自动生成命令

          复查fstab以防有误

          若异常你可以尝试再次执行生成命令,或手动修改fstab

          4.12 切换环境到新系统内
          4.13 设置主机名(local hosts)

          此步骤可以先行跳过,不进行也可以,若后期出现进入桌面且联网后无法正常打开任何软件时回过头来执行即可(但那样你需要在命令前加上sudo)

          首先在/etc/hostname设置主机名

          向文件中写入你将要使用的用户名后保存退出

          随后修改/etc/hosts

          向文件中输入以下内容

          4.14 设置时区与同步硬件时间

          国内使用上海,其它地区请按照你的需求修改

          同步硬件时间

          4.15 设置地区信息

          此步需修改/etc/locale.gen

          此步你需要查找并去掉 en_US.UTF-8 以及 zh_CN.UTF-8 两行前面的注释符号#

          随后执行以下命令生成locate

          然后向/etc/locale.conf输入以下内容(直接执行即可)

          然后查看该更改是否已生效

          4.16 设置root账户的密码
          4.17 安装微码

          微码用于纠正CPU运行时可能产生的错误以及对部分底层指令引入新特性和优化,安装哪个微码完全取决于你的CPU型号

          4.18 安装与配置引导程序GRUB

          !!!请注意!!!

          windows双系统用户请先安装ntfs-3g使系统支持加载NTFS文件系统的分区,否则GRUB无法识别到WIndows系统!!!(根据linux)

          部分主板在4.19执行完毕后可能出现问题,因为其不支持自定义EFI,而导致你无法找到Arch-GRUB的启动选项,此时你需要重新插回U盘执行4.9,4.12,随后执行以下命令

          4.19 退出安装

          5.安装桌面环境和部分系统配置

          如果你顺利的进入了一个黑不溜秋的东西里面那么恭喜,你成功了50%了!接下来开始配置剩下的部分

          5.1 连接网络

          有线连接网络请执行以下命令开启动态IP地址分配

          无线连接请额外执行以下命令(4.2的内容)

          测试网络连接是否正常(4.3的内容)

          5.2 更新系统
          5.3 准备日常使用账户

          创建账户

          设置密码

          5.4 配置sudo

          查找 #%wheel ALL=(ALL) ALL的所在行,去除前面的注释符号#后保存退出即可

          5.5 安装KDE桌面环境
          5.6 安装终端与文件管理器
          5.7 开启SDDM服务
          5.8 开启32位源与archlinuxcn源

          去掉[multilib]一节中两行的注释,来开启 32 位库支持。 在文档结尾处加入下面的文字,来开启 ArchLinuxCN 源(此处使用中科大的软件源,若你不喜欢或想要换其它源可以自行点击此处查看选择

          5.9 刷新pacman数据库
          5.10 重启进入桌面环境

          6.进入桌面后的准备

          恭喜你成功装好了桌面,接下来让我们配置最后的一点东西吧!

          6.1 网络连接

          现在已经有桌面环境了,因此我们可以使用KDE的网络管理器而不是使用和dhcped和iwd来连接网络了!

          6.2 安装并应用中文字体和表情包支持

          打开 System Settings > Regional Settings > Language 中选择中文后再拖拽到第一位点击apply完成设置,重启就能看到中文啦!!!

          注意:如果你需要使用WPS等文字类编辑软件的话,请自行额外到网络上下载微软自带的字体,例如宋体、仿宋、Calibri、等线、等线Light、黑体、微软雅黑、新罗马、华文中宋、楷体、思源黑体等,若不安装,WPS将会出现字体显示和排版显示异常的问题,若发现最终文档效果和Windows下不一致,请打开存在问题的文件,点击文件>选项>视图>显示文档内容>字体替换中查看系统缺失的字体,到网上下载相关的字体并安装后重新启动WPS即可解决

          6.3 配置AUR

          AUR可以说是Arch的一大特色了,它是一个用户维护的社区源,允许用户上传提交软件,因此可以利用AUR安装大量软件,为了愉快使用AUR,我们需要安装AUR软件包管理器yay

          yay的默认源位于国外,可能存在国内访问过慢的情况发生,但由于yay只需要获取相关软件的PKGBUILD文件,因此一般情况下并不会发生无法成功获取的问题,只是访问速度会很慢,针对此问题,你可以选择使用清华大学的镜像源,但此源有时并不稳定,甚至会发生出错的情况,或者可以使用proxychains走代理的方法实现加速

          使用代理(代理的相关配置请查看12.1)

          注:若安装archlinuxcn-keyring时报错,你需要暂时进入root下执行以下命令

          执行成功后,输入exit退出root模式然后重新执行即可

          yay的指令与pacman的指令基本一致,但有所不同,以下为常使用的pacman的指令表

          命令功能
          sudo pacman -S安装软件包
          sudo pacman -Ss搜索软件包
          sudo pacman -U安装本地软件包
          sudo pacman -Syyu更新软件源与软件
          sudo pacman -Syyuu强制更新(慎用)
          sudo pacman -R删除软件包
          sudo pacman -Rs删除软件包以及与之相关的依赖
          sudo pacman -Sc删除未安装的软件包缓存
          sudo pacman -Scc删除所有的软件包缓存
          sudo pacman -Qdt找出孤儿包(无人维护的包)
          sudo pacman -F查找某指令的来源包

          yay的指令与之基本一致但要注意,pacman要求必须使用sudo提权或使用root权限下运行,而yay强烈反对,yay会默认以普通权限运行,在安装某些软件时才会向用户主动申请root权限,此外 yay -Ss 可以直接简写成更加完善强大的 yay (一个小吐槽:yay -Ss那么长的命令竟然没有yay强大???)

          6.4 安装中文输入法

          需要中文的场合一定是有的,所以接下来开始安装中文输入法,以下内容以安装小企鹅输入法(fcitx5)为例

          安装输入法本体

          配置输入法环境变量

          向其中加入以下内容

          然后打开 系统设置 > 区域设置 > 输入法,点击添加输入法,找到简体中文下的 Pinyin ,点击添加,找到 配置附加组件 拉到下面找到 Pinyin 点选云拼音在程序中显示预编辑文本 应用,然后重启即可愉快的输入中文了!

          安装输入法词库(提升打字效率和准确率)

          因为每个人对输入法的使用感受不同,因此给出官方wiki文档,你可以根据此文档进行更进一步的个性化设置

          6.5 安装一些可能必备的软件

          有了强大到无法想象的yay,就可以开始肆无忌惮的安装各种软件了,以下是可能必备的软件(但你也可以选择不安装它们,只不过可能会影响到效率)

          软件名功能备注安装指令
          火狐浏览器浏览器还算可以,可以三选一sudo pacman -S firefox
          chromium浏览器浏览器经典传奇,可以三选一sudo pacman -S chromium
          edge浏览器浏览器强烈推荐,可以三选一yay -S microsoft-edge-dev-bin
          ark压缩软件与kde配合使用及其强大sudo pacman -S ark
          gwenview图片查看器体验一般,不过和kde配合使用挺强大的sudo pacman -S gwenview
          ntfs-3g识别和读写微软的ntfs格式分区支持如果想要愉快使用系统,最好还算装上吧sudo pacman -S ntfs-3g
          kdeconnect连接手机提供一些有用的功能基本是必备sudo pacman -S kdeconnect
          vlc多媒体播放器强大sudo pacman -S vlc
          mpv多媒体播放器还行sudo pacman -S mpv
          wps金山wps办公套装基本上是必备的了吧?yay -S wps-office ttf-wps-fonts wps-office-mui-zh-cn
          libreoffice自由免费全能跨平台的办公套件界面有点丑sudo pacman -S libreoffice-fresh #尝鲜版
          sudo pacman -S libreoffice-still #稳定版
          spectacle截图软件和KDE配合挺高效,但是不是特别好用sudo pacman -S spectacle
          flameshot截图软件强大,好用,但是需要部分手动设置,wayland显示协议下存在无法截取副屏的问题sudo pacman -S flameshot
          pamac软件包管理程序可以想成yay的图形界面版,不过有时会有一些奇怪的BUG,不太推荐sudo pacman -S pamac
          discoverKDE的软件商店discover已在系统中预安装,但无法正常工作,因此给出解决方案sudo pacman -S packagekit-qt5
          timeshift系统备份工具极其重要,因为你永远不知道你的系统会因为什么而崩溃sudo pacman -S timeshift
          Yakuake终端工具超级推荐!!!,设置F12快速唤醒sudo pacman -S Yakuake
          6.6 蓝牙设置

          若设备支持蓝牙,则需要手动安装相关软件包和开启蓝牙相关功能

          7.显卡驱动

          这一步很容易翻车!!!请利用上面的timeshift先备份系统再进行操作,对于笔记本,请先重点看7.5内容

          7.1 AMD核显&独显

          首先,你需要确定你CPU的架构,架构查询可用此网站,随后进行驱动安装,对于GCN3以上的显卡,可以安装AMDGPU驱动或专有AMDGPU驱动,对于GCN2以及以下驱动可以安装ATI驱动,相关具体安装相关请自行点击查看安装

          对于可以直接安装AMDGPU的,可安装以下软件包

          7.2 Intel核显
          7.3 Nvidia独显

          GeForce 630 以下到 GeForce 400

          上古显卡(使用开源驱动)

          7.4 Nvidia独显与核显混合(笔记本)

          先安装Nvidia驱动,随后再安装核显驱动,请注意这个顺序,以防止发生独显驱动失效无法使用的问题

          安装显卡切换方案(以下使用optimus方案)

          先给出官方文档optimus官方文档

          设置开机自启

          以下是注意事项

          随后在optimus-manager内选择该模式即可

          8.安装配置结束

          如果顺利的走到这里,那么恭喜,你已经安装成功了,可以尽情探索了!接下来的内容将是系统美化,日常软件推荐,特殊软件的安装和部分特殊需求的实现还有日常系统维护以及基本的Linux知识点,首先先讲一下系统维护吧!

          系统维护做重要的无疑就是一点:因为Arch属于滚动更新的系统,因此养成每日更新系统的好习惯是必不可少的,建议每次开机以后先执行一次(对于滚动更新的系统这点是必须的!!!,若更新后发生影响正常使用的系统异常,请先查看arch的新闻列表)

          或是执行(推荐)

          若需要每次更新前自动检测是否有需要注意的内容,你可以安装informant来实现自动检测。

          特殊场合下,你可能会遇到版本冲突的问题,此时,你可以使用sudo pacman -Syyuu 或者是yay -Syyuu实现强制更新,但这也可能造成系统不稳定或者其他问题(此类问题在arch上表现不明显,发生几率极小)

          9.系统美化

          系统美化可能是最没有标准答案的部分了,因为每个人的使用逻辑和喜欢的界面样式都不同,因此以下内容仅列出相关个性化设置的设置方式和部分推荐,此外,由于网络环境的原因,你可能需要使用proxychains代理开启系统设置,代理状态启动命令为 proxychains systemsettings5,但在一些更加特殊的场合下,你可能还是无法顺利执行下面的过程,此时,你可以选择使用 ocs-url实现一定程度上的绕过系统设置进行主题的安装,其安装命令为 yay -S ocs-url

          随后使用网站pling进行对应的搜索点击install即可完成安装(部分内容需要下载后在设置中手动选择安装)

          9.1 系统主题

          对于最新版的KDE而言,个性化设置已经被高度集中了,绝大多数设置均在系统设置 > 外观 内,因此,你可以在其中寻找你喜欢的内容,以下仅为个人推荐(半MAC风格)

          版块推荐内容
          全局主题WhiteSur-dark
          应用程序风格Breeze微风
          Plasma样式WhiteSur-dark
          窗口装饰元素WhiteSur
          颜色WhiteSur
          图标Breeze微风暗色
          光标WhiteSur Cursors
          欢迎屏幕Snowy Night Miku
          9.2 SDDM主题设置

          当前版本KDE将SDDM设置放在系统设置 > 开机与关机 >登陆屏幕(SDDM)内,个人推荐内容为Sugar Candy

          9.3 桌面设置

          在桌面点击鼠标右键,点击配置桌面和壁纸即可,本部分无推荐,若你想使用动态壁纸,请点击获取新插件搜索Smart vidio wallplayer

          注:该插件使用了gstreamer plugins组件用来播放视频,因此,还需要额外安装gstreamer plugins软件包

          如果需要Wall Paper Engline,arch也有对应的插件来满足此类要求(部分)

          9.4 桌面插件推荐

          官方预装插件此处不进行推荐(但有的是真的好用),请自行体验

          名称介绍
          Translater翻译插件
          Netspeed widget文本网速显示
          todolist事件清单
          Event Calender极其强大的时钟部件替代品
          9.5 混成器设置

          系统设置>显卡与显示器 >混成器 >开机时启用显示特效混合器渲染模式选择OpenGL 3.1或OpenGL 2.0(OpenGL3.1会在部分较老的型号上发生异常)

          9.6 终端效果配置

          此处不介绍ZSH的美化配置,仅做简单配置介绍

          透明化背景及模糊效果:

          打开Konsole终端,右键,点击外观,选择一个喜欢的配置方案,点击编辑,打开模糊背景,拉动背景透明度到60%点击确定后关闭即可

          9.7 Krunner居中

          Krunner可以说是一个极其好用的工具,可以实现快速搜索快速打开等操作,而它默认是显示在屏幕上方(部分人可能不喜欢这样的设计,比如说我),因此将其放到屏幕中间,设置也很简单

          系统设置>搜索>KRunner>屏幕上的位置,将其改为居中即可

          9.8 Yakuake配置(请确保你已安装Yakuake)

          按下F12唤醒Yakuake,点击设置图标,点击配置Yakuake > 外观 > 获取新皮肤,搜索breeze-minimal安装并应用即可(当然,你也可以自行进行选择)

          9.9 kvantum-qt5主题

          kvantum-qt5 是一个额外的软件,其作为应用程序渲染风格个性化的实现而存在,,在KDE中,它将会以KDE设置中的应用程序风格中的一个选项卡实现相关功能的对接,其配合全局主题等往往可以做到更好的效果,以下为安装命令

          随后便可以前往pling.com去下载喜欢的主题包并在kvantum-qt5 中安装,设置和使用

          9.10 GRUB主题

          同意,你可以在pling中下载你喜欢的主题并安装,但要注意,其安装形式分为两种,部分主题内有安装脚本,在终端运行此脚本即可完成安装,若没有脚本,那就需要手动安装了,一般性安装方法为首先解压下载到的软件包,然后cd进入解压后的文件目录,随后使用cp命令将文件复制到指定位置,其命令如下

          随后编辑GRUB配置文件

          找到 #GRUB_THEME= 一行,将前面的注释去掉,并指向主题的 theme.txt 文件

          随后更新GRUB即可

          然后重启就能看到效果啦!

          10.日常软件推荐

          毕竟系统不是装着摆着玩的以下是各类日常软件的推荐

          10.1音乐软件
          软件名备注安装指令
          QQ音乐 yay -S qqmusic-bin
          网易云音乐不支持小企鹅(fcitx5)输入法sudo pacman -S netease-cloud-music
          YesPlayMusic不错的第三方网易云音乐,使用JS编写yay -S YesPlayMusic
          10.2即时通讯软件
          软件名备注安装指令
          QQ-IM(wine) yay -S com.qq.im.deepin
          TIM(wine)效果有点不好,但功能齐全yay -S deepin-wine-tim
          若字体大小异常,请执行
          /opt/apps/com.qq.office.deepin/files/run.sh winecfg
          若存在卡顿情况,请自行复制windows中的
          QQ轻聊版(wine) yay -S deepin.com.qq.im.light
          微信(wine) yay -S deepin-wine-wechat
          若字体大小异常,请执行
          /opt/apps/com.qq.weixin.deepin/files/run.sh winecfg
          Icalingua++第三方QQ,比较好用,推荐yay -S lcalingua++
          Linux QQ垃圾,基本上不能用yay -S linuxqq
          微信-UOS官方网页套壳的垃圾yay -S wechat-uos
          钉钉 yay -S deepin.com.dingtalk.com
          腾讯会议 yay wemeet-bin
          企业微信存在托盘图标丢失的问题,其它正常yay com.qq.weixin.work.deepin
          电报全球流行的即时通信软件sudo pacman -S telegram-desktop
          10.3远程协助
          软件名备注安装指令
          teamviewer yay -S teamviewer
          向日葵 yay -S sunloginclient<br>运行前请先执行
          systemctl start runsunloginclient.service
          anydesk yay -S anydesk-bin
          10.4 网盘与下载
          软件名备注安装指令
          百度网盘慢到离谱yay - S baidunetdisk-bin
          迅雷可以,但是在KDE下存在无法直接使用窗口管理器
          直接关闭的BUG,需要在任务栏上面手动关闭来退出
          yay -S xunlei-bin
          FDM还好yay - S freedownloadmanager
          filezilla没用过sudo pacman -S filezilla
          aria2OKsudo pacman -S aria2

          11.专业软件

          11.1 开发软件

          自行使用yay搜索吧!应该大多数需要的都有(VS那种严重依赖平台的没有)

          11.2 媒体工作软件
          软件名备注安装指令
          GIMP图像处理
          (如果需要使用PS风格的键位,请额外安装GimpPs)
          sudo pacman -S gimp
          yay GimpPs
          krita画图软件yay -S krita
          inkscape画矢量图yay -S inkscape
          blender3D建模sudo pacman -S blender
          LMMS音频制作sudo pacman -S lmms
          Kdenlive视频剪辑sudo pacman -S kdenlive
          shotcut视频剪辑sudo pacman -S shotcut
          mkvtoolnixmkv格式制作和处理的工具sudo pacman -S mkvtoolnix
          达芬奇非常NB的视频处理,无Nvidia显卡可能无法使用yay -S davinci-resolve
          安装时会报错,这时请前往davinci官网下载对应版本,放到家
          目录中的.cache/yay/davinci-resolve/然后执行cd .cache/yay/davinci-resolve/
          然后执行 makepkg -i 进行打包安装
          达芬奇studio比非常NB还NB的视频处理,无Nvidia显卡可能无法使用。需要付费yay -S davinci-resolve-studio
          安装时会报错,这时请前往davinci官网下载对应版本,放到家
          目录中的.cache/yay/davinci-resolve-studio/然后执行cd .cache/yay/davinci-resolve-studio/
          然后执行 makepkg -i 进行打包安装
          OBS不解释,不过不支持大部分插件了QAQ(但部分插件可通过aur安装)yay -S obs-studio
          OBS-browser支持插件的OBSyay - S obs-studio-browser
          11.3 虚拟机以及虚拟化

          在一定的特殊场合下,你可能会有各种奇怪的需求,比如运行一些只有windows能干的事(像是用VS的那种)在此时,你可能就会想到再运行一个系统等等,而此时,虚拟机就帮上了大忙,再要求更高的场合下,虚拟化更是必须,因此下面将给出安装虚拟机VMware和KVM-Qemu虚拟化的配置方案

          11.3.1 VMware安装

          安装很简单,一句话的问题

          需要注意的是,初次使用时可能提示NAT网桥无法使用,很可能会出现会提示网络异常,此时执行以下命令即可

          此外,若你想使用VMware来开启本地的实体机系统的话,请使用sudo vmware来启动(但这也存在着更多的风险)

          11.3.2 KVM-Qemu虚拟化的配置
          11.3.3 linux中的虚拟化以及docker虚拟化技术简介
          11.3.4 KVM显卡直通

          当使用虚拟机时,可能需要虚拟机具有超高性能,此时就需要虚拟机能直接访问显卡来提高性能,请先注意,若想进行显卡直通,请先确保你有2张或更多的显卡(尽管一张也可以设置显卡直通),以防之特殊问题的出现,因为此部分涉及内容较多,详细请参考官方英文文档进行设置

          11.3.5 Docker使用
          1. 安装docker软件包及相关依赖

          2. 配置开机自启动并立刻启动

          3. 将当前账户加入docker用户组

          4. 镜像加速

            镜像加速需要配置docker的启动文件/etc/docker/daemon.json

          5. 使用Docker

            建议安装Portainer来管理Docker容器和镜像

            随后,请安装Portainer的管理软件yay portainer-bin

          12.特殊网络需求解决

          注意!此部分的前提是你有一个科学上网的工具帐号!!!

          12.1 使用魔法

          此处使用V2Ray实现,但由于其开发团队内部原因造成概率的不稳定(目前表现),以下是软件本体的安装

          若你使用的魔法上网服务v2ray不支持,你可以在AUR里面查找一下V2Ray的插件扩展(目前区ray存在两个版本且互不相兼容,请尽量安装带有go字样的相同插件)

          由于KDE的全局代理不会对所有程序生效,因此存在部分软件不生效的情况发生此时需要使用proxychains-ng

          随后修改proxychains-ng的配置文件

          修改文末(最后一行)的内容为你的代理如socks5 127.0.0.1 1089

          使用此代理的方法也很简单,使用它的命令加上要启动的程序名称即可,如

          12.2 透明代理

          透明代理需要使用v2ray与cgproxy来辅助实现,由于会使用到透明代理的场合较为特殊且官方文档较易理解,将不会详细说明,你可以参考官方readme文档

          !!!由于透明代理会拦截所有发出的所有流量将其转到代理工具上,尽管可以通过修改配置文件绕过某些应用程序,但有一些软件无法或者很难绕过,因此可能会严重降低访问国内网站的效率

          12.3 有关当前QV2Ray的特殊问题

          qv2ray因社区内开发人员的内部矛盾的原因,当前核心的开发者已经退出了相关开发活动并注销了 github 帐号,当前qv2ray前景问题较为严重,因此给出替代品V2rayA,详细内容请查看官方文档

          13.其它需求的解决

          13.1蓝牙耳机音质问题

          这是一个很严重的问题,Arch原有的对蓝牙音频的支持仅仅是能听(使用SBC协议)导致音质和延时问题都极差,原因在于Arch将其相关的在源中的软件包进行了阉割,仅保证此功能的基本可用(因为不是每个使用者都有这种需求,如果对其完整支持就违背了Arch的核心理念),因此,需要对其进行重安装并额外安装相关的软件包支持

          然后使用git的方法从AUR里面进行安装拥有完整支持的组件

          13.2运行Windows应用程序

          在linux上面运行windows应用程序的方法大致只分为两种,虚拟机和wine虚拟机已在前面,详细介绍,因此此处仅给出wine的相关内容

          13.2.1 什么是wine

          Wine 是“Wine Is Not an Emulator” 的首字母缩写,是一个能够在多种 POSIX-compliant 操作系统(诸如 Linux,macOS 及 BSD 等)上运行 Windows 应用的兼容层。Wine 不是像虚拟机或者模拟器一样模仿内部的 Windows 逻辑,而是將 Windows API 调用翻译成为动态的 POSIX 调用,免除了性能和其他一些行为的内存占用,让你能够干净地集合 Windows 应用到桌面,Wine是自由软件,在GNU宽通用公共许可证(LGPL) 下发布

          13.2.2 wine的兼容性

          由于微软的windows核心代码是闭源且禁止直接在其它场景下使用的,因此wine从一开始就是靠瞎猜来重写所有的windowsAPI调用,因此会和直接在windows上面的运行效果有差距,一般使用wine运行windows应用程序发生三种情况:可以运行且运行效率比在windows上面高出不少或持平;可以运行但是部分功能使用的时候会出现卡顿;完全不能运行。(毕竟瞎蒙的不会百分百和原生一样,会缺少很多原生的特性)

          13.2.3 wine的衍生版本

          因为上述的各种问题,wine本身很可能没几个程序能运行起来(事实上也真的是这样子),而这种需求无时无刻都很强烈(因为要用到,尤其是玩游戏的时候),所以wine有很多的第三方版本或者工具,为了赚钱,它也有对应的商业版,以下是当前的wine第三方版本及工具列表

          名称介绍
          crossoverwine的商业版
          DOSbox传统 x86 PC 的仿真器,对于旧的 MS-DOS 程序特别有用,因为它们经常以刚性方式使用硬件(例如直接使用 CPU 时钟周期计时)。wine使用DOSBox的虚拟8086模式
          exe-thumbnailer此模块允许 unix 窗口管理器从嵌入在 Windows 可执行的图标中生成清晰的桌面图标
          Glintwine基于 Python 的 GUI 工具,提供葡萄酒注册表密钥的管理
          LutrisLinux 的开放式游戏平台。它可以帮助你在统一的界面中安装和管理你的游戏。此支持包括管理 Windows 游戏
          PlayOnLinux一个工具,旨在使用户更容易安装Windows软件,如魔兽世界,PS,公会战争等
          Winetricks用于安装游戏、应用程序和各种可重新分配运行时间的工具,例如单声道、dcom98、字体。wine错误解决方法自动运行
          Q4Winewine的 Qt GUI。它将帮助你管理wine
          WineD3D for Windows基于WineD3D将DirectX 1-11转换成OpenGL
          Protonsteam play项目的wine相关链接
          winegameLutris中国版
          deepinwine深度系统使用的wine第三方版本
          13.2.4 wine的基本使用

          wine是一个不完美的软件,不能完美的运行一切windows应用程序,更多的情况下需要你的不断尝试与摸索(但很可能还是不行,还是需要使用虚拟机来来运行),以下内容仅为一般的wine的操作

          1. 运行winecfg

            在初次使用wine之前需要先运行一次运行winecfg来设置wine的目录和文件

          2. 对于部分程序开启虚拟桌面

            使用这个选项可以使软件的安装更加流畅,在使用某些程序时已经激活的对话框可能无法正常的显示,选择这个选项能够避免程序锁死桌面或者破坏原有的屏幕分辨率

          3. 使用Application Settings

            在winecfg的Application标签里的Application Settings对话框中对特定的程序进行自定义设置,将只允许进行windows兼容运行模式设置,某些显示设置和DLL的设置,当只需要设置某个程序使用某些特定的windows自带的DLL,不希望其它程序(包括wine)使用这些native的DLL的时候(而其它程序使用这些DLL会导致问题)(wine自带的DLL叫做builtin,windows下原生的DLL叫做native)这个选项就会变得十分有用

          4. 尝试切换Windows版本

            对不同的程序尝试不同的Windows版本,某些程序在特定的Windows版本下会拥有更好的运行效果

          5. 调换DLL

            winecfg可以让你用native的DLL替换builtin的DLL,下面的这些DLL是绝对不能被替换的:kernel32.dll, gdi32.dll,user32.dll,和ntdll.dll,有些nativeDLL也可能使一些程序不能运行,记得永远不要覆盖wine自带的 dll,如果native的用不了就用builtin的换回来,有些MS的DLL要得到许可才能用,如果没有许可,就不要用

          6. 实用的注册表键值

            有些设置是不能通过winecfg来进行设置的,但是可以在注册表中进行设置,有两个键值是非常有用的,一个是Alsa Driver的UseDirectHW,可以解决一些声音跳顿的问题,还有Direct3D的VideoMemorySize,应设置成显卡的准确显存,默认wine会设置成64MB

          7. 安装Wine Mono和Wine Gecko

            有些程序的运行依赖于IE或.net框架,但是,安装IE或.net框架会严重地破环Wine,所以可以安装Wine Gecko 与Wine Mono作为替代品

            安装指令为

          8. 安装msi应用程序

            有些windows的安装程序是msi格式的,可用以下命令来安装

          9. 其它注意事项

            • 不要安装DirectX,Wine有它自己的DirectX库,安装微软的DirectX会破坏wine的DirectX库和Wine,d3dx9_##.dll和d3dx10_33.dll可以直接从Windows复制过来使用,可能会在启动某些游戏时有所帮助。使用这些dll你可能需要微软的授权证书

            • 一般情况下,wine会不断地产生一些debug信息,那些信息在很多情况下是没有用的,尤其当你已经可以正常地运行一个程序,你可以使用下面的命令来避免debug信息,节省资源

            • 不要使用root或者sudo来运行wine,可能会损坏系统文件

          10. 其它wine命令

            命令功能
            wineboot模拟windows的重新启动
            wine control运行控制面板
            wineserverwine服务

            wineserver的参数表

            参数功能
            -d设置终端中debug的显示级别
            -h显示wineserver帮助文件
            -k强制关闭当前的wineserver,当程序失去响应需要被结束时使用
            -p让wineserver一直运行,也就是说即使程序退出了,wineserver还继续运行,当需要连续使用多个的程序时使用可以缩短程序的启动时间
            -w让wineserver一直运行直到当前已激活的wineserver退出

            除此之外,winetricks也是一个很好的工具来帮助你使用wine,安装指令为

          13.3 运行安卓应用程序

          此处给出一个国产的软件:Xdroid用来实现它,与其它程序不同,Xdroid采用的安装是可执行文件(shell脚本)直接点击运行即可,Xdroid官网

          此外还需要注意一点就是Xdroid极其依赖内核,而且它的内核支持速度较慢(不会实时跟进)因此建议使用LTS内核(否则每到Arch更新更高的的Linux版本时就会没法使用用,而且进行内核降级操作太危险,不升级对Arch也是一个风险极大的事情)

          除此之外,还有waydroid或者使用Android虚拟机的方法,此处不做详细说明

          13.4 使用其它类型内核

          Arch默认的内核是Mainline内核,也就是最新的稳定内核,但除此之外,还有LTS(长期支持)内核,hardened(安全强化)内核和zen(性能优化)内核,你可以根据需要切换内核版本

          默认安装的内核有时候不能满足使用需求,例如默认内核在游戏时性能存在瓶颈,或由于内核版本更新过于激进导致部分软件无法安装或无法正常运行,因此需要使用其它内核,以下为LTS内核和ZEN内核的安装命令,其它内核需要安装nvidia-dkms包来保证显卡驱动的正常运行

          安装LTS内核软件包

          安装LTS内核头文件

          安装ZEN内核软件包

          安装ZEN内核头文件

          重新安装显卡驱动

          这一步很简单,在你原来安装的驱动中找到nvidia的那一项,将其改为nvidia-lts即可例如

          将其改成以下内容即可

          此时建议重新刷新GRUB,当然,若你愿意检查安装过程中的输出的内容确保GRUB已正常更新也可以不执行

          13.5 fcitx输入法使用搜狗输入法主题

          下面将要使用一个开源的小项目ssf2fcitx来实现,首先使用git命令来下载源码

          然后cd到软件目录(默认为/home/yourname/ssf2fcitx/)使用Cmake来编译软件

          然后使用make来安装软件

          随后前往搜狗官网下载喜欢的主题,将下载下来的文件放入软件目录中,然后使用命令生成对应的fcitx输入法主题文件

          再将转换完成的文件转移动到fcitx5的皮肤文件目录下

          接下来右键输入法管理器,点击配置>附加组件>经典用户界面>主题在里面选择刚刚安装好的主题即可

          此外,也可以使用git的方式直接使用执行的方式运行该程序

          随后下载搜狗输入法的主题文件,方法同上,接下来进行文件转换

          随后将文件放入主题文件的存放位置

          接下来右键输入法管理器,点击配置>附加组件>经典用户界面>主题在里面选择刚刚安装好的主题即可

          13.6 fcitx5输入法使用搜狗输入法主题

          此方法同样使用的是ssfconv来实现,但是命令不大一样,使用的转换命令为

          随后将文件放入主题文件的存放位置

          13.7 KDE使用wayland显示服务

          在系统安装时默认使用的是X servcer的x11显示服务,X11 是一个网络协议,它描述了如何在客户端(应用程序)和显示器(服务器)之间交换消息,这些消息通常带有原始的绘制命令,如在某个位置绘制一个窗口等等,但是X11已经很古老了,X server协议提供的大部分功能不再使用,X11所做的几乎所有工作都重新分配给了各个应用程序和窗口管理器,然而,所有这些旧特性仍然存在,给所有这些应用程序带来了压力,损害了性能和安全性,而Wayland 由XOrg开发人员Kristian Hogsberg于2008年作为个人项目发起的,它是一个通信协议 ,用于指定显示服务器与其客户端之间的通信,Wayland是作为一个免费的开源社区驱动的项目而开发的,目的是用现代,安全和简单的窗口系统代替X 11,在Wayland中,合成器是显示服务器,Compositor是一个窗口管理器,它为应用程序提供每个窗口的屏幕外缓冲区,窗口管理器将窗口缓冲区合成为代表屏幕的图像,并将结果写入显示内存,Wayland协议允许合成器将输入事件直接发送到客户端,并让客户端将损坏事件直接发送到合成器,与X情况一样,客户端在接收到事件时会作为响应更新用户界面(UI),但是,在Wayland下,渲染发生在客户端中,并且客户端只是向合成器发送请求以指示已更新的区域,这极大的减少了性能消耗,此外,Wayland在安全性方面也很出色,因为每个程序都是独立工作的,但目前,Wayland在KDE环境下的表现多数场景下基本良好,在部分场合下可能会存在问题,由于其影响了网络通信协议,也很可能在某些场合下出现网络异常乃至图形界面异常等问题,建议尝试前先使用timeshift进行系统备份,若发生问题可以立刻还原系统,以下是Arch linux KDE在Wayhland环境下运行所需要安装的包

          13.8 Git走代理

          在使用git时,很容易由于国内访问的网速过慢造成使用git失败等情况的发生,如果你有科学上网的帐号且已经设置好科学上网工具,那么可以尝试此方式来加速git的下载速度

          13.9 curl走代理

          curl是一个十分重要的下载工具,它支持很多的下载协议且十分轻量和易于扩展,在使用yay下载时,很可能会因网络问题造成下载过慢或下载失败,因此你可以尝试让curl走代理,如果你已经配置了科学上网的帐号且已经设置好科学上网工具,那么你可以尝试让curl走代理实现下载,若没有代理可以尝试 13.10

          配置curl的配置文件

          在里面添加上这句话就好啦!

          13.10 AUR的makepkg下载模式修改

          curl固然好用,但是当没有代理的话在国内显然短板还是很严重,为此,我们可以使用axel的多线程下载来取代curl实现高速下载(但还是在下载特定软件包时还是会因国内完全无法访问或者服务器禁止多线程访问造成下载过慢或失败)

          请先确保你已经安装了axel

          配置makepkg的配置文件

          只需要修改一下下,将原本的这部分每行前面加上#注释掉

          然后添加如下内容(以下为8线程,当然你也可以将其修改成其它数字)

          随后正常执行yay就可以了,但是可以的话强烈不建议使用这种方法,有条件请使用13.9方法

          13.11 命令习惯简写的配置

          在使用过程中,有时会碰到一些很长的命令,但这些命令会被频繁的使用,此时,可以通过修改.bashrc(终端配置文件)的方法实现命令的简化

          编辑方法:

          正常情况下你会看到类似以下的文件内容

          而我们需要修改的地方就是alias所在行位置的后面,添加我们想要的命令简化即可,格式为alias 简化后的命令=‘要简化的命令’

          如将proxychains yay 简化为yay :alias yay='proxychains yay'

          注:若使用的并非Bash终端,需要修改的是对应的配置文件,如zsh终端为~/.zshrc

          13.12 pacman启动并行下载

          Pacman 6.0 增加了并行下载选项,将 /etc/pacman.conf[options] 选项 ParallelDownloads 设置成正整数,例如 5,将会同时下载 5 个软件包,如果未设置此选项,软件包将会被依次下载

          13.13 备份还原软件包列表

          有些情况下需要完全重装系统,但软件包数目太多将导致重新安装极其费力,此处给出一次性备份命令:

          完整备份系统软件包:pacman -Qqen > packages-repository.txt

          完整备份AUR软件包:pacman -Qqem > packages-AUR.txt

          完整还原系统软件包:pacman --needed -S - < packages-repository.txt

          完整还原AUR软件包:yay -S << packages-AUR.txt

          13.14 使用开源Nvidia驱动

          部分场景下nvidia的闭源驱动可能存在兼容造成的性能问题,使用开源版驱动可缓解

          13.15 常见使用时问题解决

          14.常用知识点

          此处先给出平时很可能会用到的命令的基本使用方法,当然,每个命令的功能肯定不止这点,更多可以通过--help查看相关的全部功能以及语法例如ls --help可以查看关于ls指令的相关信息,此外请注意,基本上所有命令都支持使用绝对路径和相对路径,因此不必一直使用绝对路径(但部分命令不支持两种路径的混用)

          14.1常用基本命令表
          命令功能基础用法
          ls查看某个文件夹下的文件与子文件夹ls 路径
          ln链接文件ln -s 原文件 目标文件
          cd跳转当前终端的路径cd 路径
          cp复制cp 原文件路径 将要复制到的文件路径
          rm删除rm 要删除的文件路径
          mv移动命令mv 原文件路径 新的文件路径
          mkdir创建目录mkdir 文件目录名
          pwd查看当前的终端路径pwd
          cat查看文件内容cat 文件路径
          grep分析一行信息grep 查找的内容
          find查找文件find 文件名称
          exit结束当前终端的会话exit
          reboot重启(也可以使用shutdownreboot
          poweroff关机(也可以使用shutdownpoweroff

          注,对于关机,重启等相关操作,在linux里面有些混乱,因为有很多个效果基本一致的命令(尤其是关机)以下是各个关机的简介:

          shutdown命令是一个被推荐的安全的命令,通过参数-h或-r的配合来完成关机或重启。不过在linux系统中只有拥有root权限才可以使用这个命令,所以,虽然推荐用这个命令,但是这个命令用起来真的不方便,每次使用都需要先提权,shutdown执行关机是通过发送信号给init,要求它改变运行级别,以此来关机,在linux中,关机或重启实际上是运行级别的调整,所以也可以用init直接调整运行级别来进行关机或重启,使用init命令时,机器立即关机或重启。它也需要root权限(这在arch中完全被禁止直接调用,因为arch已将init淘汰进而使用systemd)

          系统关机前使用shutdown命令,系统管理员会通知所有登录的用户系统将要关闭,此时login命令会被冻结,禁止新用户进行登陆操作,shutdown执行的效果取决于它向系统(init)发送的信号而shutdown执行时发送的信号类型取决于运行时添加的参数(在arch中,它将发送信号给systemd来实现与之相类似的功能)

          级别状态
          0关机
          1单用户,仅root维护模式
          2多用户,不能使用网络文件系统
          3完全多用户模式
          4图形模式
          5安全模式
          6重启
          附加参数功能
          -H停止系统运行
          -p关闭设备电源
          -r重启设备
          -h等效于poweroff,由halt覆盖
          -k不要停止/关闭电源/重新启动,只向其他用户发送警告信息-
          -c取消被挂起的关机

          注:shutdown均支持延时设置,即可以在参数后面跟上一个时间参数(默认有1分钟的时间参数)

          用halt命令来关机时,实际调用的是shutdown -H,halt 执行时将杀死应用进程,执行sync系统调用文件系统写操作完成后就会停止内核

          halt命令的链接,但它会会发送一个 ACPI 信号来通知系统关机,基本用法和 halt 差不多

          reboot的工作过程差不多跟halt一样,不过它是引发主机重启,而halt是关机,它的参数与halt相差不多

          14.2 部分常用高级命令表及其相关知识
          命令功能备注
          whereis查询目标的所在位置可用来查询软件包或文件的位置,例如whereis wine,但是需要注意的是whereis是从文件数据库中检索,可能会因为数据库同步延时的问题造成无法查找到比较新的目标,find指令是即时搜索目标,相对运行性能不高,但不会出现无法检索到的问题
          sudo提权指令将此命令以根权限(root权限)运行
          su切换用户su 后加用户名可用来切换用户,后面留空则会切换到根目录(root)权限下,请慎用此命令的留空用法!!!
          kill于删除执行中的程序或工作很重要的命令,用于关闭需要关闭的程序进程
          chmod修改文件权限相关常用chmod +x用来赋予文件可执行权限
          mount挂载挂载设备或目录到指定位置
          ./直接执行文件此命令实际上是路径描述符,后接文件路径即可使用
          whatis查询某个命令的功能后接命令名称即可查询
          tar压缩文件操作tar -cvf 创建对应压缩文件
          tar -tvf 查看对应压缩文件
          tar -xvf 提取对应压缩文件
          ping网络测试后加测试地址即可
          uname列出当前系统的重要信息,如内核名称、主机名、内核版本、处理机类型等等uname -a可以查看所有信息,因为某些原因(不酷),所以你可以自行安装screenfetch
          df查看文件系统中磁盘的使用情况–常使用df -h来查看(-h表示给人看)
          free查看内存使用情况此外还有vmstat用于查看内存情况
          ps显示系统的运行进程常用ps-l查看
          top按照CPU的占用情况,显示占用量较大的进程常用top -u进行指定用户进程查看
          fsck检查并修复系统分区出现这个那么你的系统可能就凉了一半了
          systemctl系统服务管理器指令详见14.2.1
          makepkg软件包自动编译脚本常用为makepkg -i用来对git下的软件包进行打包,详见官方文档
          14.2.1 部分systemctl相关命令表(仅使用systemd的系统可用)
          命令功能备注
          start启动服务 
          stop关闭服务 
          status查看系统服务状态 
          enable设置服务为开机自启后面加上--now会立刻启动该服务
          reenable重新设置服务为开机自启 
          disable禁止服务开机自启 
          reload重新加载服务 
          restart重启服务 
          daemon-reload重新载入systemd配置 

          更多请查阅官方文档

          14.2.2 KDE桌面进程控制

          在日常使用KDE时,在某些场合下可能会发生KDE崩溃(尽管现在遇到这种情况的可能性已经很低了),或是在一些场合下需要以特殊方式启动KDE,亦或是使用特定的参数启动KDE桌面

          以下命令为使用代理启动KDE桌面环境(解决部分场合下的特殊需求,如下载动态壁纸所需要的插件)

          14.2.3 tty(终端)相关知识

          tty是运行在内核态的软件仿真终端,在linux中,tty可以说是很重要的一部分 ,在现在的计算机内的tty均为软件仿真终端,但早期的终端是一台独立于计算机的机器,提到终端就也需要提一下控制台,控制台的概念与终端含义非常相近,其实现在我们经常用它们表示相同的东西,但是在计算机的早期时代,它们确实是不同的东西,控制台是计算机的基本设备,而终端是附加设备,计算机操作系统中,与终端不相关的信息,比如内核消息,后台服务消息,都可以显示到控制台上,但不会显示到终端上。比如在启动和关闭 Linux 系统时,我们可以在控制台上看到很多的内核信息,现在的终端和控制台都由硬件概念,逐渐演化成了软件的概念,简单的说,能直接显示系统消息的那个终端称为控制台,其他的则称为终端(但控制台也是一个终端),但在实际使用时并不会区分 Linux 中的终端与控制台

          14.2.4 链接文件

          链接文件是 Linux 文件系统的一个优势,如需要在系统上维护同一文件的两份或多份副本,除了保存多份单独的物理文件副本之外,还可以采用保存一份物理文件副本和多个虚拟副本的方法。这种虚拟的副本就称为“链接”。链接是目录中指向文件真实位置的占位符。在 Linux 中有两种不同类型的文件链接:

          要为一个文件创建符号链接,原始文件必须事先存在,然后可以使用 ln 命令以及-s选项来创建符号链接

          在上面的例子中,注意符号链接的名字目标文件位于ln 命令中的第二个参数位置上,显示在长列表中符号文件名后的->符号表明该文件是链接到文件原文件上的一个符号链接,另外,还要注意的是符号链接的文件大小与数据文件的文件大小。符号链接目标文件只有4个字节,而原文件有 1024 个字节。这是因为目标文件仅仅只是指向原文件而已。它们的内容并不相同,是两个完全不同的文件,另一种证明链接文件是独立文件的方法是查看 inode 编号。文件或目录的 inode 编号是一个用于标识的唯一数字,这个数字由内核分配给文件系统中的每一个对象。要查看文件或目录的 inode 编号,可以给 ls 命令加入-i参数

          从这个例子中可以看出原文件的 inode 编号是 123456,而目标文件的 inode 编号则是 123457,所以说它们是不同的文件,当含有一连串符号链接的链接串时,不必一个一个用ls 查看其链接关系,可以直接使用 readlink -f filename 指令查到当前符号链接串的原始文件是什么,“硬链接”会创建独立的虚拟文件,其中包含了原始文件的信息及位置。但是它们从根本上而言是同一个文件,引用硬链接文件等同于引用了源文件,要创建硬链接,原始文件也必须事先存在,只不过这次使用 ln 命令时不再需要加入额外的参数了

          在上面的例子中,我们使用 ls -li命令显示了*code_files 的 inode 编号以及长列表,注意,带有硬链接的文件共享 inode 编号,这是因为它们终归是同一个文件,还要注意的是,链接计数显示这两个文件都有两个链接,另外,它们的文件大小也一模一样,只能对处于同一存储媒体的文件创建硬链接,要想在不同存储媒体的文件之间创建链接,只能使用符号链接,复制链接文件的时候一定要小心,如果使用 cp 命令复制一个文件,而该文件又已经被链接(不论是符号链接还是硬链接)到了另一个源文件上,那么得到的其实是源文件的一个副本,这很容易让人犯晕,其实用不着复制链接文件,可以创建原始文件的另一个链接,同一个文件拥有多个链接,这完全没有问题。但是,尽可能不要创建符号链接文件的符号链接,这会形成混乱的链接链,不仅容易断裂,还会可能因管理不当造成各种麻烦

          14.2.5 挂载&卸载磁盘设备

          Linux 文件系统将所有的磁盘都放在一个虚拟目录下,在使用新的存储媒体之前,需要先把它放到虚拟目录下,此工作称为挂载(mounting),在今天的图形化桌面环境里,大多数 Linux 发行版都能自动挂载特定类型的可移动存储媒体,如光盘,软盘,U盘等

          Linux 上用来挂载媒体的命令叫作 mount,默认情况下,mount 命令会输出当前系统挂载的设备列表

          mount 命令提供如下四部分信息:

          以下为常用的挂载命令(需要根权限)

          此外,mount指令支持使用 -o 附加权限参数 或功能参数

          参数值功能
          ro以只读形式挂载
          rw以读写形式挂载
          user允许普通用户挂载文件系统
          check=none挂载文件系统时不进行完整性校验
          loop挂载文件
          14.2.6 文件路径

          文件路径可以分为两种:绝对路径和相对路径,作用都是描述某个文件的具体位置但二者的原理不同,首先说明,windows的文件描述方式

          从硬盘根目录开始的路径,这是一个被完整描述的路径,对于对于任何系统而言,绝对路径在一个系统中唯一生效,即在整个系统中一个绝对路径只能描述一个确定的文件的位置,在windows系统中,绝对路径从盘符开始,即类似C:/Windows/explorer.exe , 而对于类unix系统来说,由于没有盘符的逻辑定义,因此没有上述的盘符部分,如/home/stvsl/Desktop/.directory

          相对路径是从当前程序的运行位置开始,以该程序位置作为起始点来描述一个文件的位置,例如在windows中的某个程序是从C:/windows文件夹中运行的,那么就可以有相对路径./explorer.exe来描述与运行位置同级的文件位置,即C:/Windows/explorer.exe,对于Linux系统此部分内容通用,此外,相对路径也可以描述和运行位置相对靠近的文件的位置,以下为完整定义表

          符号定义
          ./当前所在目录
          ../上级目录
          /根目录

          由此可发现,在前面提到过的使用./来执行shell脚本事实上只是告诉终端去运行该文件,终端接收到文件后会直接执行,也由此可见,Linux底层对shell语言的支持和shell对Linux的重要地位

          14.2.7 内存&内存管理

          由于此部分内容较为硬核,因此只进行简要介绍

          14.2.8 管道

          管道是一种最基本的IPC机制,作用于有血缘关系的进程之间,完成数据传递。调用pipe系统函数即可创建一个管道,管道实为内核使用环形队列机制,借助内核缓冲区(4k)实现其功能,有以下特点

          管道局限性

          在linux命令中,管道可用于将上一条命令的结果传给下一条命令作为输入数据使用,其管道的使用方法为使用|分隔需要使用管道的命令即可

          14.2.9 命令逻辑连接词

          和任意一种编程语言一样,在命令当中也有逻辑连接词的功能语法,下表为详细介绍

          逻辑符号
          顺序多条命令;
          上条命令执行成功后执行下一条命令&&
          上条命令执行失败后执行下一条命令||
          转储上次命令返回的结果$?
          14.2.10 返回结果处理

          使用逻辑连接词命令的场合往往涉及到了对前一条命令的返回结果处理,因此结果处理命令有时也很重要,以下为简要介绍表

          功能命令
          排序sort
          计数wcuniq
          选取cutgrep
          双向重定向(同时将结果输出并转储)tee
          字符转换trcoljoinpasteexpand
          切割(依据数据大小或行数切割成为小文件)split
          14.2.11 权限

          Linux操作系统是一个多用户操作系统,因此可能存在资源共享与隔离的问题上发生问题,例如用户A的某个文件是不希望被B看到,因此在Linux系统中拥有一套完整的权限管理方案

          Linux原生的权限管理机制是基于用户角色的管理机制,也就是UGO(用户权限管理机制)+RWX(文件读写执行权限管理机制)/ACL(访问控制列表),或者被称为自主访问控制,它是指文件的拥有者可以任意修改或者授予此对象相应的权限,这里的拥有者就是指具体的用户

          另外一种访问控制策略是基于标签的访问控制,比如我们给程序和其访问的资源打上标签,这样程序就可以访问有标签的资源,对于没有标签的资源则不能访问,这种模式并非基于用户,而是基于许可,这种策略被称作强制访问控制(MAC)其中SELinux权限管理机制就是强制访问控制的一种

          15.永恒不变的真理

          15.1 Linux/Unix的核心设计理念

          一切皆是文件是Linux/Unix操作系统的核心设计理念,它对文件的理解与windows截然不同,不仅普通的文件是以文件形式存在,目录、字符设备、块设备、 套接字等在都是以文件的形式存在,它们虽然类型不同,但是对其提供的却是同一套操作界面,根据不同的文件类型执行不同的功能,而不像是Windows那样使用了大量的其他程序对其进行功能划分,如注册表,组策略,快捷方式等等(但实际上这些也是文件,只不过被封装成了一个完全独立的一部分并隐藏了它们的文件逻辑)

          15.2 一切皆文件

          Linux系统中,文件具体可分为以下几种类型

          15.3 Linux的文件目录结构

          Windows与Linux以及Unix操作系统均采用的是树形目录结构,但Windows的树形目录为从盘符开始,即盘符作为目录的根,也就是说Windows中每一个盘符的树形目录都与其它树形目录不相关,而Linux/Unix操作系统中并无盘符的概念,它只有一个树形目录,它以/作为起点将各种文件进行存放,为了便于管理,Linux的文件目录均以一套统一的规则进行存放,这套规则是由Linux 基金会发布的FHS 标准(即文件系统层次化标准,该标准规定了 Linux 系统中所有一级目录以及部分二级目录的用途。发布此标准的主要目的就是为了让用户清楚地了解每个目录应该存放什么类型的文件),多数 Linux 发行版系统都遵循这一标准

          在此规则中,/被视为最重要的目录它作为所有目录的根目录,一切其它目录均是由/衍生出来,且根目录与系统的开机、修复、还原等操作密切相关

          此表为一级目录及其作用表

          一级目录名称功能及作用
          /bin存放系统命令,普通用户和 root 都可以执行。放在 /bin 下的命令在单用户模式下也可以执行
          /boot系统启动目录,保存与系统启动相关的文件,如内核文件和启动引导程序(grub)文件等
          /dev设备文件保存位置
          /etc配置文件保存位置,所有采用默认安装方式安装的服务配置文件全部保存在此目录中,如用户信息、服务的启动脚本、常用服务的配置文件等
          /home普通用户的主目录(也称为家目录), 在创建用户时,每个用户要有一个默认登录和保存自己数据的位置,就是用户的主目录,所有普通用户的主目录是在 /home/ 下建立一个和用户名相同的目录。如用户 liming 的主目录就是 /home/liming
          /lib系统调用的函数库保存位置
          /media挂载目录,系统建议用来挂载媒体设备,如软盘和光盘,正式的Arch中已废弃此目录
          /mnt挂载目录,早期 Linux 中只有这一个挂载目录,并没有细分,系统建议这个目录用来挂载额外的设备,如 U 盘、移动硬盘和其他操作系统的分区
          /misc挂载目录,系统建议用来挂载 NFS 服务的共享目录,虽然系统准备了三个默认挂载目录 /media/、/mnt/、/misc/,但是到底在哪个目录中挂载什么设备可以由管理员自己决定,正式的Arch中已废弃此目录
          /opt第三方安装的软件保存位置,这个目录是放置和安装其他软件的位置,手工安装的源码包软件都可以安装到这个目录中
          /proc*虚拟文件系统,该目录中的数据并不保存在硬盘上,而是保存到内存中。主要保存系统的内核、进程、外部设备状态和网络状态等
          /rootroot 的主目录,普通用户主目录在 /home/ 下,root 主目录直接在“/”下
          /run*是一个临时文件系统,存储系统启动以来的信息,当系统重启时,这个目录下的文件应该被删掉或清除 /var/run 目录指向 run
          /sbin保存与系统环境设置相关的命令,只有 root 可以使用这些命令进行系统环境设置,但也有些命令可以允许普通用户查看
          /srv服务数据目录,一些系统服务启动之后,可以在这个目录中保存所需要的数据(仅当作服务器使用时是非空的)
          /sys*虚拟文件系统,和 /proc/ 目录相似,该目录中的数据保存在内存中,主要保存与内核相关的信息
          /tmp临时目录,系统存放临时文件的目录,在该目录下,所有用户都可以访问和写入,建议此目录中不能保存重要数据
          /usr存储系统软件资源推荐的统一位置
          /var存储动态数据,例如缓存、日志文件、软件运行过程中产生的文件,但部分软件也会将自己安装在这里
          lost+found*当系统意外崩溃或意外关机时,产生的一些文件碎片会存放在这里,在系统启动的过程中,fsck 工具会检查这里,并修复已经损坏的文件系统

          在这里面,/usr/var两个目录的primula也很重要,以下为这两个二级目录的功能表

          二级目录名称功能
          /usr/bin/存放系统命令,普通用户和超级用户都可以执行。这些命令和系统启动无关,在单用户模式下不能执行
          /usr/sbin/存放根文件系统不必要的系统管理命令,如多数服务程序,只有 root 可以使用(比较高级的管理程序和系统守护程序)
          /usr/lib/应用程序调用的函数库保存位置
          /usr/XllR6/图形界面系统保存位置(Arch中已废弃)
          /usr/local/手工安装的软件保存位置
          /usr/share/应用程序的资源文件保存位置,如帮助文档、说明文档和字体目录
          /usr/src/源码包保存位置
          /usr/includeC/C++ 等编程语言头文件的放置目录
          二级目录名称功能
          /var/lib/程序运行中需要调用或改变的数据保存位置
          /var/log/登陆文件放置的目录
          /var/run/一些服务和程序运行后,它们的 PID(进程 ID)保存位置,存储系统启动以来的信息
          /var/spool/里面主要都是一些临时存放,随时会被用户所调用的数据
          /var/www/RPM 包安装的 Apache 的网页主目录
          /var/nis和/var/ypNIS 服务机制所使用的目录,nis 主要记录所有网络中每一个 client 的连接信息;yp 是 linux 的 nis 服务的日志文件存放的目录,Arch中默认不存在
          /var/tmp一些应用程序在安装或执行时,需要在重启后使用的某些文件,此目录能将该类文件暂时存放起来,完成后再行删除
          15.4 linux的启动过程

          Linux系统的启动过程并不复杂大致可以被划分成五个阶段

          15.5 一切皆文件的利与弊

          和 Windows 系统不同,Linux 系统没有 C 盘、D 盘、E 盘的盘符,只有一个根目录(/),所有的文件都被存储在以根目录(/)为树根的树形目录结构中,这样做最明显的好处是,开发者仅需要使用一套 API 和开发工具即可调取 Linux 系统中绝大部分的资源。举个简单的例子,Linux 中几乎所有读(读文件,读系统状态,读 socket,读 PIPE)的操作都可以用 read 函数来进行;几乎所有更改(更改文件,更改系统参数,写 socket,写 PIPE)的操作都可以用 write 函数来进行,不利之处在于,使用任何硬件设备都必须与根目录下某一目录执行挂载操作,否则无法使用。本身 Linux 具有一个以根目录为树根的文件目录结构,每个设备也同样如此,它们是相互独立的。如果我们想通过 Linux 上的根目录找到设备文件的目录结构,就必须将这两个文件系统目录合二为一,也就是将一个设备以文件的形式连接到目录中的某一个位置方便进行操作和管理,这就是挂载的真正含义

          16 结语

          此文档到此就结束了,通过完整的Arch安装流程来练习和理解Linux的运行逻辑与操作系统原理并做到能够熟练的使用Arch Linux是这篇文档的目的,有些东西只有在自己不断的去尝试和失败中才能够得到,相信在你进行上面的安装流程的时候也会感觉到困惑:为什么安装一个系统要这么麻烦?有个一键安装啥的不好吗?但是当你真正一步一步的走下来,逐渐理解为什么要这样子执行这些命令的时候,相信你会有一份自己的答案

          很难说Arch Linux是一个完美的系统,尽管它有许多的优点,但缺陷也很多,但当你想要使用它的时候,你会首先在安装的过程中得到锻炼与提升,逐渐掌握部分的操作系统原理,这篇文档后半部分更多的是对前面的命令的功能的解释,相信当你执行完安装过程中的那些命令以后,当你再次看到这些命令,你会有一份更加深入的理解,这也是arch linux的特点,arch 的设计哲学是保持简单,一目了然,而它的核心原则是简洁,现代,实用,以用户为中心,因此它使用了极其简单的逻辑对整体进行实现,放弃了开箱即用,选择让用户主动安装所需要的软件包和依赖,但又同时尽量避免了软件包和依赖的版本冲突问题,尽可能的保证了用户的使用体验,但由于arch的极其激进的更新策略,有时候很容易因为更新的组件的依赖问题造成系统异常甚至崩溃,且很难找到实际原因,因此需要及时备份或者设置自动备份,而不更新系统对于arch来说则更加的致命,很可能因为各种的依赖问题造成严重的软件包版本错误导致系统崩溃,因此养成每天及时更新的习惯十分的重要,arch就像是一个小孩子,活力四射,总是能够以最好的状态面对你的任务,能够完美发挥硬件的性能,但也很需要照顾,持续观察和感受它的运行能力,及时保护它免于挂掉,但这篇文档的内容有限,对linux的知识体系内容还只是停留在一个大框的状态,反映了linux使用的缩影,实际的知识应用和练习需要你日常的不断积累来实现,此文档只基本满足了日常生活的使用,如果你想要继续深挖下去,那就需要你的自己去探索与发现,linux的最基本本质是一个开源内核,因此它联系了软件与硬件两者,同时提出的一系列概念也十分的易于理解和使用,它也同时涉及到了数据结构,计算机组成原理,计算机网络和操作系统的大量知识,让你以最直观的方式感受计算机知识体系的力量,Arch的WiKi是一个十分强大的文档库,拥有极多的贡献者在孜孜不倦的贡献文档来应对解决你使用Arch时的各种问题,满足你无限的想法与思考,同时也为你的未来准备了更多条选择的道路,它会逐步引导希望你完成一件又一件看起来很复杂的事情,从逐渐能够使用好它不让它崩溃,到让它的性能和生产效率提升,再到以它作为生产环境实现高效率的工作和完全满足日常使用甚至是游戏娱乐需求,希望你能在这条路上走的顺利,加油 !