记录一次安装archlinux过程
记录一次安装archlinux过程
Jin准备工作
- windows 上使用的分区上分出空闲硬盘空间给 archlinux
- 下载archlinux镜像
- 启动u盘 ventoy
- 关闭windows 快速启动,BIOS 安全启动
安装配置网络
iwctl # 进入交互式命令行
device list # 列出无线网卡设备名
# 查看你的网卡名字,这里假设是wlan0,输入
station wlan0 scan
# 检查扫描网络,输入
station wlan0 get-networks
#查看网络名字,假设名字叫CMCC-D39U,输入
station wlan0 connect BUPT-D39u
# 接着输入密码(如果有密码的话),输入
# 连接成功后退出
exit
测试网络
ping www.bilibili.com
# 有数据返回就说明链接上网络
更新系统时间
timedatectl set-ntp true # 将系统时间与网络时间进行同步
timedatectl status # 检查服务状态
更换国内源
vim /etc/pacman.d/mirrorlist
# 中国科学技术大学开源镜像站 插入文件最前面
Server = https://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch
分区
lsblk # 检查硬盘
cfdisk /dev/nvme0n1 #建立分区
# cfdisk /dev/ 硬盘空间名
# 找到 Free space 选择 New
# 输入内存大小
# 选择Write
lsblk # 检查是否写入
# 格式化
mkfs.ext4 /dev/nvme0n1p5 # nvme0n1p5是分区号
# 挂载分区
mount /dev/nvme0n1p5 /mnt
mkdir /mnt/boot
lsblk #查看windows的EFI分区号
# 挂载EFI分区 nvme0n1p2是分区号
mount /dev/nvme0n1p2 /mnt/boot
安装系统
pacman -Sy archlinux-keyring
pacstrap /mnt base base-devel linux linux-firmware btrfs-progs
生成fastb文件
genfstab -U /mnt >> /mnt/etc/fstab
# 查看是否生成
cat /mnt/etc/fstab
切换装好的系统
arch-chroot /mnt
创建swapfile
# 这里分了2G作为swapfile
dd if=/dev/zero of=/swapfile bs=2048 count=1048576 status=progress
# 更改权限
chmod 600 /swapfile
# 建立激活swap
mkswap /swapfile
swapon /swapfile
# 修改fstab文件
vim /etc/fstab
# 写入 /swapfile none swap defaults 0 0
时区和硬件时钟
timedatectl set-timezone Asia/Shanghai
hwclock --systohc
Locale
Locale 决定了软件使用的语言、书写习惯和字符集。
vim /etc/locale.gen
# 去掉 en_US.UTF-8 UTF-8 以及 zh_CN.UTF-8 UTF-8 行前的注释符号
locale-gen #生成
echo 'LANG=en_US.UTF-8' > /etc/locale.conf # 写入
host
# 创建并写入hostname
vim /etc/hostname
# 写入 arch, 可随便起
# 修改host
# 写入下面的内容
127.0.0.1 localhost
::1 localhost
127.0.1.1 arch.localdomain arch
# arch是上面的hostname 空白是 tab
设置root用户密码
passwd root
驱动器 grub
# 安装基本包
pacman -S grub efibootmgr networkmanager network-manager-applet dialog wireless_tools wpa_supplicant os-prober mtools dosfstools ntfs-3g base-devel linux-headers reflector git sudo
# interl解码
pacman -S intel-ucode
启用os-prober识别Windows
vim /etc/default/grub
# 写入 GRUB_DISABLE_OS_PROBER=false
# 安装 GRUB 到 EFI 分区
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=Arch
生成 grub.cfg
grub-mkconfig -o /boot/grub/grub.cfg
完成安装
exit # 退回安装环境
umount -a # 卸载分区
reboot # 重启拔u盘
设置网络
进去输入root加密码
启动网络服务
systemctl enable --now NetworkManager
nmtui
新建用户
# 用户
useradd -m -G wheel fantasy
# 密码
passwd mir
#授权
EDITOR=vim visudo
# 去掉 #%wheel ALL=(ALL) ALL 的注释
添加archlinuxcn源
vim /etc/pacman.conf
# 去掉multilib源的注释
# 最下面加入
[archlinuxcn]
Server = https://mirrors.bfsu.edu.cn/archlinuxcn/$arch
# 更新一下
pacman -Syu && pacman -S archlinuxcn-keyring
# 安装yay
sudo pacman -S yay
中文字体
pacman -S ttf-sarasa-gothic noto-fonts-cjk
## 其他好看的字体
yay -S nerd-fonts-jetbrains-mono
yay -S ttf-material-design-icons
yay -S ttf-joypixels
yay -S ttf-dejavu
驱动
# Intel 核芯显卡
sudo pacman -S mesa lib32-mesa vulkan-intel lib32-vulkan-intel
音频和蓝牙
sudo pacman -S pipewire-pulse
sudo pacman -S pavucontrol
sudo pacman -S bluez bluez-utils bluedevil # bluedevil 为gui蓝牙管理
pactl load-module module-bluetooth-discover
sudo vim /etc/bluetooth/main.conf
FastConnectable=true
AutoEnable=true
修复本机小新pro14,内置键盘和声音
#声音
pacman -S sof-firmware alsa-ucm-conf
# 键盘
vim /etc/default/grub
# GRUB_CMDLINE_LINUX_DEFAULT 加入 i8042.dumbkbd
屏幕亮度
yay -S light
sudo usermod -a -G video "用户名"
安装dwm和基本软件
yay -S xorg picom neovim feh redshift-gtk rofi thunar flameshot xautolock i3lock-color wmname
# 克隆fork-b站大佬配置的dwm
git clone https://gitee.com/fantasy06/dotfiles.git
cd ~/dotfiles
# 配置文件创建软连接
ln -s ~/dotfiles/dwm ~/.config/
ln -s ~/dotfiles/st ~/.config/
ln -s ~/dotfiles/nvim ~/.config/
ln -s ~/dotfiles/wallpaper ~/Pictures/
ln -s ~/dotfiles/scripts ~/
ln -s ~/dotfiles/.xinitrc ~/
ln -s ~/dotfiles/.Xresources ~/
ln -s ~/dotfiles/.profile ~/
cd ~/.config/st && sudo make install clean
cd ~/.config/dwm && sudo make install clean
startx # 进入系统
zsh 安装配置
sudo pacman -Sy zsh
# 主题和插件
sudo pacman -S zsh-autosuggestions zsh-syntax-highlighting zsh-theme-powerlevel10k zsh-completions
chsh -s /usr/bin/zsh #改默认
# 软连接配置文件
ln -s ~/dotfiles/.zshrc ~/
ln -s ~/dotfiles/.p10k.zsh ~/
中文输入法
sudo pacman -S fcitx5 fcitx5-qt fcitx5-gtk fcitx5-config-qt fcitx5-material-color fcitx5-im fcitx5-rime
sudo echo '
GTK_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XMODIFIERS=@im=fcitx
SDL_IM_MODULE=fcitx
GLFW_IM_MODULE=ibus' >> /etc/environment
触控板
yay -S xf86-input-synaptics # 触控板
sudo pacman -S wmctrl xdotool libinput-gestures # 手势
sudo gpasswd -a $USER input # 权限
sudo vim /etc/X11/xorg.conf.d/30-touchpad.conf
# 写入
Section "InputClass"
Identifier "touchpad"
Driver "libinput"
MatchIsTouchpad "on"
Option "Tapping" "on"
Option "TappingButtonMap" "lrm"
EndSection
# 手势
cp /etc/libinput-gestures.conf ~/.config/libinput-gestures.conf
# 写入
vim ~/.config/libinput-gestures.conf
gesture swipe left 4 xdotool key Super+Shift+Tab
gesture swipe right 4 xdotool key Super+Tab
gesture swipe up 4 xdotool key Super+f
gesture swipe down 4 xdotool key Super+a
gesture swipe left 3 xdotool key Super+Left
gesture swipe right 3 xdotool key Super+Right
gesture swipe up 3 xdotool key Super+Up
gesture swipe down 3 xdotool key Super+h
自动锁屏
sudo vim /etc/X11/xorg.conf.d/10-monitor.conf
# 写入
Section "ServerLayout"
Identifier "ServerLayout0"
Option "BlankTime" "10" # 自动锁屏
Option "StandbyTime" "20" # 关闭屏幕
Option "SuspendTime" "30" # 挂起
Option "OffTime" "60" # 关机
EndSection
日常软件
yay -S lxappearance # gui设置
yay -S paper-gtk-theme-git # gtk主题
yay -S pavucontrol # 音频设置
yay -S breeze-icons # 图标
yay -S rofi # 菜单
yay -S flameshot # 截图软件
yay -S google-chrome wyeb-git # 浏览器
yay -S byzanz # gif截图依赖
yay -S libnotify dunst # 通知
yay -S xorg-xsetroot # dwm设置状态栏
yay -S xf86-input-synaptics # 触控板
yay -S network-manager-applet # 网络托盘
yay -S mpc mpd ncmpcpp # tui music player
yay -S picgo-appimage # picgo 图床
yay -S xmind # xmind 思维导图
yay -S deepin-wine-wechat # 微信
yay -S dingtalk-bin # 钉钉
yay -S wps-office-cn wps-office-mui-zh-cn ttf-wps-fonts # wps
# deepin-wine 环境设置
/opt/apps/com.qq.weixin.deepin/files/run.sh -d
# 在切换到deepin-wine环境后,在terminal输入下面的指令:
env WINEPREFIX="$HOME/.deepinwine/Deepin-WeChat" /usr/bin/deepin-wine winecfg
# =========
yay -S linuxqq #linuxqq
yay -S yesplaymusic # 第三方网易云
yay -S qqmusic-bin # qq音乐
yay -S baidunetdisk-bin # 百度云盘
yay -S clash clash-for-windows-bin
yay -S copyq # 剪切板管理
yay -S atril # pdf阅读
yay -S gimp # 修图软件
编程开发
sudo pacman -S nodejs # 安装node.js和npm
sudo pacman -S npm
sudo pacman -S php # php
yay -S jdk # jdk
sudo pacman -S mysql # mysql
#初始化mysql,输出最后一行是默认密码 .cPq!bUt.5g%
sudo mysqld --initialize --user=mysql --basedir=/usr --datadir=/var/lib/mysql
# 启动
sudo systemctl start mysqld.service
# 进去
mysql -uroot -p
# 修改登录密码
alter user 'root'@'localhost' identified by '123456';
# 打开mysql数据
use mysql;
# 给用户加权限
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456';
#开机启动
sudo systemctl enable mysqld.service
yay -S navicat16-premium-cs # navicat16
yay -S visual-studio-code-bin # vscode
yay -S wechat-devtools-bin # 微信开发者工具
yay -S intellij-idea-ultimate-edition # idea
修复键盘f区问题
在Linux上,Keychon K2不会将任何F1-F12功能键映射为实际的F键
而是默认将它们视为多媒体键。 Fn+F1-12的组合也不会起作用
- 键盘切换到window模式
- 长按Fn + X + L将F1-F12优先映射到功能键而不是媒体键
写入
echo 0 | sudo tee /sys/module/hid_apple/parameters/fnmode
echo "options hid_apple fnmode=0" | sudo tee -a /etc/modprobe.d/hid_apple.conf
mkinitcpio -p
评论
匿名评论隐私政策
✅ 你无需删除空行,直接评论以获取最佳展示效果