arch安装与配置

Arch安装

连接wifi

1
2
3
4
5
6
7
8
9
10
iwctl
#进入到#[iwctl]后
station wlan0 scan #默认网卡驱动都是wlan0
station wlan0 get-networks #获取可连接wifi列表
station wlan0 connect 你要连接的wifi名
#输入密码
quit #退出

#测试网络连接
ping baidu.com

时间同步服务启动

1
2
timedatectl set-ntp true
timedatectl status #查看服务是否运行

创建分区

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
fdisk -l   #查看电脑所有分区
fdisk /dev/nevm0n1 #进入为arch压缩卷的磁盘,看空间大小判断

#进行创建分区
p #查看磁盘布局
n #创建分区
#输入要创建分区的编号,我们这边先创建default数字的后一位,比方说default为8,就先输入9
9 #该编号分区用于swap分区
回车
+10G #根据自己分配给arch的空间大小决定,如果只有20G左右分配4G就够了,我这边是分配了80G

#继续创建分区
n
直接回车,按默认编号处理
回车
回车

w #保存分区布局

fdisk -l #看看是否创建成功

进行分区配置

1
2
3
4
5
6
7
8
9
10
mkfs.btrfs /dev/nvme0n1p8       #选择刚刚为arch分区分配大的分区,小的也就是10G的是用于swap分区的
#创建swap分区
mkswap /dev/nvme0n1p9 #选择刚刚分配的10G,也就是刚刚创建的两个分区的小的那个
swapon /dev/nvme0n1p9

mount /dev/nvme0n1p8 /mnt #根据你自己的编号改,这个盘是mkfs.btrfs /dev/nevm0n1p8这一步一样的盘
mkdir /mnt/boot

fdisk -l #查看efi分区的编号,我这里是/dev/nevm0n1p1
mount /dev/nvme0n1p1 /mnt/boot/

最终布局:

/dev/nvme0n1p1 Size Type mount
p1 300M EFI System /mnt/boot
p8 70G btrfs /mnt
p9 10G swap swap

手动添加国内镜像

1
2
3
4
5
6
7
nano /etc/pacman.d/mirrorlist

#在第一个Server镜像上添加
Server = https://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch

#crtl+x保存,输入y,回车

下载基本环境

1
2
3
4
5
6
7
8
9
pacman -Sy

#下载环境,根据cpu选择intel和amd
pacstrap -K /mnt base base-devel linux linux-firmware sudo nano vim networkmanager intel-ucode/amd-ucode

#如果安装报错,则需要更新keyring
pacman -Sy archlinux-keyring

#重新安装

###生成静态配置

1
2
3
4
5
6
7
genfstab -U /mnt >> /mnt/etc/fstab

#检查是否正确写入硬盘
cat /mnt/etc/fstab

#进入mnt
arch-chroot /mnt

配置

1.更改时区

1
2
3
4
#更改时区
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
#设置生效
hwclock --systohc

2.配置语言环境

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#配置语言环境
nano /etc/locale.gen
#crtl+w搜索 en_US.UTF-8和zh_CN.UTF-8将这两个前面的‘#'去掉
#按crtl+x保存,输入y,回车

#语言环境下载
locale-gen

#设置系统语言,现在先设置en_US.UTF-8,中文配置后面再说
nano /etc/locale.conf

#添加以下内容
LANG=en_US.UTF-8
#按crtl+x保存,输入y,回车

3.配置用户信息

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#配置hostname请求用户名
nano /etc/hostname
#输入
archlinux
#按crtl+x保存,输入y,回车

#开启网络管理服务开机自启动
systemctl enable NetworkManager

#设置root密码
passwd
#输入你的密码

#添加自定义用户
useradd -m -G wheel -s /bin/bash 用户名

#设置自定义用户密码
passwd 用户名
#输入密码

