重新安装 Arch Linux 您所在的位置:网站首页 yay配置源 重新安装 Arch Linux

重新安装 Arch Linux

2023-04-13 11:15| 来源: 网络整理| 查看: 265

折腾Display manager把系统搞坏掉了,重新安装。这里重新记录安装教程。之前的记录有一些已经变化不适用了。之后如果有变更也会继续更新这里。

安装介质

使用一个U盘作为安装盘从Arch Linux Downloads下载安装镜像。推荐使用Magnet link下载,也可以使用网页下方的中国镜像直接下载。

Linux环境有dd命令可以直接制作安装U盘。详细说明

1dd bs=4M if=/path/to/archlinux.iso of=/dev/sdx status=progress oflag=sync

windows环境也有对应的工具。印象里直接用微软官方的Windows USB/DVD Download Tool就可以制作安装U盘。具体的步骤可以参考制作Win7安装U盘的过程

注意事项: 这个安装盘可以在日后的维护中当作系统急救盘使用,但是需要隔段时间就更新。

XPS 的 UEFI 设置

根据wiki上关于XPS 15 9560的相关说明,安装前需要修改一些UEFI设置。

安装环境配置

插上U盘,重启。在出现Dell的图标的时候一直不停按F12,直到出现进度条。之后就进入Boot Menu,选择带USB字样的选项,进入安装环境。

屏幕是4K的分辨率,默认字体小。先改字体,目前只找到这个字体用的效果比较好

1setfont latarcyrheb-sun32

安装过程需要联网,使用 wifi-menu iwctl来连接网络。具体的用法参考iwctl Usage

123# wifi-menuiwctlping t.cn -c 4

安装的时候需要通过软件仓库安装软件。开启时间同步并使用国内的镜像。

12timedatectl set-ntp truesed -i '/China/!{n;/Server/s/^/#/};t;n' /etc/pacman.d/mirrorlist

上面的修改方法已经无效了,去Pacman Mirrorlist Generator找一份最快的镜像列表,手动输入下

分区

用的是EFI,那就需要一个EFI 系统分区。Arch Linux本身需要一个分区分配给根目录/。以防内存不够用计划分SWAP分区备用。

计划的分区如下表

分区 大小 格式 路径 说明 nvme0n1p1 512M fat32 /EFI EFI 系统分区 nvme0n1p2 8G [SWAP] [SWAP] 交换分区 nvme0n1p3 160.5G btrfs / 根分区

使用lsblk确定SSD的磁盘名称。结果中带nvme字样的就是笔记本的SSD。其他以loop结尾的可以忽略。

然后使用parted或者cfdisk进行分区。安装的是Arch Linx单系统,直接删除原有的分区表,直接新建就可以了。

首先格式化EFI 系统分区,根据wiki上的EFI 系统分区

1mkfs.fat -F32 /dev/nvme0n1p1

格式化交换分区

12mkswap /dev/nvme0n1p2swapon /dev/nvme0n1p2

格式化根分区,用的btrfs

1kfs.btrfs -L xps /dev/nvme0n1p3

格式化完成后使用lsblk查看有没有错

先挂载分区到对应路径

123mount -o compress=lzo /dev/nvme0n1p3 /mntmkdir -p /mnt/bootmount /dev/nvme0n1p1 /mnt/EFI

注意事项: 之后当作系统急救盘的来使用的时候也需要安装上面的来挂载。

安装系统

安装基础软件包组base和基础开发包组base-devel,后者用于安装AUR中的软件。Linux内核需要另外安装,已经排除在base组中了。

1pacstrap -i /mnt base linux linux-firmware base-devel

如果有选项默认回车就可以了。如果之前修改软件仓库服务器用了国内的镜像,安装很快就会完成。

系统基础配置

生成分区表。检查一下生成的文件是否正确

12genfstab -U /mnt >> /mnt/etc/fstabcat /mnt/etc/fstab

使用arch-chroot进入新系统。接下来的配置都在新系统里进行

1arch-chroot /mnt

设置时区

1ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

同步硬件时间

1hwclock --systohc

安装编辑器之后要编辑文件,这里先安装一个编辑器,简单的编辑用nano。安装系统后如果有复杂的编辑就直接使用vscode了。

1pacman -S nano

区域设置

1nano /etc/locale.gen

去除en_US.UTF-8 UTF-8和zh_CN.UTF-8 UTF-8前的#,保存退出nano生成locale

1locale-gen

设置默认 locale

1echo 'LANG=zh_CN.UTF-8' > /etc/locale.conf

主机名设置,这里直接设置为xps

12echo xps > /etc/hostnamenano /etc/hosts

