当前位置: 首页 > article >正文

ThinkPad X220 安装 Arch Linux 完美指南

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 已经基本配置完成

相关文章:

ThinkPad X220 安装 Arch Linux 完美指南

1 镜像准备 1.1 镜像下载 安装镜像 iso 在开源镜像站(推荐)或者 archlinux 官方下载页面 下载。 国内常用的提供 archlinux 安装镜像的开源镜像站(选一个即可): 中国科学技术大学开源镜像站清华大学开源软件镜像站…...

Python open方法详解

编程中的 open() 方法:核心用法全解 open() 是操作文件的核心方法,几乎所有编程语言(Python、Java、JavaScript 等)都有这个方法,最常用、最适合新手的是 Python 的 open(),我直接给你最实用、能马上用的完整指南。 一、Python open() 基础语法 作用:打开文件,并返回…...

数据库---Day6 数据库约束

本系列可作为数据库学习系列的笔记,文中提到的一些练习的代码,小编会将代码复制下来,大家复制下来就可以练习了,方便大家学习。 点赞关注不迷路!您的点赞、关注和收藏是对小编最大的支持和鼓励! 系列文章目…...

OpenClaw多通道实战:Qwen3-32B同时处理飞书与邮箱请求

OpenClaw多通道实战:Qwen3-32B同时处理飞书与邮箱请求 1. 为什么需要多通道自动化 上周五晚上11点,我正打算关电脑休息时,突然收到飞书消息:"明天上午10点临时会议需要准备材料"。与此同时,邮箱里又弹出客…...

UDOP-large保姆级教程:手把手教你提取英文论文标题与摘要

UDOP-large保姆级教程:手把手教你提取英文论文标题与摘要 1. 引言:为什么选择UDOP-large处理英文论文 作为一名经常需要阅读大量英文文献的研究人员,我深知从PDF论文中提取标题和摘要的繁琐。传统方法要么需要手动复制粘贴,要么…...

解决Open-AutoGLM部署难题:ADB连接、模型加载、内存不足全攻略

解决Open-AutoGLM部署难题:ADB连接、模型加载、内存不足全攻略 1. 项目简介与核心价值 Open-AutoGLM是智谱AI开源的手机端智能助理框架,它能通过自然语言指令自动操控安卓设备。想象一下,只需说"打开小红书搜美食",AI…...

灵感画廊实际作品:基于‘纪实瞬间’预设的城市街景写实图像生成

灵感画廊实际作品:基于‘纪实瞬间’预设的城市街景写实图像生成 “见微知著,凝光成影。将梦境的碎片,凝结为永恒的视觉诗篇。” 今天,我们不谈复杂的参数,也不讲枯燥的部署。我想带你走进一个特别的创作空间——灵感画…...

Pixel Aurora Engine效果对比:传统像素绘制 vs Pixel Aurora AI生成效率