#设置自定义用户权限
visudo
#找到# %wheel ALL=(ALL:ALL) ALL,然后将前面的'#'去掉
#按i进入编辑模式,删掉#后,按esc,输入:wq保存

4.下载启动程序

1
pacman -S grub efibootmgr os-prober

5.编辑启动项文件设置

1
2
3
4
5
6
nano /etc/default/grub

#启用检测启动项设置
#找到GRUB_DISABLE_OS_PROBER=false
#将前面的'#'去掉
#按crtl+x保存,输入y,回车

6.启动项生成与系统下载

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB

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

#查看windows系统的启动项id,blkid的是efi的分区才是windows启动项位置
blkid /dev/nvme0n1p1
#记住信息中的UUID,我这里是A3E3-C1FA

#设置grub启动时检测出windows启动项配置
nano /boot/grub/grub.cfg

#crtl+w查找os-prober,在BEGIN和END中添加
menuentry 'Microsoft Window 11' {
insmod part
insmod fat
insmod chain
search --fs-uuid --no-floppy --set=root A3E3-C1FA #root后面填的是刚刚记录的uuid
chainloader (${root})/EFI/Microsoft/Boot/bootmgfw.efi
}

#按crtl+x保存,输入y,回车

exit #退出mnt配置

7.挂载硬盘

1
2
3
umount -R /mnt
#重启
reboot
  • 重启后就可以自由选择要去的系统,你可以先检查是否能够正常启动windows,然后可以把u盘拔出

Arch桌面配置

:我这里为了方便使用了别人的dotfiles的自动化下载脚本,你也可以可以跟着网上的教学下载其他桌面环境和配置。

配置信息:hyprland+alacritty+rofi的一系列配置,是一个平铺桌面,具体效果如下图,当然这个壁纸是我自己设定的,如何设定动态壁纸可以看后面

效果展示
image

image

  • 更多的细节我就不展示了,直接上教程

1.先登陆

2.配置网络

1
2
3
4
5
#配置网络
nmcli device wifi connect wifi名 password 密码

#测试网络
ping baidu.com

3.下载基本环境

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#下载git
sudo pacman -S git

#下载yay包
git clone https://aur.archlinux.org/yay-git.git
cd yay-git
makepkg -si

#如果下载失败并且go下载成功,则需要设置go的国内代理
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct
echo "export GO111MODULE=on" >> ~/.profile
echo "export GOPROXY=https://goproxy.cn" >> ~/.profile
source ~/.profile

#重新输入
makepkg -si

#回到主目录
cd ~

#创建下载dotfiles目录
mkdir Downloads
cd Downloads

#clone下dotfiles
git clone https://gitlab.com/stephan-raabe/dotfiles.git

#开始下载脚本
cd dotfiles
./install.sh

#然后开始配置下载,等待下载完成即可

软件工具配置

安装声卡驱动(必需)

  • 如果你没有声卡驱动,系统将会没有声音
1
yay -S pulseaudio alsa-utils
  • 重启生效

设置快速开关机(建议):

  • 如果不设置,开关机很慢,有时候可能得等个几分钟
1
2
3
4
5
6
7
#编辑系统文件
sudo nvim /etc/systemd/system.conf
#找到DefaultTimeoutStartSec和DefaultTimeoutStopSec
#将前面'#'去掉,然后在等于号后写上你想要的时间
DefaultTimeoutStartSec=5s
DefaultTimeoutStopSec=5s
#这边我设置5s

配置汉化和中文输入法(建议)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#下载中文字体
sudo pacman -S adobe-source-han-serif-cn-fonts
sudo pacman -S noto-fonts-cjk
sudo pacman -S noto-fonts-emoji
#配置系统语言
nvim /etc/locale.conf
#将LANG的那一行内容替换为
LANG=zh_CN.UTF-8

#下载中文输入法框架
sudo pacman -S fcitx5-im
sudo pacman -S fcitx5-chinese-addons fcitx5-rime