输入以下内容,保存退出

123127.0.0.1 localhost::1 localhost127.0.1.1 xps.localdomain xps

设置root密码重要,必须记住的密码

1passwd

按提示输入密码

日常使用的话,基于安全原因不使用高权限的root用户。新建用户作为日常使用。这里以archie作为用户名。

12useradd -m -g users -G wheel -s /bin/bash archiepasswd archie

按提示输入密码。日常使用就以archie用户配合设置的密码登录。日常使用中偶尔需要root权限,这里配置sudo用来临时提权

1EDITOR=nano visudo

找到Uncomment to allow members of group wheel to execute any command这行,删除下一行的#,保存退出。关于sudo的用法和更多配置参考

安装引导程序。这里直接使用传统的GRUB了

123pacman -S dosfstools grub efibootmgrgrub-install --target=x86_64-efi --efi-directory=/EFI --bootloader-id=grubgrub-mkconfig -o /boot/grub/grub.cfg

至此,Arch Linux可以算是安装完成了。根据官网的教程这个时候应该要重启了。但是并不能作为日常使用。接下来需要进行基本的配置和安装必要的软件,包括桌面环境

桌面环境

因为显示驱动的关系,开关机会挂起。

1nano /etc/default/grub

在GRUB_CMDLINE_LINUX_DEFAULT追加acpi_rev_override=1。加完之后该行差不多就是这个样子

1GRUB_CMDLINE_LINUX_DEFAULT="quiet acpi_rev_override=1"

使用xorg作为图形界面的接口。这里偷懒直接全部安装了,反正存储不是特别紧张

1pacman -S xorg-server

不要直接安装xorg软件组,里面带有一些游戏……

不喜欢gnome,所以安装KDE Plasma

1pacman -S plasma-meta

查看plasma-meta中包含的软件,里面用不到的可以删掉。

安装显示管理器sddm

1pacman -S sddm

sddm默认不需要配置,直接启用就可以了

1systemctl enable sddm

这样开机就能启动图形环境了,前面已经配置了中文环境,但是没有中文字体。不安装字体就会显示“豆腐”

1pacman -S noto-fonts-cjk noto-fonts-emoji 网络配置

XPS 15 9560没有网口,这里直接安装无线的相关包

1pacman -S iw wpa_supplicant dialog

安装网络管理包,这里貌似要安装gnome的才有用,原因存疑

1pacman -S networkmanager

接下来重启进入新系统

12exitreboot

这里关机重启XPS可能会挂起,长时间无响应。长按电源键直接关机。然后按电源键开机进入新系统。

注意事项安装用的U盘可以拔掉了

进入系统之后,会发现显示的字体特别小,而且没有无线网络。按下Ctrl+Alt+F2,进入tty2,用root帐号登录。先按照之前的步骤设置字体。

查看端口

1ip link show

显示的结果中带wlp项就是无线,这里以wlp3s0为例。上线无线端口,并开启管理服务

12ip link set wlp3s0 upsystemctl enable NetworkManager

按下Ctrl+Alt+F1,回到图形界面。打开系统设置->显示和监控->显示,设置缩放显示到合适的大小,4K屏的XPS设置200%差不多。确定并应用。

然后重启,应该可以看到显示的字体可以看了,也可以在默认的右下角设置无线网络连接了。

安装软件终端模拟器

Arch Linux安装软件一般都需要连接网络。先连接网络。现在图形环境没有终端,先安装终端。

切换到tty2,登录

安装konsole

1pacman -S konsole

安装完后,exit退出tty2,在图形界面应该可以打开konsole。之后的命令在konsole中执行。

文件管理器、浏览器、编辑器

安装文件管理器、浏览器、编辑器。这里用火狐只是临时用用,之后最终使用的是带硬件加速的chromium-vaapi

1pacman -S dolphin firefox code 代理

代理使用的是clash

1pacman -S clash

下载代理的配置文件,这里放在Clash.yaml中。运行代理

1clash -f /path/to/Clash.yaml

在系统设置->网络 设置->代理中选择使用手动配置的代理服务器。输入代理地址和端口,默认配置如下

代理方式 代理地址 端口 HTTP 代理 127.0.0.1 7890 HTTPS 代理 127.0.0.1 7890 SOCKS 代理 127.0.0.1 7891

代理默认使用的是第一个节点,切换节点打开管理网页。如果不能打开就说明当前使用的代理节点挂掉了,先取消代理系统配置。默认的端口号是9090,默认的地址是127.0.0.1。在管理页面的proxies中选择一个可用的代理节点就可以使用代理来访问了。具体的有没有使用代理可以看connections中的Chains部分