Pixel Aurora Engine效果对比:传统像素绘制 vs Pixel Aurora AI生成效率 1. 两种创作方式的本质区别 1.1 传统像素绘制的工作流程 传统像素艺术创作是一个完全手动的过程,艺术家需要: 使用专业绘图软件(如Aseprite或Photoshop…...

MySQL主从复制、高可用集群架构详解

一、复制(Replication) MySQL Replication是官方提供的主从同步方案,也是用的最广的同步方案。Replication(复制)使来自一个 MySQL数据库服务器(称为源(Source))的数据能够复制到一个或多个 My…...

效果实测:EagleEye(DAMO-YOLO)在多种场景下的目标检测表现

效果实测:EagleEye(DAMO-YOLO)在多种场景下的目标检测表现 想了解一个号称“毫秒级”响应的目标检测模型,在实际使用中到底有多快、多准吗?今天,我们不谈复杂的部署步骤,也不讲深奥的技术原理,就单纯来看看…...

LLM强化学习从入门到精通:Composition-RL全解析,收藏这篇就够了!

🎯 为什么我们需要Composition-RL? 想象一下:你正在备考数学竞赛,一开始做的都是基础题。随着练习增多,你能轻松答对所有基础题,但这些简单题已经无法帮你进步了——你需要更难的题目来提升能力。 这正是…...

医生Agent实战教程(非常详细),别再瞎喂数据看这篇就够了!

如果把近两年的大模型发展比作“加速跑”,那么这篇论文的开场就像直接指出:跑道快到头了。作者认为,当前大语言模型的扩展规律正遭遇一个越来越现实的瓶颈: 高质量人类语料接近枯竭,模型继续“吃数据”变得困难,这被他…...

开发者必备:OpenClaw调试Phi-3-mini-128k-instruct接口的3个关键技巧

开发者必备:OpenClaw调试Phi-3-mini-128k-instruct接口的3个关键技巧 1. 为什么需要专门调试Phi-3-mini接口? 上周我在尝试用OpenClaw对接Phi-3-mini-128k-instruct模型时,遇到了一个典型问题:明明本地curl测试接口返回正常&…...

Free RTOS:任务状态,任务管理与调度理论

目录 1.任务状态 1.1 FreeRTOS的任务状态: 1.2 阻塞状态(Blocked) 1.3 暂停状态(Suspended) 原型如下: 1.4 就绪状态(Ready) 1.5 完整的状态转换图 1.6 代码 2.任务管理与调度理论 2.1 调度 2.2 FreeRTOS调度 STM32CubeMX FreeRTOS源码 代…...

FLUX.小红书极致真实V2效果展示:宠物毛发层次、眼睛高光、微表情刻画

FLUX.小红书极致真实V2效果展示:宠物毛发层次、眼睛高光、微表情刻画 想不想拥有一款能生成媲美专业摄影棚照片的AI工具?今天要展示的,就是这样一个“神器”——基于FLUX.1-dev模型和小红书极致真实V2 LoRA打造的本地图像生成工具。它最大的…...

PyCharm与Anaconda环境管理详解:Phi-3-mini-4k-instruct-gguf解决Python包冲突

PyCharm与Anaconda环境管理详解:Phi-3-mini-4k-instruct-gguf解决Python包冲突 1. 为什么需要环境管理工具 Python开发中最让人头疼的问题之一就是包冲突。你可能遇到过这种情况:昨天还能运行的代码,今天突然报错;或者在一个项目…...

互联网产品创新:基于MogFace-large的社交平台智能相册分类功能

互联网产品创新:基于MogFace-large的社交平台智能相册分类功能 你是不是也有过这样的烦恼?手机相册里存了几千甚至上万张照片,想找一张和某个朋友的合影,却要像大海捞针一样翻上半天。聚会、旅行、日常随手拍,照片越积…...

RWKV7-1.5B-g1a开源大模型入门指南:低显存(3.8GB)轻量文本生成实操

RWKV7-1.5B-g1a开源大模型入门指南:低显存(3.8GB)轻量文本生成实操 1. 模型简介 rwkv7-1.5B-g1a 是一款基于RWKV-7架构的开源文本生成模型,专为轻量级应用场景设计。这个1.5B参数的模型在多语言文本生成任务上表现出色&#xff…...

SecGPT-14B模型微调:OpenClaw自动化准备标注数据与训练脚本

SecGPT-14B模型微调:OpenClaw自动化准备标注数据与训练脚本 1. 为什么需要自动化微调流程 当我第一次尝试微调SecGPT-14B模型时,最让我头疼的不是模型本身,而是那些繁琐的前期准备工作。作为安全领域的从业者,我深知专业数据的价…...

Facebook广告细分定位新功能解析

Facebook广告细分定位新功能的本质,是广告受众定位正式进入了“自然语言”时代。简单来说,就是把过去从庞大的标签库里找词,变成了直接用日常语言描述你想要触达的目标人群。这背后,是Meta全新的 “Andromeda”(仙女座…...

zRenamer 1.9 批量重命名工具

一、软件背景 1. 核心痛点来源 日常文件管理中,用户长期面临批量重命名低效、混乱、易出错的核心痛点: 手动操作繁琐:零散文件(照片、文档、视频)命名无规则,手动修改数百个文件耗时极长,重复…...

nli-distilroberta-base生产环境:低延迟NLI服务在搜索Query改写中应用

nli-distilroberta-base生产环境:低延迟NLI服务在搜索Query改写中应用 1. 项目概述 在搜索引擎优化和智能问答系统中,Query改写是一个关键环节。nli-distilroberta-base是一个基于DistilRoBERTa模型的轻量级自然语言推理(NLI)服务,专门为生…...

第二篇:KNX实战进阶|分模式开发+综合项目落地,手把手教你搞定

在上一篇博客中,我们已经掌握了KNX协议基础、开发环境搭建与协议栈移植,完成了“入门铺垫”。这一篇,我们将进入核心实战环节——聚焦KNX TP(楼宇主流)和KNX IP(远程控制)两种模式的开发&#x…...

VibeVoice语音合成系统效果展示:专业配音级语音频谱图分析

VibeVoice语音合成系统效果展示:专业配音级语音频谱图分析 1. 语音合成技术的新突破 你有没有想过,现在的AI语音合成已经能做到多逼真?不再是那种机械的、冰冷的机器人声音,而是真正像专业配音演员录制的高质量语音。VibeVoice语…...

第一篇:KNX入门实战|从协议基础到开发环境搭建,新手也能轻松上手

在智能楼宇与工业自动化领域,KNX协议绝对是绕不开的核心标准——作为全球通用的开放式楼宇控制协议(ISO/IEC 14543),它融合了欧洲三大总线协议的优势,能实现照明、空调、传感器等各类设备的无缝联动,广泛应…...

OpenClaw自动化测试新思路:千问3.5-27B生成与执行UI测试用例

OpenClaw自动化测试新思路:千问3.5-27B生成与执行UI测试用例 1. 为什么我们需要重新思考UI测试 作为一位经历过手工测试、录制回放、脚本维护三个阶段的老测试工程师,我始终被一个问题困扰:测试用例的维护成本永远与业务复杂度成正比。直到…...

PPT转视频工具,就得保留全部动画效果 —— 使用YOCO有感

在做课件视频这件事上,我踩过不少坑。一开始我以为,PPT转视频无非就是“把页面录下来”,后来才发现,真正决定视频质量的,不是画面清不清,而是PPT里的“动画逻辑”有没有被完整保留。而这一点,恰…...

JavaScript typeof 操作符详解

JavaScript typeof 操作符详解 引言 在JavaScript中,typeof 是一个一元运算符,用于检测给定变量的数据类型。它是JavaScript中最常用的类型检测方法之一。本文将详细介绍 typeof 操作符的用法、返回值以及注意事项。 typeof 运算符概述 typeof 运算符可以用于检测任何Jav…...

OpenClaw+Qwen3.5-9B低成本自动化:自建模型比API省80%

OpenClawQwen3.5-9B低成本自动化:自建模型比API省80% 1. 为什么我要研究OpenClaw的成本问题 上个月我尝试用OpenClaw自动化处理积压的3000多份PDF文件,结果被商用API的账单吓了一跳——单次归档任务的token消耗折算下来居然要12美元。这让我开始思考&a…...

如何分析网站SEO关键词排名

如何分析网站SEO关键词排名 在当今的互联网时代,网站的SEO(搜索引擎优化)已经成为了提升网站流量和提高品牌知名度的重要手段之一。其中,关键词排名分析是SEO工作的核心环节。一个网站如果能够在搜索引擎上的关键词排名靠前&…...