#配置环境文件
nvim /etc/environment
#添加以下内容
GTK_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XMODIFIERS=@im=fcitx
SDL_IM_MODULE=fcitx

#开机自启动
sudo nvim ~/.config/hypr/hyprland.conf
#在末尾添加
exec-once = fcitx5 # 输入法

# 输入法环境变量
env = XIM,fcitx
env = XIM_PROGRAM,fcitx
env = INPUT_METHOD,fcitx
env = GTK_IM_MODULE,fcitx
env = QT_IM_MODULE,fcitx
env = XMODIFIERS,@im=fcitx
  • 重启生效

配置tlp电源管理器(建议)

  • 如果没有电源管理器,arch会默认最高功率运行,耗电巨快
1
2
3
4
5
6
7
8
yay -S tlp tlp-rdw
#开机自启动
sudo systemctl start tlp
sudo systemctl enable tlp

#查看运行情况
tlp-stat -s

安装cpupowper(建议)

  • archlinux默认cpu可能会睿频,我们需要调节
1
2
3
4
5
yay -S cpupower

sudo cpupower frequency-set -g powersave
sudo systemctl start cpupower
sudo systemctl enable cpupower

配置开机自动清理垃圾(建议)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
cd ~
sudo nvim clean_arch.sh
#复制以下内容
#!/bin/bash

echo "正在清理旧的包文件..."
pacman -Rns $(pacman -Qtdq)

echo "正在清理缓存文件..."
rm -rf /var/cache/pacman/pkg/

