ThinkPad X220 安装 Arch Linux 完美指南

news2026/4/7 5:11:11
1 镜像准备1.1 镜像下载安装镜像 iso 在开源镜像站推荐或者 archlinux 官方下载页面 下载。国内常用的提供 archlinux 安装镜像的开源镜像站选一个即可中国科学技术大学开源镜像站清华大学开源软件镜像站华为开源镜像站兰州大学开源镜像站在镜像网站找到 arch-linux依次点击iso20XX.XX.XXarchlinux-20XX.XX.XX-x86_64.iso。注确保下载最新的安装镜像因为 archlinux 是滚动发行版不存在使用旧的安装镜像安装旧版本的说法。1.2 制作安装盘在 macOS 上制作安装盘直接使用命令行即可# 插入 U 盘打开终端输入下面的命令查看 U 盘是否已经 mount 到系统diskutil list /dev/disk4(external, physical):#: TYPE NAME SIZE IDENTIFIER0: FDisk_partition_scheme *61.9 GB disk41: Windows_NTFS Lexar61.9GB disk4s1# 我这里的 /dev/disk4 就是挂载的 U 盘。# 使用 unmount 命令解除挂载:diskutil unmountDisk /dev/disk4# 输出Unmount of all volumes on disk4 was successful# 写系统镜像到 U 盘sudoddif/Users/mac/Downloads/archlinux-2026.02.01-x86_64.isoof/dev/disk4bs1m# 等待一下见到如下输出就表示已经成功完成了14781 recordsin14781 recordsin1550024704bytes transferredin35.682722secs(43439082bytes/sec)2 基础安装在 ThinkPad x220 USB 接口插入制作好的安装盘开机。每个品牌的电脑启动顺序设置各有差别这里不做赘述。我这里是在一个干净的硬盘上安装机器上没有额外的操作系统直接开机就会进入安装盘的安装窗口。ThinkPad x220 支持 Legacy BIOS 启动和 UEFI 启动两种方式务必在 BIOS 里面设置成 UEFI 启动。2.1 进入安装环境选择第一项回车进入安装环境后便可以开始通过命令安装 archlinux 了。2.2 禁用 reflector 服务2020 年archlinux 安装镜像中加入了reflector服务它会自己更新mirrorlistpacman 的软件源。在特定情况下它会误删某些有用的源信息。# 禁用服务systemctl stop reflector.service# 查看该服务是否被禁用systemctl status reflector.service2.3 确认是否为 UEFI 模式确认是否为 UEFI 模式因为 ThinkPad x220 如果不是 UEFI 模式后面安装系统引导会有问题会导致安装结束后无法进入硬盘内安装好的系统。ls/sys/firmware/efi/efivars# 若输出了一堆东西efi 变量则说明已在 UEFI 模式。2.4 连接网络archlinux 的安装必须要求网络环境。如果是连接网线不需要额外操作。如果是使用无线网使用iwctl进行连接# 进入交互式命令行iwctl# 列出无线网卡设备名比如无线网卡看到叫 wlan0device list# 扫描网络station wlan0 scan# 列出所有 wifi 网络station wlan0 get-networks# 进行连接回车后输入密码即可station wlan0 connect wifi-name# 连接成功后退出exit测试网络连通性pingwww.baidu.com-c5若能看到数据返回即说明已经联网。2.5 更新系统时钟使用timedatectl确保系统时间是准确的# 将系统时间与网络时间进行同步timedatectl set-ntptrue# 检查服务状态timedatectl status2.6 更换国内软件仓库镜像源修改/etc/pacman.d/mirrorlist文件将 pacman 软件仓库源更换为国内镜像源vim/etc/pacman.d/mirrorlist推荐的镜像源如下放在最上面# 中国科学技术大学开源镜像站Serverhttps://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch# 清华大学开源软件镜像站Serverhttps://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch# 华为开源镜像站Serverhttps://repo.huaweicloud.com/archlinux/$repo/os/$arch# 兰州大学开源镜像站Serverhttp://mirror.lzu.edu.cn/archlinux/$repo/os/$arch2.7 分区和格式化Btrfs 文件系统Btrfs 文件系统的优点快照—— archlinux 作为滚动发行版若滚挂了可以使用 Btrfs 的快照特性快速回滚。若使用传统的 ext4 文件系统可以借助 timeshift 的 RSYNC 模式进行增量备份。但 RSYNC 方式的快照大小约等于当前实际使用大小相当于磁盘可用空间直接少了一半多。透明压缩—— 可以大大减少磁盘的使用空间压缩率约 10%2.7.1 建立新的 GPT 分区表# 通过 lsblk 命令区分要安装 archlinux 的磁盘通过观察磁盘大小等判断lsblk# 我这里盘符是 sda# 执行 parted进行磁盘类型变更parted/dev/sda(parted)mktable# 输入 gpt将磁盘类型转换为 GPT 类型。如磁盘有数据会警告输入 Yes 即可New disk label type? gpt# 退出 parted 命令行交互(parted)quit2.7.2 磁盘分区cfdisk/dev/sda使用cfdisk可视化分区EFI 分区选中Free space→[New]→ 输入分区大小建议 512MB→[Type]→ 选中EFI SystemSwap 分区选中Free space→[New]→ 输入分区大小建议为内存大小的 60% 或与内存大小相等→[Type]→ 选中Linux swapBtrfs 分区选中Free space→[New]→ 默认剩余全部空间 →[Write]→ 输入yes确认因为使用 Btrfs 文件系统所以根目录和用户主目录在一个分区上。分区完成后复查fdisk-l# sda1 512MB EFI# sda2 8GB SWAP# sda3 224GB btrfs2.7.3 格式化并创建 Btrfs 子卷# 格式化 EFI 分区mkfs.vfat /dev/sda1# 格式化 Swap 分区mkswap/dev/sda2# 格式化 Btrfs 分区mkfs.btrfs-LmyArch /dev/sda3# -L 选项后指定该分区的 LABEL以 myArch 为例不能使用特殊字符及空格创建子卷# 将 Btrfs 分区挂载到 /mnt 下mount-tbtrfs-ocompresszstd /dev/sda3 /mnt# 创建 / 目录子卷btrfs subvolume create /mnt/# 创建 /home 目录子卷btrfs subvolume create /mnt/home# 复查子卷情况btrfs subvolume list-p/mnt# 卸载 /mnt准备挂载子卷umount/mnt2.8 挂载挂载有顺序需要从根目录开始# 挂载 / 目录mount-tbtrfs-osubvol/,compresszstd /dev/sda3 /mnt# 创建并挂载 /home 目录mkdir/mnt/homemount-tbtrfs-osubvol/home,compresszstd /dev/sda3 /mnt/home# 创建并挂载 /boot 目录mkdir-p/mnt/bootmount/dev/sda1 /mnt/boot# 挂载交换分区swapon/dev/sda2# 复查挂载情况df-hfree-h2.9 安装系统# 安装基础包pacstrap /mnt base base-devel linux linux-firmware btrfs-progs# 安装其他必要的功能性软件pacstrap /mnt networkmanagervimsudobashbase-devel在 AUR 包的安装过程中是必须用到的。linux内核软件包建议先不要替换为其它内核。2.10 生成 fstab 文件genfstab-U/mnt/mnt/etc/fstab# 复查确保没有错误cat/mnt/etc/fstab2.11 Change Rootarch-chroot /mnt此时原来安装盘下的/mnt目录就变成了新系统的/目录。2.12 设置主机名与时区# 设置主机名vim/etc/hostname# 加入你想为主机取的主机名比如叫 myarch不能包含特殊字符以及空格# 设置匹配的 hosts 条目vim/etc/hosts# 127.0.0.1 localhost# ::1 localhost# 127.0.1.1 myarch.localdomain myarch# 设置时区ln-sf/usr/share/zoneinfo/Asia/Shanghai /etc/localtime2.13 硬件时间设置hwclock--systohc2.14 设置 LocaleLocale 决定了软件使用的语言、书写习惯和字符集。# 编辑 locale.gen去掉 en_US.UTF-8 UTF-8 以及 zh_CN.UTF-8 UTF-8 行前的注释符号#vim/etc/locale.gen# 生成 localelocale-gen# 向 locale.conf 输入内容echoLANGen_US.UTF-8/etc/locale.conf# 不推荐在此设置任何中文 locale会导致 tty 乱码2.15 为 root 用户设置密码passwdroot2.16 安装微码# ThinkPad x220 使用 Intel CPUpacman-Sintel-ucode如果报错ERROR: file not found: /etc/vconsole.conf先创建空文件touch/etc/vconsole.conf之后再执行安装命令。2.17 安装引导程序# 安装相应的包pacman-Sgrub efibootmgr os-prober# 安装 GRUB 到 EFI 分区grub-install--targetx86_64-efi --efi-directory/boot --bootloader-idARCH# 编辑 /etc/default/grubvim/etc/default/grub对/etc/default/grub进行如下修改去掉GRUB_CMDLINE_LINUX_DEFAULT一行中最后的quiet参数把loglevel的数值从 3 改成 5方便后续系统错误排错加入nowatchdog参数可以显著提高开关机速度如果是双系统添加GRUB_DISABLE_OS_PROBERfalsenowatchdog参数无法禁用英特尔的看门狗硬件改为modprobe.blacklistiTCO_wdt即可。# 生成 GRUB 配置文件grub-mkconfig-o/boot/grub/grub.cfg2.18 完成安装# 退回安装环境exit# 卸载新分区umount-R/mnt# 重启重启前先拔掉 U 盘reboot重启后使用root账户登录系统# 设置开机自启并立即启动 NetworkManager 服务systemctlenable--nowNetworkManager# 测试网络连接pingwww.baidu.com-c5若为无线连接使用nmcli连接网络# 显示附近的 Wi-Fi 网络nmcli dev wifi list# 连接指定的无线网络nmcli dev wifi connectWi-Fi名SSIDpassword网络密码安装 fastfetchpacman-Sfastfetch fastfetch关机命令shutdown-hnow# 或者poweroff3 桌面环境安装没有图形界面的 archlinux 显然作为日常使用的操作系统是不合适的。3.1 确保系统最新pacman-Syu3.2 配置 root 账户的默认编辑器编辑~/.bash_profile文件vim~/.bash_profile# 在适当位置加入以下内容exportEDITORvim3.3 创建准非 root 用户# 添加用户比如新增加的用户叫 oehuosiuseradd-m-Gwheel-s/bin/bash oehuosi# 参数说明# -m 创建用户的同时创建用户家目录# -G 指定附加组# wheel 附加组可 sudo 进行提权# -s 指定 shell 程序# 设置新用户密码passwdoehuosi# 编辑 sudoers 文件EDITORvim visudo /etc/sudoers# 找到并去掉 %wheel ALL(ALL:ALL) ALL 前面的注释符号 #3.4 开启 32 位支持库与 archlinuxcn 源vim/etc/pacman.conf去掉[multilib]一节中两行的注释开启 32 位库支持在文档结尾处加入 archlinuxcn 源[archlinuxcn]Serverhttps://mirrors.ustc.edu.cn/archlinuxcn/$archServerhttps://mirrors.tuna.tsinghua.edu.cn/archlinuxcn/$archServerhttps://mirrors.hit.edu.cn/archlinuxcn/$archServerhttps://repo.huaweicloud.com/archlinuxcn/$archpacman-Syyu3.5 安装 KDE Plasma 桌面环境# 安装 plasma-meta 元软件包、konsole 终端模拟器和 dolphin 文件管理器pacman-Splasma-meta konsole dolphin如果想使用 Waylandpacman-Splasma-workspace xdg-desktop-portal# N 卡用户需要额外安装 egl-wayland# xdg-desktop-portal 是为了让 obs 等工具录制屏幕使用3.6 配置并启动 SDDM# 安装 SDDMpacman-Ssddm# 开启 SDDM 服务systemctlenablesddm# 直接启动显示管理器也可直接 rebootsystemctl start sddm输入新用户的密码并回车即可登录桌面。3.7 安装基础功能包# 声音固件sudopacman-Ssof-firmware alsa-firmware alsa-ucm-conf# 使系统可以识别 NTFS 格式的硬盘sudopacman-Sntfs-3g# 安装开源中文字体sudopacman-Sadobe-source-han-serif-cn-fonts wqy-zenhei# 安装谷歌开源字体及表情sudopacman-Snoto-fonts noto-fonts-cjk noto-fonts-emoji noto-fonts-extra# 常用浏览器sudopacman-Sfirefox chromium# 压缩软件 dolphin 中可用右键解压sudopacman-Sark# 确保 Discover软件中心可用需重启sudopacman-Spackagekit-qt6 packagekit appstream-qt appstream# 图片查看器sudopacman-Sgwenview# 游戏商店sudopacman-Ssteam# archlinuxcn 源签名和 yaysudopacman-Sarchlinuxcn-keyringsudopacman-Syay3.8 检查家目录cd~ls-hlxdg-user-dirs-update3.9 配置非 root 账户的默认编辑器vim~/.bashrc# 在适当位置加入以下内容exportEDITORvim3.10 设置系统为中文可选打开System Settings→Language and Regional Settings→ 在Language中点击Add languages...→ 选择中文加入 ADD再拖拽到第一位 → 点击Apply。注销并重新登录即可生效。3.11 安装输入法# 安装输入法基础包组和中文输入引擎sudopacman-Sfcitx5-imsudopacman-Sfcitx5-chinese-addonssudopacman-Sfcitx5-anthy# 日文输入引擎sudopacman-Sfcitx5-pinyin-moegirl# 萌娘百科词库archlinuxcnsudopacman-Sfcitx5-material-color# 输入法主题设置环境变量vim~/.config/environment.d/im.conf# 在文件中加入以下内容GTK_IM_MODULEfcitxQT_IM_MODULEfcitxXMODIFIERSimfcitxSDL_IM_MODULEfcitxGLFW_IM_MODULEibus配置输入法打开系统设置区域设置输入法点击提示信息中的运行 Fcitx点击添加输入法→ 找到简体中文下的Pinyin→ 点击添加点击Pinyin右侧的配置按钮 → 点选云拼音和在程序中显示预编辑文本→ 点击应用回到输入法设置 → 点击配置附加组件→ 找到Classic User Interface→ 选择一个喜欢的主题颜色 → 点击应用通过Ctrl 空格切换中英文输入。3.12 启动蓝牙若有sudosystemctlenable--nowbluetooth3.13 设置 Timeshift 快照sudopacman-Stimeshift# 如果 Timeshift 没有自动备份需要手动开启 cronie 服务sudosystemctlenable--nowcronie.service打开 Timeshift第一次启动会自动启动设置向导。使用 Btrfs 文件系统快照类型选择BTRFS点击下一步快照位置选择 BTRFS 分区点击下一步选择快照计划点击下一步由于 BTRFS 类型快照占用空间相对较小可以适当提高快照数量。若希望/home用户主目录也快照则勾选在备份中包含 home 子卷然后点击下一步点击完成结束配置完成后建议执行下述指令删除 subvolid否则恢复 BTRFS 类型快照时可能因子卷 ID 改变导致无法正常进入系统sudosed-i-Es/(subvolid[0-9],)|(,subvolid[0-9])//g/etc/fstab3.14 自动生成快照启动项通过安装grub-btrfs包可以实现在每次使用grub-mkconfig重新生成 GRUB 启动项时自动添加快照的启动入口# 安装 grub-btrfs 并开启服务sudopacman-Sgrub-btrfssudosystemctlenable--nowgrub-btrfsd.service修改监视路径sudosystemctl edit grub-btrfsd.service# 在默认的光标位置添加以下内容后保存并退出[Service]ExecStartExecStart/usr/bin/grub-btrfsd--syslog--timeshift-auto# 重载并重启服务sudosystemctl daemon-reloadsudosystemctl restart grub-btrfsd.service自此一个可以当作日常系统使用的 Arch Linux 已经基本配置完成

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…

