Arch、Hyprland实体机全安装教程

news/2025/2/11 16:14:30/文章来源:https://www.cnblogs.com/wcisns/p/18706911

安装

内容参考 Arch WiKi Arch 提供了自动化安装脚本可以输入 archinstall 进行配置

下载 Arch 镜像

Arch 2024.12.01 镜像

验证 ISO 文件密钥 SHA256

certutil -hashfile 镜像文件. iso SHA256 # 和官网密钥对比

Arch 官网下载界面 密钥在这查看启动盘

制作启动盘

进入 Rufus 官网 下载 rufus 启动盘制作软件分区类型 GPT,目标系统类型 UEFI

如果是固态 U 盘就打开显示高级设备选项

勾选上显示 USB 外置硬盘

验证引导模式

cat /sys/firmware/efi/fw_platform_size # 验证 UEFI 位数是 64 位或 32 位

连接 WIFI

rfkill unblock wifi 解除网络接口软件屏蔽

iwctl # 进入 [iwd]# 界面
device list # 列出所有可用的适配器设备
device name set-property Powered on # 把网络适配器打开
station name scan # 扫描网络
station name get-networks # 列出所有网络
station name connect SSID # 连接网络
exit # 退出 [iwd]# 界面

Name 是适配器名称,SSID 是无线网络名称

连接上了可使用 ping archlinux.org 测试网络是否通畅

更新系统时间

timedatectl set-ntp true # 启用 NTP 同步

创建硬盘分区

fdisk -l # 查看硬盘信息
fdisk 硬盘名称 # 分区工具修改硬盘分区表,把路径写全

fdisk 创建分区

我的分区方案是一个 EFI 分区、一个 SWAP 分区、一个 /(根) 分区

输入 g 创建一个 GPT 分区表输入 n 创建分区

接下来依次是分区编号、起始扇区、结束扇区分区编号如果是默认直接回车即可、起始扇区也是结束扇区根据想要分区多大输入,1G 就输入 +1G

512MB 就输入 +512M 输入 p 显示分区表输入 w 保存分区表写入磁盘输入 q 放弃更改后的分区表

格式化分区

mkfs.ext4 根分区 # 格式化 / 分区
mkswap swap 分区 # 格式化 swap 分区
mkfs.fat -F 32 EFI 分区 # 格式化 EFI 分区

挂载分区

mount 根分区 /mnt # 把根分区挂载到 / mnt 目录
mount --mkdir EFI 分区 /mnt/boot # 把 EFI 分区挂载到 / mnt/boot 目录
swapon swap 分区 # 启用 Swap 分区

遵循先挂载到根分区,再挂载 EFI 分区,最后挂载其他分区

配置软件源

curl -L "https://archlinux.org/mirrorlist/?country=CN&protocol=https" \
-o /etc/pacman.d/mirrorlist  # 获取中国大陆的 https 镜像站

进入 /etc/pacma.d/mirrorlist 文件找到想要的软件源把前面的 #去掉保存即可

安装必需软件包

pacstrap -K /mnt base linux linux-firmware 安装 linux 内核文件显示分区表如果计算机是 intel 的 CPU 追加 intel-ucode,AMD CPU 追加 amd-ucode 文件管理系统的用户工具:

ext4 e2fsprogsexfat exfatprogsBtrfs btrfs-progsXFS xfsprogs

访问 RAID 分区的工具 mdadm 访问 LVM 分区的工具 lvm2 内建音频的 sof-firmware, 用于 Marvell 无线的 linux-firmware-marvellBroadcom wireless 的固件包 broadcom-wl 联网所需的程序 modemmanager 文件编辑器如 nano,vim 访问 man 和 info 页面中文档的工具:man-db,man-pages,texinfossh 工具 openssh、网络管理器 networkmanagersudo sudo、zsh zsh、git git、base-level base-level、nodejs nodejsnpm

pacstrap -K /mnt base linux linux-firmware interl-ucode amd-ucode \
e2fsprogs exfatprogs btrfs-progs xfsprogs mdadm lvm2 sof-firmware \
linux-firmware-marvell broadcom-wl modemmanager nano vim man-db \
man-pages texinfo openssh networkmanager sudo zsh git base-level \
nodejs npm