git&AUR Helper

Arch Linux的软件一般的在pacman仓库中,还有一些在AUR中。这里安装yay作为AUR Helper用来安装AUR中的软件。yay本身在AUR中,这里依照github上的说明手动安装

1234pacman -S gitgit clone https://aur.archlinux.org/yay.gitcd yaymakepkg -si

用yay可以方便地安装AUR中的软件。之后软件的安装和更新都可以使用yay。

日常软件和配置zsh

默认的bash使用体验一般,安装zsh来加强体验,并且使用code::stats插件。zsh插件使用zgen来管理。直接安装zgen就可以,zsh作为依赖也会安装。

1yay zgen

安装后,输入zsh启动,选择创建一个空的配置文件。然后在.zshrc中加入下面的配置启用zgen。

12# load zgensource "/usr/share/zsh/share/zgen.zsh"

退出zsh,重新打开zsh,输入zgen确认可以使用。退出zsh,再次修改.zshrc来启用zsh的插件。

123456789101112131415161718192021222324252627282930313233343536# Created by newuser for 5.8# code::statexport CODESTATS_API_KEY="code::stats machine key"# load zgensource "/usr/share/zsh/share/zgen.zsh"# if the init scipt doesn't existif ! zgen saved; then echo "Creating a zgen save" zgen oh-my-zsh # plugins zgen oh-my-zsh plugins/git zgen oh-my-zsh plugins/sudo zgen oh-my-zsh plugins/command-not-found zgen oh-my-zsh plugins/z zgen oh-my-zsh plugins/archlinux zgen load zsh-users/zsh-syntax-highlighting zgen load https://gitlab.com/code-stats/code-stats-zsh.git zgen load romkatv/powerlevel10k powerlevel10k # completions zgen load zsh-users/zsh-completions src # save all to init script zgen savefi# POWERLEVEL9K theme settingPOWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(dir vcs)POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(status root_indicator background_jobs history time battery)

再次启动zsh可能会进入powerlevel10k的初始化流程,可以直接跳过。

日常的大部分操作是在Konsole中进行的。在tty中因为缺少部分字体,显示会有不完全的现象。只在Konsole中默认启用zsh。设置->编辑当前配置方案->常规->命令中输入zsh的路径,默认是

/bin/zsh

注意事项: zsh配置文件没有发挥powerlevel10k的全部功能,感觉还有改进的空间

yay配置

这是用来安装软件的相关配置,包括了pacman、makepkg、nano的配置。

打开pacman的配置文件

/etc/pacman.conf

要做的修改是确保Color选项启用。为了之后安装steam,开启community仓库。为了方便之后的chromium-vaapi,添加Arch Linux CN仓库,关于这个仓库查看Arch Linux 中文社区仓库项目主页。仓库镜像写在另一个文件中。

12[archlinuxcn]Include = /etc/pacman.d/mirrorlistcn

mirrorlistcn中内容是Arch Linux CN的镜像地址,格式仿照其他的mirrorlist。

使用前还需要更新并安装archlinuxcn-keyring。

12yay -Syyyay -S archlinuxcn-keyring

AUR中的部分包需要下载源码后编译打包,在机器内存足够而且多核CPU的情况下,修改makepkg配置经可能加快编译速度。默认配置文件路径

/etc/makepkg.conf

主要修改是使用内存编译,并在压缩中使用多线程。

12BUILDDIR=/tmp/makepkgCOMPRESSZST=(zstd -c -z -q - --threads=7)

yay默认使用diff的方式来显示PKGBUILD,修改为编辑的方式。更多的选项可以参考项目主页

1yay --editmenu --nodiffmenu --save

nano的修改不多,主要是代码高亮。本来想加上行号的,但是跨行复制的时候会把行号也复制出来。默认配置文件路径

/etc/nanorc

12## To include all existing syntax definitions, you can do:include "/usr/share/nano/*.nanorc"

默认的配置中高亮的格式不多,这个项目提供更多的高亮格式。

1yay -S nano-syntax-highlighting chromium-vaapi

日常的电脑使用都是在浏览器中完成。其中大部分是看视频。其实使用软解也行,但是还是开启硬解。

chromium-vaapi是启用了硬件加速的chrome版本。安装浏览器本体很简单,在archlinuxcn镜像中有预编译版本。

1yay -S chromium-vaapi

麻烦的是安装Nvidia驱动并使用独立显卡。这里直接参考网上的教程

安装闭源驱动

1pacman -S nvidia nvidia-utils nvidia-settings

查看n卡的BusID

1lspci | egrep 'VGA|3D'

自动生成配置文件