echo "正在清理旧的包文件列表..."
rm -f /var/lib/pacman/sync/tarbackups/*

echo "正在清理log文件..."
rm -f /var/log/pacman.log

echo "清理完成"
#esc,输入:wq保存,一定要包含#!/bin/bash

#赋予权限
chmod +x ~/clean_arch.sh

#如果需要清理垃圾
cd ~
sudo bash clean_arch.sh

配置合盖休眠(建议):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#查看swap分区位置
swapon --show
#查看swap分区的uuid(我这里是/dev/nvme0n1p6)
sudo blkid /dev/nvme0n1p6

sudo nvim /etc/default/grub
#查找GRUB_CMDLINE_LINUX_DEFAULT


#在GRUB_CMDLINE_LINUX_DEFAULT的双引号里面的内容的后面添加
resume=UUID=刚刚查找到的uuid
#esc,输入:wq保存

#更新grub
sudo grub-mkconfig -o /boot/grub/grub.cfg

#添加resume钩子
sudo nvim /etc/mkinitcpio.conf
#在hooks行添加resume
我的情况:
原本是: HOOKS=(base udev autodetect modconf block filesystems keyboard fsck)
添加后: HOOKS=(base udev resume autodetect modconf block filesystems keyboard fsck)


#重新生产mkinitcpio
sudo mkinitcpio -p linux


#编辑合盖休眠
sudo nvim /etc/systemd/logind.conf
#找到HandlePowerKey
#将前面注释去掉
HandlePowerKey=hibernate
#esc,输入:wq保存
  • 重启生效

配置timeshift快照(建议)

  • arch是一个很容易滚挂的系统,如果不想数据丢失,备份和快照就很需要
  • timeshift可以用gui或者命令进行创建和管理快照,也可以选定时间点进行还原
1
yay -S timeshift
  • 操作:

    • 进入到timeshift的ui界面,如果打开运行发现没有反应,可以试试在终端输入以下命令打开
    1
    sudo -E timeshift-gtk
    • 点击向导,选择rsync类型备份,点击下一步
    • 选择要备份的分区位置,注意一定得是linux文件系统类型的分区才行,点击下一步
    • 按需选择是否定时备份
    • 这样即可创建备份,需要还原就选择时间点恢复
    • 如果进入不了系统的,或者进入不了桌面的,也可以用命令恢复,可以百度一下,别盲目重装!

配置动态壁纸

  • 因为使用的是swww或者hyprpaper引擎(可选),但是这些都是只能设置静态壁纸,现在就来配置动态壁纸
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#安装配置动态壁纸插件mpvpaper
#注需要提前安装好cmake环境
git clone --single-branch https://github.com/GhostNaN/mpvpaper
cd mpvpaper
meson setup build --prefix=/usr/local
ninja -C build
ninja -C build install

#先截取一帧你的动态壁纸作为静态壁纸,用于更改终端配色和Apps栏的背景

#crtl+super+s打开system设置wallpaper engine的引擎选择disabled,然后退出登陆重进生效
#你会发现桌面是黑色的
#开始设置动态壁纸
sudo nvim ~/.config/hypr/hyprland.conf
#在末尾添加
exec-once = mpvpaper '*' 你的mp4地址 -o --loop -f --no-audio
#esc,输入:wq保存
#退出登陆生效
  • :开启动态壁纸的实质就是在后台重复播放视频,这样会导致耗电速度加快,可以看个人需求自己调节(也就是充电时可以开启,不充电用静态)

配置登陆界面

1
2
3
4
5
6
7
8
9
10
#先将自己喜欢的壁纸复制在/usr/share/sddm/themes/sugar-candy/Backgrounds/
#这是我自己壁纸的地方
sudo cp ~/wallpaper/t7ie6nxd.png /usr/share/sddm/themes/sugar-candy/Backgrounds/

#修改主题
sudo nvim /usr/share/sddm/themes/sugar-candy/theme.conf

#将Backgrounds中的图片名改成你刚刚复制的图片名和后缀
#里面还有其他设置,你可以自己修改
#修改好后esc,输入:wq保存
  • 退出登陆生效

配置clion

1
2
3
4
5
6
7
8
9
10
11
12
#先配置clion所需的运行环境和语言环境

yay -S jdk-openjdk #clion是用java写的,所以需要java环境

#配置cmake
yay -S cmake

#配置gdb
yay -S gdb

#安装clion
yay -S clion
  • 注:因为aur的下载的cmake和gdb都是最新的,而clion并不兼容这么新的,所以你得手动编辑配置,手动选择cmake和gdb位置,一般都在/usr/bin中
  • 插件配置:
    image
    • C/C++ Single File Execution 一个可以让clion单独运行一个cpp文件的插件
    • chinese插件进行汉化
    • IdeaVim 看个人习惯,这个是可以像vim一样操作的插件

配置mysql和dbeaver

  • mysql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
sudo pacman -S mysql

#以root身份进入mysql
sudo mysql -u root

#添加用户
create user your_user_name identified by "your_password";

#赋予权限
GRANT ALL PRIVILEGES ON *.* TO 'your_user_name'@'localhost' WITH GRANT OPTION;
#保存权限
FLUSH PRIVILEGES;
#退出
exit
  • dbeaver是一个mysql的可视化操作软件
1
sudo pacman -S dbeaver

安装redis

1
2
3
4
5
6
7
8
9
10
#安装redis
sudo pacman -S redis
#开机自启动
sudo systemctl start redis
sudo systemctl enable redis

#进入redis服务
redis-server
#进入redis客户端服务
redis-cli

安装edge

1
yay -S microsoft-edge-stable-bin

安装微信

1
yay -S wechat-uos

安装wps-office

1
yay -S wps-office

安装typora

配置neovim

  • 得先安装neovim
  • 然后下载我给的配置文件
  • 下载配置文件
  • 下载好后,解压将nvim文件夹里的内容替换掉~/.config/nvim中的内容(也就是nvim配置文件的地方)
  • 替换好后,重新打开nvim就成功了,keymap.lua文件记录着快捷键
  • 效果图
    image

arch安装与配置
https://moonfordream.github.io/posts/arch安装与配置/
作者
Moon
发布于
2024年5月19日
许可协议