生成 fstab 文件

genfstab -U /mnt >> /mnt/etc/fstab # 分区挂载或启用后自动检测并生成系统文件

chroot 到新安装的系统

arch-chroot /mnt # chroot 到新安装系统

设置时区

ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime # 设置时区为上海
hwclock --sysohc # 生成 / etc/adjtime 文件

区域化本地设置

打开 /etc/locale.gen 文件取消 en_US.UTF-8 UFT-8zh_CN.UTF-8 UTF-8 的注释,保存退出执行 locale-gen 命令打开 /etc/locale.conf 文件添加 LANG=en_US.UTF-8LC_TIME=zh_CN.UTF-8 两行

网络配置

vim /etc/hostname # 在文件中输入主机名
ip link show # 查看网络接口
ip link set interface up # 开启网络接口,interface 替换为网络接口
systemctl enable NetworkManager.service # 开机自启网络服务
systemctl enable sshd.service # 开机自启 sshd 服务

设置 root 密码

passwd root # 设置 root 密码

安装 Grub 引导程序

安装软件包 efibootmgrgrub

# 把 grub 安装到磁盘
grub-install --target=x86_64-efi \
--efi-directory=/boot --bootloader-id=GRUB# 生成 cfg 文件
grub-mkconfig -o /boot/grub/grub.cfg

进入 cfg 文件 找到 set timeout=10 把 10 改为 0 保存退出

exit # 退出 chroot 环境
umount -R /mnt # 手动卸载全部被挂载分区
reboot # 重启系统

撤出启动盘进入系统后使用 nmtui 工具连接网络

创建普通用户

cat /etc/shells # 查看 zsh 路径
useradd -m -s "/bin/zsh" "username" #创建普通用户,并为其指定默认 shell 为 zsh
passwd "用户名"

使用 root 用户在 /etc/sudoers 文件里找到 root ALL=(ALL:ALL) ALL 复制在下一行粘贴,把 root 换成我们要添加的普通用户名,保存退出(这样就能普通用户就能使用 sudo 命令执行 root 权限了)建议用户名不要用中文、大写,否则 Hyprland 登陆会登不进去

配置

配置 ArchLinuxCN

使用 清华的软件源 在 /etc/pacman.conf 末尾添加以下语句

[archlinuxcn]
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinuxcn/$arch

添加本地信任 GPG keysudo pacman-key --lsign-key "farseerc@archlinux.org" 安装 archlinuxcn 密钥 sudo pacman -Sy archlinuxcn-keyring 配置 git 的全局设置

git config --global user.name "your_github_username"
git config --global user.email "your_github_email@email.com"
git config --global init.defaultBranch main

npm 换源

node -v && npm -v # 查看 npm、node 版本# 更换华为源npm config set registry https://mirrors.huaweicloud.com/repository/npm/npm cache clean -f # 清理缓存npm config list # 查看源npm update # 更新sudo npm install -g npm@latest # 更新 npm

使用 npm 下载工具需要 root 权限

Github SSH 下载

ssh-keygen -t ed25519 -C "your_name@email.com"
cat ~/.ssh/id_ed25519.pub

登录 github,点击 头像,点击 设置,找到 SSH and GPG keys 选项,点击 SSH keys 右边的 New SSH key 按钮,标题给个恰当的密钥名字,把 cat ~/.ssh/id_ed25519.pub 的输出全部复制进 Key 里面,单击 Add SSH key,接着输入你的 github 登录密码 ssh -T git@github.com 弹出以下内容,代表成功 Hi your_name! You’ve successfully authenticated, but GitHub does not provide shell access.

paru 安装

git clone https://aur.archlinux.org/paru.git
cd paru
makepkg -si

sudo vim /etc/pacman.conf 把 Color 的注释去掉 sudo nano /etc/paru.conf 把 BottomUp 注释去掉 paru -Syu 更新

Hyprland 安装

git clone https://github.com/JaKooLit/Arch-Hyprland.git
cd Arch-Hyprland
chmod +x install.sh
./install.sh