1nvidia-xconfig

这步我直接跳过了

启动脚本配置

1234$ nano /usr/share/sddm/scripts/Xsetup======================================================================xrandr --setprovideroutputsource modesetting NVIDIA-0xrandr --auto

这是SDDM的配置,不同的窗口管理器设置不同

修改配置文件 1234567891011121314$ nano /etc/X11/xorg.conf======================================================================Section "Module" #此部分可能没有,自行添加 load "modesetting"EndSectionSection "Device" Identifier "Device0" Driver "nvidia" VendorName "NVIDIA Corporation" BusID "1:0:0" #此处填刚刚查询到的BusID Option "AllowEmptyInitialConfiguration"EndSectiontails/91454059 解决画面撕裂问题 1234567891011$ nano /etc/mkinitcpio.conf======================================================================MODULES=(nvidia nvidia_modeset nvidia_uvm nvidia_drm)======================================================================$ nano /etc/default/grub # 此处必须是grub引导,其他引导自行百度======================================================================GRUB_CMDLINE_LINUX_DEFAULT="quiet nvidia-drm.modeset=1" #此处加nvidia-drm.modeset=1参数======================================================================$ grub-mkconfig -o /boot/grub/grub.cfg # 就算grub引导,配置文件也可能不在一个地方,请查看清楚 nvidia升级时自动更新initramfs123456789101112131415161718$ mkdir /etc/pacman.d/hooks$ nano /etc/pacman.d/hooks/nvidia.hook======================================================================[Trigger]Operation=InstallOperation=UpgradeOperation=RemoveType=PackageTarget=nvidiaTarget=linux# Change the linux part above and in the Exec line if a different kernel is used[Action]Description=Update Nvidia module in initcpioDepends=mkinitcpioWhen=PostTransactionNeedsTargetsExec=/bin/sh -c 'while read -r trg; do case $trg in linux) exit 0; esac; done; /usr/bin/mkinitcpio -P'

内存够大,把浏览器的临时文件放到内存中。在chromium的启动命令后加上%U --disk-cache-dir=/tmp/cache

chrome使用的图形化是基于gtk的,文件选择的弹框安装kdialog

steam

在Proton的加持下,用Linux玩游戏也不是不行。具体有哪些游戏支持在Linux下运行可以在ProtonDB上查询。

安装steam需要启用32位源,打开/etc/pacman.conf,启用multilib

1yay -S steam

如果有问题,那么需要安装其他包,具体看Wiki

常用软件编辑器

vscode,使用官方的code包,或者去除微软信息的vscodium包

IM

主要用的是telegram,使用telegram-desktop-userfonts包来使用系统字体。

手机同步

同步通知用的,kdeconnect

视频播放器

bomi目前还没有找到合适的MPV前端

文件管理器

dolphin

输入法

建议使用fcitx,还是使用旧的4版本的fcitx,fcitx5还是有点问题。另外还有安装fcitx-qt5来实现qt支持,安装fcitx-cloudpinyin来实现云拼音支持,安装kcm-fcitx来图形化配置工具在用的是fcitx5,基本没问题,还有萌百的词库。

12345678fcitx5fcitx5-chinese-addonsfcitx5-configtoolfcitx5-gtk-gitfcitx5-material-color1fcitx5-pinyin-moegirlfcitx5-pinyin-zhwikifcitx5-qt

唯一的问题就是和浏览器vivaldi的搭配,这里使用git版本,暂时还没有出现问题。

截图工具

Spectacle

压缩工具

ark额外的格式支持

12345lrzip (optional) - LRZ format supportlzop (optional) - LZO format supportp7zip (optional) - 7Z format supportunarchiver (optional) - RAR format supportunrar (optional) - RAR decompression support 下载工具

aria2

远程工具

freerdp

系统美化和优化字体

参考Wiki

主题

安装主题breeze10-kde

在应用程序风格-窗口装饰中选择Breeze10 。Opacity设置为 0% ,按钮大小设置为很大

工作空间行为-桌面特效 模糊 设置合适的值

锁屏时间格式

参考reddit上的这个帖子

对于登录屏幕,修改/usr/share/sddm/themes/breeze/components/Clock.qml;对于锁屏,修改/usr/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/Clock.qml

修改内容:將

1text: Qt.formatTime(timeSource.data["Local"]["DateTime"])

替换为

1text: Qt.formatTime(timeSource.data["Local"]["DateTime"],"hh:mm:ss")

## 输入法皮肤安装fcitx-skin-material

关闭Baloo索引1balooctl disable DOCK

latte-dock分隔使用plasma5-applets-latte-spacer



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有