wordpress后台更新后 前端没变化的解决方法

使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…

网络编程(Modbus进阶)

思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…

UE5 学习系列(二)用户操作界面及介绍

这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…

IDEA运行Tomcat出现乱码问题解决汇总

最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…

利用最小二乘法找圆心和半径

#include <iostream> #include <vector> #include <cmath> #include <Eigen/Dense> // 需安装Eigen库用于矩阵运算 // 定义点结构 struct Point { double x, y; Point(double x_, double y_) : x(x_), y(y_) {} }; // 最小二乘法求圆心和半径 …

使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式

一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明&#xff1a;假设每台服务器已…

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造&#xff0c;完美适配AGV和无人叉车。同时&#xff0c;集成以太网与语音合成技术&#xff0c;为各类高级系统&#xff08;如MES、调度系统、库位管理、立库等&#xff09;提供高效便捷的语音交互体验。 L…

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)

题目&#xff1a;3442. 奇偶频次间的最大差值 I 思路 &#xff1a;哈希&#xff0c;时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况&#xff0c;哈希表这里用数组即可实现。 C版本&#xff1a; class Solution { public:int maxDifference(string s) {int a[26]…

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型

摘要 拍照搜题系统采用“三层管道&#xff08;多模态 OCR → 语义检索 → 答案渲染&#xff09;、两级检索&#xff08;倒排 BM25 向量 HNSW&#xff09;并以大语言模型兜底”的整体框架&#xff1a; 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后&#xff0c;分别用…

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板&#xff0c;载入页面后&#xff0c;会显示引导弹窗&#xff0c;适用于引导用户使用页面&#xff0c;点击完成后&#xff0c;会显示下一个引导弹窗&#xff0c;直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…

接口测试中缓存处理策略

在接口测试中&#xff0c;缓存处理策略是一个关键环节&#xff0c;直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性&#xff0c;避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明&#xff1a; 一、缓存处理的核…

龙虎榜——20250610

上证指数放量收阴线&#xff0c;个股多数下跌&#xff0c;盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型&#xff0c;指数短线有调整的需求&#xff0c;大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的&#xff1a;御银股份、雄帝科技 驱动…

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析

1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具&#xff0c;该工具基于TUN接口实现其功能&#xff0c;利用反向TCP/TLS连接建立一条隐蔽的通信信道&#xff0c;支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式&#xff0c;适应复杂网…

铭豹扩展坞 USB转网口 突然无法识别解决方法

当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?

编辑&#xff1a;陈萍萍的公主一点人工一点智能 未来机器人的大脑&#xff1a;如何用神经网络模拟器实现更智能的决策&#xff1f;RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战&#xff0c;在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…

Linux应用开发之网络套接字编程(实例篇)

服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向&#xff1a; 逆向设计 通过神经网络快速预测微纳结构的光学响应&#xff0c;替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…