安装过程需要全程联网并且建议挑网络好的时候安装如果安装过程中经常有软件下载失败可以先把最后的标记失败的软件安装上,再配置好 npm 和 github ssh 下载方式,再进行下载

安装一些娱乐软件

paru -S google-chrome # 安装 chrome 浏览器
paru -S baidunetdisk-bin # 安装百度网盘
paru -S nerd-fonts # 安装 nerd-fonts 字体
paru -S linuxqq wechat # qq 和微信
paru bilibili # 选择 1

安装中文字体

sudo pacman -Sy adobe-source-han-sans-cn-fonts \
adobe-source-han-serif-cn-fonts noto-fonts-cjk \
wqy-microhei wqy-microhei wqy-microhei-lite \
wqy-bitmapfont ttf-arphic-ukai ttf-arphic-uming

oh-my-zsh

如果安装完毕,终端没有 ohmyzsh 美化,可以自己尝试安装

git clone https://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zshcp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc# 主题 powerlevel10k
git clone --depth=1 https://gitee.com/romkatv/powerlevel10k.git \
${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
# 高亮
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git \
${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
# 自动补全
git clone https://github.com/zsh-users/zsh-autosuggestions \
${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions# 进入. zshrc 文件
# 找到 ZSH_THEME,把值改为 "powerlevel10k/powerlevel10k"
# 找到 plugins=(git),在 git 后面添加 zsh-autosuggestions zsh-syntax-highlighting

LazyVim

保证装有 neovim 和 git

sudo pacman -Sy neovim
git clone https://github.com/LazyVim/starter ~/.config/nvim
rm -rf ~/.config/nvim/.git
nvim # 启动 nvim,安装插件
# 在~/.zshrc 文件中添加
alias vim='nvim' # 需要先将 vim 删掉,如果出现有 vim 但是 pacman 找不到,可以先安装,再删除

电池管理

sudo pacman -S tlp
paru -S tlpui-git # 如果出现 git 仓库克隆失败可以先执行下行注释 git 命令克隆下来, 再安装
# git clone https://github.com/linrunner/TLP.git
paru -S tlp-rdw
paru -S tp_smapi-lts tp_smapi
sudo systemctl enable tlp.service
sudo systemctl start tlp.service
sudo systemctl enable NetworkManager-dispatcher.service
sudo systemctl start NetworkManager-dispatcher.service
sudo systemctl mask systemd-rfkill.socket systemd-rfkill.service

风扇控制

paru -S nbfc-linux-git

ufw 防火墙

sudo pacman -S ufw
systemctl enable ufw
systemctl start ufw# 操作sudo ufw allow 3389/tcp
sudo ufw allow 3389/udp
sudo ufw reset
sudo ufw status
sudo ufw default deny

安装 VSCode

在 VSCode 下载链接 下载. tar.gz 包

把安装包 tar -zxvf 安装包. tar.gz 解压,放在 / opt / 目录下

使用 ln 命令创建软件链接 ln -s /opt/code-stable-x64-1731511985 /opt/vscode

创建 vscode.desktop 文件 (快捷方式)链接

[Desktop Entry]
Type=Application
Name=Visual Studio Code
Exec=/opt/vscode/code
Icon=/opt/vscode/resources/app/resources/linux/code.png
Comment=Visual Studio Code
Terminal=false

把文件放在 /usr/share/applications/ 目录下,结束

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/881456.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Zsh Codex:一个革命性的 ZSH 插件

# MacOS 前言 Zsh Codex 是一个革命性的 ZSH 插件,它将人工智能的力量引入了命令行界面。 这个插件能够让你在使用 MacOS 的原生终端时,通过 AI 驱动的代码补全功能,节省大量记忆命令的时间,提高编码效率。 github地址: https://github.com/tom-doerr/zsh_codex本文我们来…

WPS/Office完美集成DeepSeek,提升工作效率的秘密武器!

大家好,今天给大家带来一款超实用的办公神器——DeepSeek!如果你还在为繁琐的文案、翻译、数据分析等任务头疼,那这篇文章绝对不容错过。今天我们要介绍的这款工具——DeepSeek,通过强大的 AI 功能,帮你在 WPS 或 Office 中实现无缝办公,不管是写文案、做策划、翻译校对,…

本地部署 DeepSeek Janus Pro 文生图大模型

Hello, 大家新年好。 在这个春节期间最火的显然是 DeepSeek 了。据不负责统计朋友圈每天给我推送关于 DeepSeek 的文章超过20篇。打开知乎跟B站也全是 DeepSeek 相关的内容。不过大部分的内容都是关于 DeepSeek R1 推理模型有多牛逼。在这里就不多说关于 R1 的废话了,因为大家…

新生赛回顾

签到 文件用Exeinfo PE打开,无壳用ida64位打开F5跳转到C语言界面,可以发现明文rc4 无壳,用ida64打开,发现为rc4加密可以直接用动调拿flag,在输入后面下断点按F9后选择动调方式再按F9进入。输入随便21位字符串,进入后双击Str也就是我们输入的数组,右击选择到Change byte …

CrackMe

[HNCTF 2022 Week1]CrackMe 题目链接:https://www.nssctf.cn/problem/2908 一个用户名对应注册码,应该将用户名输入正确 常规解法断点在strcmp 这道题就是根据这个判断得出flag 用户名为CrackMe,在动调的时候因为会先的到一个假的,在弹出错误信息后在才是正确的 详细原因看…

利用 预加载(PRELOAD)机制实现 Hook

elf程序在进行动态链接的时候,会将有相同符号名的符号覆盖成LD_PRELOAD指定的so文件中的符号。也就是说,我们可以用自己的so库中的函数替换原来库里有的函数,从而达到hook的目的。 下面我们尝试通过这种hook方式来实现任意地址读/写 测试文件: test.c:#include <stdio.h&…

DeepSeek本地部署教程

DeepSeek本地部署教程 deepseek本地部署 第一步:安装ollama https://ollama.com/download第二步:在ollama 官网搜索 https://ollama.com/搜索 deepseek 选择第一项即可模型大小与显卡需求模型版本 参数规模 最低显存要求 推荐 GPU 型号DeepSeek-R1 70B 40GB NVIDIA RTX A6000…

缺失 ffmpeg.dll 无法打开vscode

不清楚什么原因,莫名奇妙vscode打不开了弹框提示“由于找不到 ffmpeg.dll,无法继续执行代码。重新安装程序可能会解决 此问题。” 1. 找到vscode的文件位置 2. 多了一个_文件夹,将_文件夹的内容,移到上一层,即 “Microsoft VS Code”文件夹中 3. 可正常启动 PS:不清楚为什…

整理合集——Linux必备的基础知识总结

一、Linux 操作系统概述 1、发展 1991 Linus Linux 0.0.1 版,代码为 8K 行。现在最新版本为 5.12.4。Linux 加入了 GNU,整体基于 GPL 协议,允许开源、分享传播、修改。 内核下载的地址:https://www.kernel.org/ 2、组成 kernel 内核: 核心程序,用于管理硬件设备、系统的线…

海亮 SC 游寄(完结)

Castxwx:@NaPF6__qwq,小号 @Anti__void hjr:@Huang_junrui,参与 sc gjc:@SY_nzwmb83 bzy:@benbzy,参与 sc gx:@gxwinnt,校内教练Week 1 Day 0 初始坐标:JS-WX-YX,SC 学校坐标:ZJ-SX-ZJ 今天是 2024/7/3 9:00 出发,自驾,12:30 到酒店,下午没去报到 晚自习前找教室…

七分钟交友匿名聊天室源码安装出错解决办法

今天一个网友让帮忙安装七分钟交友匿名聊天室源码,看教程非常简单只有两个命令! 我是选择用的宝塔安装的,其实宝塔就一个命令就行了。 安装依赖项:npm install启动:node app.js运行:直接访问域名即可进入聊天室 但是运行以后出现错误,导致一直无法正常聊天,输入聊记录不…

IAP升级(STM32)

IAP升级(STM32) (未完,更新ing) IAP作用简述:将要升级的程序bin文件通过串口发送给STM32,STM32接收后存储到FLASH或者SRAM,用户通过事件(按键等)触发(也可延时自动触发)后将升级文件夹作用:Bootloader先烧录到stm32,作为引导接受串口bin文件升级包,以及跳转到用…