目录 为什么选择 Oculink 硬件 43代码问题 关于热插拔 为什么选择 Oculink 目前最成熟、门槛最低的外接显卡（eGPU）方案就是雷电（Thunderbolt）方案，只需要购买第三方厂商现成的雷电扩展坞，在具有雷电接口的设备上就可以使用，缺点是显卡扩展坞价格较贵、只支持具有雷电接口的设备。并且性能方面也不尽如人意，雷电 3/4 的接口理论最大带宽为 40Gbps，雷电 2 接口更少只有 20Gbps，但问题在于提供给显卡的实际带宽只有理论带宽的一半多一点，因此扩展出的显卡性能损失较为严重。 还有一种就是 Oculink 方案，Oculink 接口基于原生 PCIe 通道，可以看作一个在主板之外的 PCIe 接口，在提供 4 条通道的前提下，常见的 PCIe 3.0 ×4 规格在理论上可提供约 32 Gbps 的带宽，实际可用带宽约 28 Gbps，而 PCIe 4.0 x4 带宽则还要翻倍，都要明显高于雷电 3/4 提供的有效带宽，因此使用高端显卡的带宽和性能损失相对于雷电接口来说大大减小。 但是 Oculink 方案依然也有着不小的缺点，由于其硬件支持度不高（需要设备自带 Oculink 接口或者通过多余 M.2/U.2 接口扩展出 Oculink 接口），以及比较麻烦的折腾安装过程，所以依然也只有特定设备的部分玩家会使用。 目前可以使用 Oculink 接口的主流笔记本较少甚至可以说稀有，主要为联想的 ThinkBook 系列，Thinkbook 2024 款及以后的版本原生具有 Oculink 接口，并且只限于英特尔版本，据说锐龙版不支持是因为提供的 PCIe 通道数不够；而 2024 年之前发布的 Thinkbook 尽管没有 Oculink接口，但由于其隐藏的 USB2.0 接口边上就有一个 M.2 接口，可以通过加装一个定制转接板，从靠近 USB2.0 的 M.2 接口处转接出 Oculink 接口，当然缺点就是只剩了一个可用的 M.2 接口。 我这台 Thinkbook16+ 是 RTX4050 独显版本，曾经在几年前就折腾外接显卡，当时抱着玩一玩的心态买了一个 2023 款锐龙核显版本的转接板，结果买回来发现怎么装都装不到主板上，一问客服才知道核显版本与独显版本的主板布局不一样，转接板不能通用，后来一直苦于没有找到适配的转接板遂作罢。最近半年由于开始研究 ComfyUI，而 RTX4050 贫瘠的 6G 显存根本跑不了什么工作流，于是又萌发了折腾外接显卡的想法，好在这次我找到了可以用在这台电脑上的转接板。 硬件 我没有选择销量比较多的“开源宇宙”（因为以前就是在这家店买的 2023 款锐龙版转接卡不兼容），而是在另外一家店铺“DIY玩家世界”买了除支架以外的其他配件，本来也买了 Oculink 连接线，到货之后发现转接卡里包含了线，于是退掉了单买的线，最后加上运费与运费险只花了一百二十大洋多一点。 由于第一次折腾这东西，保险起见先在 BIOS 中把笔记本的 RTX4050 独显屏蔽掉了，再拆机把这个转接板装在笔记本上： 好的一点是，安装上转接板之后延伸出来的 Oculink 接口并不会遮挡住原来的 USB 接口，依然有空间能在 USB2.0 接口插上无线接收器： 笔记本上装完转接板之后，用 Oculink 线连上显卡转接卡简单测试一下好坏，显卡转接卡接上主板用的 24PIN 供电线，显卡再接上 PCIe 供电，首先给显卡扩展坞供电，把显卡转接卡上的开关拨到 POWER ON，等待显卡通上电之后再给笔记本开机，系统设备管理器的显示适配器下面多出来了一个带感叹号的设备： 能识别到设备说明扩展卡没问题，再装上驱动之后便可以成功显示为 RTX2080Ti，但是旁边依然带一个感叹号，这个就是网上很多人碰到的代码 43 问题，后面专门说这个问题的解决办法。 其次就是扩展坞了，我没有选择长方体盒子形状的扩展坞，感觉太大了的同时散热还受限，倒不如直接用开放式支架算了，最后选择“电脑机箱diy设计制作”这家店的开放式支架，这个支架发过来是零件和螺丝需要组装，组装确实费点时间，不过组装好的质感倒还意外地不错。 最后配上我那块魔改 22G 的矿卡 RTX2080Ti 和 650W SFX电源，尽管不用定制线的话线可能会有点乱，但鉴于整体不到两百块的成本，个人还是相当满意的，整个外接显卡成品如下： 43代码问题 英伟达显卡有可能会产生代码 43 报错问题，在 Windows 设备管理器中 NVIDIA 显卡显示“该设备已停止工作”（代码 43）： 国外有大佬提供了解决办法，只要运行其提供的脚本 nvidia-error43-fixer.bat 即可解决。 原帖：SCRIPT - nvidia-error43-fixer | M.2, mPCIe, Expresscard eGPU 脚本下载：https://egpu.io/wp-content/uploads/wpforo/attachments/3/12074-nvidia-error43-fixer113.zip 关于热插拔 需要注意的是，Oculink 接口本质上是原生 PCIe 通道的外置延伸，其工作机制与主板上的 PCIe 插槽一致，并没有统一、完整的热插拔协议。因此，在消费级笔记本 eGPU 使用场景中，Oculink 不支持真正意义上的热插拔操作。所以正确的开关机顺序是：开机时得先给外接显卡通电，再启动笔记本，关机时则正好相反，先等待笔记本完全关机，最后关掉外接显卡的电源。
目录： 1、下载安装MySQL 2、在安装目录新建配置 3、添加环境变量 4、安装 5、启动服务 6、卸载 现在 Windows 下安装 MySQL 的时候需要首先下载 MySQL Installer，通过这个软件来联网安装管理不同版本的 MySQL，但是这个软件默认是将 MySQL 安装在 C 盘的，修改安装路径的地方也藏的很隐蔽，并且由于安装时 MySQL Installer 需要联网下载安装包，这对于内网里的机器无疑就是很不友好的。但是从 Oracle 官网下载到的 MSI Installer 程序只是解压出了 MySQL 程序，并没有进行任何的环境变量配置、服务配置，那么就需要通过手动配置程序信息。 1、下载安装MySQL 最新版本下载链接：MySQL :: Download MySQL Community Server 旧版本下载链接：MySQL :: Download MySQL Community Server (Archived Versions) 选择下载某一个版本的 MSI 安装程序或者 ZIP 压缩包，下载完成之后进行安装或解压。 2、在安装目录新建配置 下文中的 MySQL 安装目录以 D:\Program\Environment\MySQL\MySQL Server 5.7 为例： 安装目录下创建一个 “data” 文件夹 安装目录下创建一个 “my.ini” 文本文件，向其中写入以下内容（文件路径根据实际修改）： [mysqld] # mysql 安装目录 basedir="D:\Program\Environment\MySQL\MySQL Server 5.7" # mysql 数据库的数据存放目录 datadir="D:\Program\Environment\MySQL\MySQL Server 5.7\data" sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES # MySQL服务器监听的端口 port=3306 # 服务端编码方式 character-set-server=utf8mb4 [clinet] # 客户端编码方式 loose-default-character-set=utf8mb4 # 端口号设置 port=3306 [WinMySQLadmin] Server="D:\Program\Environment\MySQL\MySQL Server 5.7\bin\mysqld.exe" 3、添加环境变量 右键 “开始菜单” -> “系统” -> “高级系统设置” -> “环境变量” 向 Path 中添加环境变量，值为 MySQL 安装目录下的 bin 文件夹： D:\Program\Environment\MySQL\MySQL Server 5.7\bin 4、安装 上面环境变量配置没有问题的话，就可以在 cmd 窗口中使用 mysqld 命令了。 此时以管理员身份运行 cmd 窗口，执行命令来初始化相关 data 文件： # 在前面配置好的 data 文件夹下会生成初始化的文件 mysqld --initialize-insecure --user=mysql 安装 MySQL 服务： mysqld -install 5、启动服务 可以通过以下命令启动 MySQL 服务： net start mysql 或者在 ”服务“ 窗口中找到 ”MySQL“ 这项服务，右键启动即可： 服务窗口可通过在“运行”窗口输入 “services.msc” 来启动，或者右键 开始菜单 -> 计算机管理 -> 服务和应用程序 -> 服务 找到。 在启动过程中有可能会出现报错： 在 MySQL 的服务属性中可以看到这项服务可执行文件的程序路径是不正确的： 这个窗口里面没有提供可以改这个路径的地方，查了一下，得需要到注册表中改，在注册表中（Win + R 运行窗口中输入“regedit”回车打开）找到 “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\MySQL” 这个路径，修改其中 ImagePath 的值，将引号里的路径替换为本地 MySQL 安装文件的实际路径（就只替换前面的路径，其他的不用改）： 保存退出之后，再到 “服务” 窗口中刷新一下，可执行文件的路径变成了新的路径之后再次启动即可成功启动 MySQL 服务。 目前本地运行的 MySQL 服务用 root 用户就可以登录，密码为空 MySQL 修改密码： 连接到数据库之后用 SQL 语句为 root 用户更改密码： alter user '用户名'@'localhost' identified by '新密码'; 修改完之后，刷新权限信息： flush privileges; 也可以在 MySQL 控制台中使用 mysqladmin 命令修改用户密码： # 新密码不需要加引号，否则会报错 mysqladmin -u [用户名] -p password [新密码]; 6、卸载 以管理员身份执行命令： mysqld -remove 删除服务： sc delete mysql 删除注册表文件： HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\eventlog\Application\MySQL HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\MySQL HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\eventlog\Application\MySQL 参考资料： MySQL8.0绿色版本——最纯净的安装体验(免去卸载不掉只能重做系统的‘囧‘境)_mysql8.0 绿色安装-CSDN博客 mysql 启动提示：错误2系统找不到指定文件；（本地计算机上的mysql服务启动后停止，某些服务在未由其他服务或程序使用时将自动停止）_无法编辑imagepath-CSDN博客
目录： 一、Docker 1.1、什么是 Docker 1.2、安装 Docker 1.3、更改镜像源 二、基本概念 2.1、镜像（Image） 2.2、容器（Container） 2.3、标签（Tag） 2.4、仓库（Repository）与注册中心（Registry） 二、命令 2.1、镜像管理 从 Dockerfile 构建镜像： 从远程仓库拉取某个镜像： 将本地镜像推送到远程仓库 列出本地所有镜像 列出与关键词匹配的本地镜像 查看镜像的详细信息（以 JSON 格式输出） 查看镜像的分层历史（各层的创建指令和大小） 删除本地镜像文件 删除所有悬空镜像 删除所有未被任何容器使用的镜像 将镜像保存为 tar 文件（一般用于离线迁移） 从 tar 文件加载镜像到本地 给镜像打标签： 2.2、容器启停 创建并启动容器 只创建容器，不启动 启动已经创建的容器： 在运行的容器中执行命令 停止运行中的容器： 强制停止容器： 重启容器： 2.3、容器管理 查看运行中的容器 删除已停止的容器 删除所有已停止容器 查看容器的标准输出和错误日志： 查看容器内运行的进程 试试监控容器的 CPU、内存、网络等资源使用情况 在主机与容器之间复制文件 导出容器为 tar 文件： 从 tar 文件导入为镜像： 2.4、标签管理 环境：ubuntu 24.04 一、Docker 1.1、什么是 Docker Docker是一个开源平台，用于将应用程序及其所有依赖项打包成标准的容器，从而实现“一次构建，到处运行”。 Docker 与传统虚拟机（Virtual Machine，VM）都是实现环境隔离和应用封装的技术，但它们在架构、性能、资源利用和使用场景上有本质区别。 Docker 容器除了运行其中的应用外，基本不消耗额外的系统资源，保证应用性能的同时，尽量减少系统开销。 传统虚拟机方式运行 N 个不同的应用就要起 N 个不同的虚拟机（每个虚拟机都要单独分配独占的内存、磁盘等资源），而 Docker 只需要启动 N 个隔离的“很薄的”容器，并将应用放进容器内即可。应用获得的是接近原生的运行性能。 对比维度 Docker（容器） 虚拟机（VM） 操作系统 共享宿主机内核 每个 VM 一个完整 OS 启动速度 秒级（0.1～2s） 分钟级 镜像大小 MB ~ 几百 MB GB 级 资源开销 极低 高 性能 接近裸机 有一定损耗 隔离性 进程级隔离 硬件级隔离 安全性 较弱（共享内核） 更强 可移植性 非常强 一般 运维成本 低 高 密度 单机可跑数百容器 单机只能跑少量 VM 虚拟机 = 在硬件上虚拟出一整台“电脑”，解决的是“硬件虚拟化”问题 Docker = 在操作系统上隔离出一个“进程运行环境”，解决的是“应用交付与环境一致性”问题 可以粗略类比为： 虚拟机：每个租户 独立一套房子（含水电） Docker：每个租户 独立一个房间，共用整栋楼的水电 Docker 官网：Docker: Accelerated Container Application Development Docker 官方文档：Manuals | Docker Docs 国内中文翻译文档：Docker中文文档（Docker官方文档，Docker官方教程） 1.2、安装 Docker 使用官方安装脚本： # 下载并执行Docker官方安装脚本 curl -fsSL https://get.docker.com -o get-docker.sh sudo sh get-docker.sh 或者通过添加 Docker 软件源安装： sudo apt-get update sudo apt-get install ca-certificates curl -y sudo install -m 0755 -d /etc/apt/keyrings sudo curl -fsSL https://mirrors.cloud.tencent.com/docker-ce/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc sudo chmod a+r /etc/apt/keyrings/docker.asc echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://mirrors.cloud.tencent.com/docker-ce/linux/ubuntu/ \ $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt-get update sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin 用上面任何一种方法安装完成 Docker 之后启动： # 启动Docker服务 sudo systemctl start docker # 设置开机自启 sudo systemctl enable docker 执行以下命令，检查安装结果： sudo docker info 输出版本信息则说明安装成功。 1.3、更改镜像源 需要说明的是，以往在国内使用很普遍的腾讯云、阿里云和各个大学的 Docker 镜像站点自从 2024 年之后都陆续不可用，现在可使用的镜像源已经很少，也不确定能用多久， 开发者镜像 - 免费手机工具 站长工具 源代码查看器 Docker镜像极速下载服务 - 毫秒镜像 Docker 镜像免费公共测试访问入口 | 轩辕镜像免费版 而在国内买了云服务商的服务器的话，可以使用其提供的内网 Docker 镜像，不过只能在其服务器上使用而无法在外网机器上使用。 腾讯云：腾讯云 - 安装 Docker 并配置镜像加速源，阿里云：阿里云 - 容器镜像服务，文档中明确写 https://mirror.ccs.tencentyun.com 只支持内网访问，不再支持外网域名访问加速。 找到配置镜像源的文件（如果文件不存在请新建） /etc/docker/daemon.json ，写入如下内容： { "registry-mirrors" : [ "https://docker.m.daocloud.io", "https://docker.xuanyuan.me", "https://docker.1ms.run" ] } 之后重新启动服务： sudo systemctl daemon-reload sudo systemctl restart docker 执行 docker info 命令检查配置是否成功，如果输出内容中 Registry Mirrors 一项变成了配置的镜像源，则说明更改镜像源成功。 二、基本概念 2.1、镜像（Image） 镜像是一个用于创建容器（Container）只读模板，可以粗略理解为面向对象编程中的“类”（Class），其包含了运行一个软件所需的代码、运行环境、库、环境变量和配置文件等。 镜像具有如下特点： 不可变：镜像一旦构建完成，内容便默认不可修改 分层结构：镜像采用联合文件系统（UnionFS），以分层方式组织文件，使得多个镜像可以共享相同的基础层，从而节省空间 可分发：镜像可以被推送到远程注册中心（如 Docker Hub）或从注册中心拉取，实现跨平台使用 2.2、容器（Container） 容器时镜像的运行实例，类似于“对象”，是镜像这个“类”的一个具体实例。当启动一个镜像时，Docker 会基于该镜像创建一个容器，并在其中运行应用程序（例如Nginx、MySQL等）。 容器的特点： 可读写：虽然镜像不可修改，但容器在镜像的基础上增加了一个可写层，所有对系统的修改都发生在这个层中。 具有生命周期：可以启动、停止、暂停、删除。 资源隔离：容器之间默认隔离无法交互的，通过 Linux 的 Namespace 和 Cgroups 技术实现进程、网络、文件系统的资源的隔离与限制。 2.3、标签（Tag） 标签用于标识镜像的特定版本或变体。一个镜像可以有多个标签，但它们可能指向同一个镜像 ID（即内容相同）。 如果不指定标签，默认使用 latest 注意：latest 并不一定代表“最新稳定版”，它只是一个约定俗成的标签，实际含义由镜像维护者决定。 2.4、仓库（Repository）与注册中心（Registry） 仓库（Repository）：存储同一软件不同标签（版本）镜像的集合。例如 library/nginx 是 Docker Hub 上 nginx 的官方仓库。 注册中心（Registry）：存放多个仓库的服务。最常见的是 Docker Hub，也可以搭建私有 Registry（如 Harbor、GitLab Container Registry）。 示例完整镜像名： docker.io/library/nginx:1.25 其中： docker.io：Registry 地址（默认可省略） library：命名空间（官方镜像通常省略为 nginx） nginx：仓库名 1.25：标签 二、命令 2.1、镜像管理 Dockerhub 地址：Docker Hub Container Image Library | App Containerization 国内镜像： 从 Dockerfile 构建镜像： 参数： -t 指定镜像标签 --file 指定 Dockerfile 路径，不存在此参数时默认从当前路径下构建 docker build -t <tag> ./ 从远程仓库拉取某个镜像： 镜像标签 <tag> 可省略，默认使用 latest docker pull <image><:tag> 如果没有配置镜像源只是想要临时通过某个（docker.xuanyuan.me）镜像源拉去镜像： docker pull docker.xuanyuan.me/<image><:tag> 将本地镜像推送到远程仓库 docker push <image> 列出本地所有镜像 参数： -a 查看所有镜像 -q 只显示镜像 ID docker image list # 等价于： docker image ls # 等价于： docker images 列出与关键词匹配的本地镜像 docker image list <关键词> # 等价于： docker image ls <关键词> # 等价于： docker images <关键词> 查看镜像的详细信息（以 JSON 格式输出） docker image inspect <image> 查看镜像的分层历史（各层的创建指令和大小） docker image history <image> 删除本地镜像文件 参数： -f 强制删除 -a 删除所有未使用镜像 <image> 可以是文件名，也可以是镜像 ID docker image rm <image> # 简写： docker rmi <image> 注意：当存在依赖于该镜像创建的容器时，镜像文件默认是无法被删除的。尽管可以使用 -f 参数来强制删除一个存在容器依赖的镜像，但并不推荐。正确的做法是，先删除依赖该镜像的所有容器之后再删除镜像。 删除所有悬空镜像 悬空镜像：Dangling Images，即没有标签且未被容器引用的镜像，通常出现在重新构建同名镜像后，旧镜像失去标签但仍存在） docker image prune 删除所有未被任何容器使用的镜像 docker image prune -a 将镜像保存为 tar 文件（一般用于离线迁移） docker save -o <file.tar> <image> 从 tar 文件加载镜像到本地 docker load -i <file.tar> 给镜像打标签： docker tag <image> <tag>qq 2.2、容器启停 Docker 运行容器前需要本地存在对应的镜像（Image）， 如果本地不存在该镜像，Docker 会尝试从配置文件（/etc/docker/daemon.json）的注册中心中下载。 创建并启动容器 参数： -d 后台运行 -it 交互式终端 --name 指定容器名 -p host:container，端口映射 -v /host:/container，卷挂载 --restart 重启策略 docker run [OPTIONS] <image> 例如： docker run -d --name nginx-app-test -p 8080:80 nginx 只创建容器，不启动 参数： --name 容器名 -v 卷挂载 docker create -i <container> --name <name> 启动已经创建的容器： 参数：-i 交互式启动 docker start -i <container> 在运行的容器中执行命令 参数： -it 交互式终端 docker exec -it <container> <command> 停止运行中的容器： 优雅停止容器，会向容器发送 SIGTERM，等待退出 参数：-t 停止等待时间（单位为秒） docker stop -t 强制停止容器： 会向容器发送 SIGKILL。同Linux的kill -9 docker kill <container> 重启容器： 参数：-t 停止等待时间（单位为秒） docker restart <container> 2.3、容器管理 查看运行中的容器 参数： -a 查看所有容器 -q 只显示容器ID docker ps # 等价于： docker container ls 删除已停止的容器 docker rm <container> 若要删除的容器仍在运行，需加上参数 -f： docker rm -f <container> 删除所有已停止容器 docker container prune 查看容器的标准输出和错误日志： 参数： -f 跟踪日志 --tail <n> 显示最后 n 行 docker logs <container> 查看容器内运行的进程 docker top <container> 试试监控容器的 CPU、内存、网络等资源使用情况 docker stats <container> 在主机与容器之间复制文件 docker cp ... 从主机复制文件到容器： docker cp <主机路径> <容器名或ID>:<容器内路径> # 例如： docker cp ./app.conf myapp:/etc/app.conf 从容器复制文件到主机： docker cp <容器名或ID>:<容器内路径> <主机路径> # 例如： docker cp myapp:/var/log/app.log ./ 导出容器为 tar 文件： 参数：-o 指定输出文件名 docker export <container> -o <file.tar> 从 tar 文件导入为镜像： docker import <file.tar> 2.4、标签管理 给镜像打标签： docker tag <image> <tag> 删除特定标签： docker rmi <image>:<tag> 参考文档： Docker - 马燕龙个人博客 云服务器 搭建 Docker_腾讯云 Docker 教程 | 菜鸟教程
目录： 一、编译无线网卡驱动 1.1、clone 项目 1.2、安装环境 1.3、编译并加载驱动 二、更换Grub主题 2.1、下载主题文件 2.2、安装主题 2.3、修改启动顺序 三、修复启动项 四、安装搜狗输入法 4.1、添加中文语言支持 4.2、安装搜狗输入法 环境：ubuntu 22.04 一、编译无线网卡驱动 由于 Thinkbook16+ 原装的无线网卡是瑞昱的 RTL8852，装上 ubuntu 22.04 之后会因为没有驱动而无法使用 wifi 功能，这个问题一度困扰了我好长时间，由于没有网线，在此期间只能用手机的 USB 热点共享功能把手机当成 ubuntu 的无线网卡来用。 后来在网上查到一篇关于自己编译 RTL8852 无线网卡驱动的博客：thinkbook14+16+ 安装ubuntu22.04 解决wifi6驱动问题 + 加装完善让笔记本化身完全体，一劳永逸思路_ubuntu wifi6驱动_久日与至的博客-CSDN博客，于是才得以解决此问题。 1.1、clone 项目 驱动项目链接：GitHub - HRex39/rtl8852be: Realtek Linux WLAN Driver for RTL8852BE 根据系统 kernel 的版本选择不同的分支： # kernel < 5.18 选择默认主分支 git clone https://github.com/HRex39/rtl8852be.git # kernel >= 5.18 选择 dev 分支 git clone https://github.com/HRex39/rtl8852be.git -b dev 查看当前 ubuntu 系统内核的方法： uname -srm # 或者 uname -a 1.2、安装环境 进行编译之前需要安装环境： sudo apt update sudo apt install make gcc linux-headers-$(uname -r) build-essential 1.3、编译并加载驱动 编译： cd rtl8852be make -j8 sudo make install 加载驱动： sudo modprobe rtw89pci # 加载驱动 sudo modprobe -r rtw89pci # 卸载驱动 二、更换Grub主题 2.1、下载主题文件 主题文件可以在这里下载： GRUB Themes - Gnome-look.org GRUB Themes - Gnome-look.org (opendesktop.org) 以我下载到的 ubuntu.tar 为例，将其解压到 /boot/grub/themes/ubuntu (或者选择其他目录也行)： # 创建目录 mkdir /boot/grub/themes mkdir /boot/grub/themes/ubuntu # 将文件到解压到创建好的目录中 sudo tar -xf ubuntu.tar -C /boot/grub/themes/ubuntu 2.2、安装主题 修改配置文件，编辑 /etc/default/grub 文件 sudo nano /etc/default/grub 找到以 "#GRUB_THEME" 开头的一行，该行用来配置主题文件路径，将其改为 "主题文件路径/theme.txt” ： # 没有这一行的话直接新增即可 GRUB_THEME="/boot/grub/themes/ubuntu/theme.txt" 然后更新一下 grub 配置： sudo update-grub 最后重启，开机的时候就能看到效果了。 2.3、修改启动顺序 在 Windows + Linux 双系统的启动项中，如果在 BIOS 中选择的是 ubuntu 的话，开机进入的 grub 启动项选择中 ubuntu 系统是排在第一位的。但在双系统中一般来说都是 windows 用的比较多，所以每次启动都来选择 Windows 启动项的话也是一件挺麻烦的事情，那么可以将 windows 的系统启动项放到第一位，只有需要用到 ubuntu 的时候再去手动选择启动。 需要用到的是 Grub Customizer 这个软件，安装命令： sudo add-apt-repository ppa:danielrichter2007/grub-customizer sudo apt update sudo apt install grub-customizer 安装完成后，在 ubuntu 的应用列表中找到这个软件并启动，软件中会显示出当前所有的启动项。 修改启动顺序的话也很简单，点击选中 windows 启动项，用菜单栏上的箭头给移动上去就可以了。 PS：其实这个软件也可以用来替换主题 Grub 主题 三、修复启动项 这一项希望你用不到 ::(狂汗) 如果在修改启动项的时候，不小心操作失误把启动项修改坏了，造成 ubuntu 系统无法启动的话（我之前就是....），可以安装 boot-repaire 来进行修复： sudo apt-get install boot-repair boot-repaire 使用方法：使用 boot-repair 对 Windows + Ubuntu 双系统引导修复 - schips - 博客园 (cnblogs.com) 四、安装搜狗输入法 4.1、添加中文语言支持 打开 系统设置 -> 区域和语言 -> 管理已安装的语言，在 “语言” tab下点击“添加或删除语言” 弹出“已安装语言”窗口，勾选中文（简体），点击应用 回到“语言支持”窗口，在键盘输入法系统中，选择“fcitx” 注：如果在键盘输入法系统中，没有“fcitx”选项时，需要打开终端手动安装fcitx： sudo apt install fcitx 等安装成功之后再执行上述步骤 最后点击“应用到整个系统”，关闭窗口，重启电脑 4.2、安装搜狗输入法 从 搜狗输入法linux-首页 (sogou.com) 下载适用于 ubuntu 的 deb 安装包，然后用命令行安装（双击也可以安装，但就是少点 Linux 的灵魂）： sudo dpkg -i 路径/安装包名 然后安装依赖： sudo apt install libqt5qml5 libqt5quick5 libqt5quickwidgets5 qml-module-qtquick2 sudo apt install libgsettings-qt1 这些依赖非常重要，不安装的话就会出现只能输英文而输不了中文汉字的问题。 以上步骤进行完之后，重启电脑，就可以在 ubuntu 上使用搜狗输入法了。 参考资料： thinkbook14+16+ 安装ubuntu22.04 解决wifi6驱动问题 + 加装完善让笔记本化身完全体，一劳永逸思路_久日与至的博客-CSDN博客 搜狗输入法linux-安装指导 (sogou.com) Grub Customizer首页、文档和下载 - GRUB2 管理器 - OSCHINA - 中文开源技术交流社区
目录： 废话 指纹模块本体 拆机 安装前试验、装驱动 安装 请注意！！！此文中的提到的改装有可能会导致产品失去保修，改装有风险，下手请谨慎！！！ 废话 手上这台 Thinkbook 16+ 是年后换的，刚开始还出现核显时不时抽风掉驱动的问题（后来排查下来是由于 BIOS 不稳定导致的，在更新了官网上 J6CN43WW 版本的 BIOS 之后就没这个问题了），这几个月用下来，简直堪称我的“梦中情本”。 R7-6800H 的单核多核性能不算顶尖但也十分够用，6400 Mhz 的 高频 DDR5 内存可以让核显 Radeon 680M 满血发挥，散热也很够用（毕竟 RTX2050 版本也是用的同一套模具，用来压核显还是不成问题），机身外围的接口配置堪称豪华：TypeC 接口、SD 卡槽、HDMI 接口、RJ-45 网线接口、2 个 USB3.0 接口都不缺，主板上还有两个 M.2 插槽，16寸的 2K 屏幕素质也不错。 这个本子最巧妙的设计是机身右侧隐藏式的 USB2.0 接口（堪称是 “2022 年笔记本最佳设计”），专门用来插无线鼠标、无线键盘等设备的接收器，从而避免了接收器插在外面上显得很突兀的问题。并且这个接口的位置附近就有一个直连 CPU 的 M.2 插槽，所以这个接口的还可以开发出一个新用途就是从主板上的一个 M.2 接口接根 Oculink 线缆，通过这个孔位延伸出来外接显卡，从而来提高游戏性能。有一说一外接显卡能用这样一种低成本的方式来实现可谓是相当诱人，要知道现在大部分扩展显卡的方案光是成品的显卡扩展坞价格就相当于大半张甜品卡了，并且机器还必须要有雷电接口才能实现。 不过，这个本子的缺点倒也不是没有。首先，个人觉得 A 面 和 C 面右下角的两个竖向排列的 “Lenovo” Logo 是真的丑，充满了突兀感，如果没有这两个 Logo 的话说不定还能让本子的颜值再提升一个层次；并且机身颜色只有一个黑灰色配色而没有银色配色可选就有点可惜了（感觉银色 + 圆润金属外壳就是我的 XP 了 :@(脸红) ）；1.8KG 的机身重量显然已经摆脱了轻薄本的范畴，鉴于它还是比大部分游戏本要轻一点，而且也没有游戏本的傻大黑粗，倒是可以接受。 除此之外，解锁时只有前置摄像头的人脸识别，这个本子也不支持指纹识别，算是最大的遗憾了。 欸~不过就在不久前，我在淘宝上无意中发现了有 Thinkbook 14/16+ 的指纹模块在卖，产品简介里卖家也大概介绍了安装方法。在 B 站上搜了搜，看到有不少安装成功的视频，小小研究一下之后感觉安装好像不是很难，果断下单买来一个打算试试。 指纹模块本体 到手之后是一个袋子，里面有几根排线加指纹识别模块本体： 拿出来看指纹模块的成色还是挺新的，指纹模块正面的蓝色贴纸下面是一块胶，把蓝色的贴纸撕掉之后就可以粘在主板上达到固定的效果，在排线上还印着联想的 logo，不太好判断这是拆机的还是其他联想电脑的配件存货： 指纹模块上连接排线的底座位于指纹模块的背面，连接排线时14+ 和 16+ 使用的排线也是不一样的，14+ 使用异面排线，16+ 使用同面排线： 连接时应该确保排线的每根引脚能正确地对应接触到指纹模块底座上的排线，因为卖家发过来的排线尺寸并不是与排线底座完全相同的，实际要更窄一点，需要看准了安装，否则没有正确连接上排线的话指纹模块是识别不出来的。安装了一个小时后还没有在设备管理器中找到指纹模块设备的大冤种如是说到。 :@(喷水) 组装好指纹模块和排线之后开始拆机安装。 拆机 这台笔记本的卡扣很多，而且扣的很牢固。这不是我第一次拆这台笔记本了，但是拧掉笔记本 D 面外壳的全部螺丝之后还是无法直接取下来后盖，我的办法是用撬片从转轴处一点一点地撬，就别想着大力出奇迹了，太大力的话可是真会出来一个“奇迹” ::(滑稽) 。 最后一点一点把后盖周围的卡扣撬开之后，缓缓的移动外壳多试探几下就可以慢慢取下来外壳了。主板上已经预留了指纹模块的排线接口，位于隐藏式 USB 接口那边的一个小主板上： 安装前试验、装驱动 先将指纹模块的另一端排线接到预留的指纹排线接口上，开机打开设备管理器看一下能不能识别到： 在“其他设备”一栏中出现了一个“Goodix FingerPrint Device”的新设备，这就说明识别到了这个设备（不同卖家的指纹模块的设备型号不一样那么识别出来的名字应该也是不一样的，上面出现的设备名仅供参考），设备图标旁边有一个感叹号是因为没有安装驱动，Window 系统无法正确识别这个设备，那么安装一个驱动来试试。 卖家是给了一个驱动的，我当时并没有下载，因为想着驱动问题应该可以通过 Window 更新来解决，但是尝试之后才发现以前安装驱动很方便的 Windows 更新这次竟然也不管用了，不管怎么更新都安装不上驱动。于是我找到卖家通过百度云分享过来的驱动，结果驱动文件超过了网页版的下载大小上限，必须要用客户端下载，鉴于百度云感人的下载速度，我老早就从百度云脱坑了，所以根本不想再下载百度云客户端，就放弃了。 反正指纹模块的排线上不是还有 “Lenovo” 的 logo 嘛，那我就想着在 thinkpad 官网看能不能搞个驱动，于是就在一众 thinkbook 笔记本的驱动列表中一个一个查指纹驱动名字和版本号有没有包含 “Goodix FingerPrint Device” 类似字样的。哎嘿，还真让我给找到了联想_ThinkPad|ThinkCentre|ThinkStation服务与驱动下载_联想指纹驱动程序(Windows 10 64-bit) (lenovo.com.cn)： 结果歪打正着地安装之后正好能用，设备管理器中设备旁边的感叹号消失了： 然后进入 设置 -> 账户 -> 登录选项 看到指纹模块出现了 “添加手指” 的选项： 至此，说明指纹模块没有问题，现在可以正式往主板上安装了。 安装 需要说明的是，为了保险起见，一般拆机时建议先给主板断电。可以在 BIOS 中开启“维修模式”，这个功能会直接关闭电池的供电，在下次插电时才会恢复电池供电。如果对这个模式断电不放心的话，也可以直接拔掉在主板上的电池排线（撕掉电池那块的黑色绝缘胶布之后，看主板上从电池那个位置延伸出来的一条五颜六色的排线就是了），如果徒手比较难从排线插座上取下来排线的话建议也不要大力出奇迹，找个细一点的物体从露出的排线下面往出来推。 接下来先把固定转轴黑色铁片的 3 颗螺丝拧下来，抬起转轴，角度不能太大，否则会把后面的外壳顶变形。 取掉指纹模块排线接口旁边的的黑色排线，拧掉小板上的所有螺丝之后，从接触外壳那一侧的接口轻轻把小板子取下来，同时还得小心另外一侧的一根排线。 把小的那块板子完全取下来之后电源键的位置上面还有铁片固定，拧掉螺丝取下来贴片就看到电源键了： 现在电源键上是用胶粘上去的一个没有任何功能的透明塑料片： 取下来这个塑料片之后按照原来的位置把之前组装好排线的指纹模块粘上去，撕掉背面的蓝色贴纸将模块粘到下面的板子上，顺带给露出来的一面贴上一层塑料胶带以达到绝缘的效果： 把小板安装上，最后再想办法把指纹模块排线的另一头给绕上去，插到小板上预留的接口里面： 连接好其他排线之后，装上外壳，就算大功告成了。放上一张最后的成品图： 老实说，我在买之前就没太搞明白，既然连人脸识别都给标配上了（要知道 Windows 的 人脸识别可是另外需要特殊的摄像头硬件支持，并不是随便一个摄像头就可以用人脸识别的）但是却连指纹识别都不给。但是当我在买来重装系统之后，在官网下载驱动时竟然看到驱动列表上提供了指纹识别模块的驱动！！这就很耐人寻味了。 :@(无所谓) 以目前的情况来看是在主板上是有预留的指纹识别模块的接口，所以个人猜测是大概率是这款 Thinkbook 在设计阶段的方案就包含了人脸和指纹两种解锁方式，到了最后量产阶段为了省成本给阉割掉了这个本子的指纹识别功能。 不过既然保留了指纹接口，那么对于有能力的用户来说，只要能买到对应的硬件就可以自己动手安装指纹模块，也算是一种不错的选择了。
折腾随身WiFi过程中的亿点点小记（下）：Debian部分优化/其他
本篇博客篇幅较长，建议结合目录查看！ 目录： 一、Debian 1.1、添加 RNDIS 驱动 1.2、解决Debian 下无法使用 SIM 卡上网的问题 1.3、Debian 连接 WiFi 1.4、解决 “无法安全地用改源进行更新，所以默认禁用该源” 报错 1.5、修改默认网关地址 1.6、安装 xfce 桌面并通过 VNC 访问 1.7、安装蓝牙 二、改装材料尺寸（仅供参考） 一、Debian 1.1、添加 RNDIS 驱动 装好 Debian 之后，插在电脑上用 SSH 是连接不上的，需要配置一下 RNDIS 驱动，在设备管理器中找到这个设备： 右键“更新驱动” -> 选择“浏览我的电脑以查找驱动程序” -> “让我从计算机上的可用驱动程序列表中选取” 选择加载全部，然后左侧选择“Microsoft”，右侧选择“基于远程 NDIS 的 Internet 共享设备” 无视警告，选是： 1.2、解决Debian 下无法使用 SIM 卡上网的问题 给随身 WiFi刷入 Debian 之后，原来的基带也被新系统自带的基带覆盖，所以可能会出现无法使用 SIM 卡上网的问题，要解决的话问题可以这么搞： 从 QPT 备份出来的分区镜像中找到 NON-HLOS.bin 文件，修改后缀格式为 “.img”； 用 DiskGenius 挂载打开这个文件，并复制出来 image 文件夹中的文件，主要是文件名为 “modem” 与 “wcnss” 的十几个文件 用导出的文件替换掉 Debian 系统 /usr/lib/firmware 目录下面的同名文件； 最后重启一遍系统即可 Diskgeniue专业版下载：『DiskGenius v5.4.2.1239汉化版-破解全功能专业版 | 花园博客 (wcstu.cn)』 1.3、Debian 连接 WiFi 随身 WiFi刷好 Debian 之后，默认是开了热点的，所以连接 WiFi 前需要关掉热点： sudo nmcli d disconnect wlan0 然后使用如下命令进入图形化界面配置网络： sudo nmtui 选择要连接的 WiFi 即可。 1.4、解决 “无法安全地用改源进行更新，所以默认禁用该源” 报错 修改源： sudo apt edit-sources # 或者： sudo nano /etc/ 国内软件镜像源： deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye main non-free contrib deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye main non-free contrib deb https://mirrors.tuna.tsinghua.edu.cn/debian-security/ bullseye-security main deb-src https://mirrors.tuna.tsinghua.edu.cn/debian-security/ bullseye-security main deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-updates main non-free contrib deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-updates main non-free contrib deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-backports main non-free contrib deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-backports main non-free contrib 修改完成之后，在执行 “apt update” 命令更新软件源时，可能会报错： 这个问题多数时候可忽略，但是少数情况下就会影响软件的安装，比如安装 xfce 桌面环境时总是会报错导致安装失败，暂时不清楚对其他软件安装有多少影响。 可以看到，报错信息中提示其中一个软件源 “http://repo.mobian-project.org” 有错误，这个是 mobian （就是适配移动端的 debian 系统）的软件源，其位于 /etc/apt/sources.list.d/mobian.list 文件中，但一般修改软件源是修改的 /etc/apt/sources.list 这个文件，所以修改软件源并不能解决这个问题，而且我在国内各个镜像站点也没有查到 miban 的镜像，所以干脆将其注释掉。后来发现还有个有更省事的办法，直接用执行如下命令，注释掉这个源： sudo sed -i '1c # deb http://repo.mobian-project.org/ bullseye main non-free' /etc/apt/sources.list.d/mobian.list 1.5、修改默认网关地址 编辑 “/etc/dnsmasq.conf” 文件，在文件末尾找到如下两行，第一行是地址，修改IP地址的三个部分： 1.6、安装 xfce 桌面并通过 VNC 访问 参考教程：『如何在Debian 9安装VNC | myfreax』 debian安装桌面环境（讲解debian安装kde图形界面） - 长城号 (changchenghao.cn) # 安装 xfce 桌面环境： sudo apt update && sudo apt install xfce4 # 安装字体，否则进去系统之后字体全是方块： sudo apt install ttf-wqy-microhei ttf-wqy-zenhei xfonts-intl-chinese # 安装 VNC： sudo apt install tigervnc-standalone-server 在用户目录 “~/.vnc/” （没有就新建一个）下新建一个配置文件 “config”， sudo mkdir ~/.vnc && sudo nano ~/.vnc/config 用自己熟悉的方式编辑这个文本文件，添加如下内容： geometry=1440x900 localhost=no 保存退出即可，接下来启动 VNC 服务： # 启动 sudo vncserver 控制台会提示：" You will require a password to access your desktops.Would you like to enter a view-only password (y/n)? "，输入 “y” 回车即可按照提示设置密码即可。 启动完成之后使用 VNC Viewer 就用 IP 地址可以连接到随身 WiFi 的 VNC 服务了。 1.7、安装蓝牙 apt install bluetooth 根据这篇博客 『debian下蓝牙适配器的配置和使用 - qiaoqiao2003 - 博客园 (cnblogs.com)，研究着玩了一下，随身 WiFi的蓝牙功能是正常的，但是暂时没想到在 Debian 下有什么用...... ::(挖鼻) 二、改装材料尺寸（仅供参考） 改装材料这块我只罗列出我用到的一些，仅供参考，不一定要跟我一样，具体根据自己的情况来选择 散热需要的风扇尺寸 : 2510/3007/3010 风扇金属防护铁网：2.5cm/3cm 固定风扇螺丝尺寸：M2.5 x 18 温控开关：TB02微型温控开关45度常开，KSD9000 到手之后感觉尺寸太大就放弃用了 参考资料： UFI 系列 4G WiFi 棒研究记录 | 泠泫凝的异次元空间 410刷debian避坑指南 来自 Mcitem - 酷安 Debian基础使用 · OpenStick项目 · 看云
折腾随身WiFi过程中的亿点点小记（上）：备份刷机
本篇博客篇幅较长，建议结合目录查看！ 目录： 一、驱动与备份工具 二、备份原厂固件 2.1、进入9008 2.2、开始备份固件 2.2.1、Miko 3.2.2、QPT 三、开启 ADB 以及 ROOT 3.1、开启 ADB 功能 3.2、Root 设备 3.3、修改切卡密码 四、备份/恢复基带 4.1、备份 4.2、恢复基带 五、刷机 貌似这东西在去年就有大佬拿来刷机玩了，我是七月初的时候在 B 站上看到关于随身 wifi 的搞机视频，鉴于当时因为疫情快递进不来小区，所以观望了一会，后来疫情好点了买了几个来玩。然后....鸽了几个月才写出来这篇小记::(小乖) 在研究这个东西的过程中，阅读了很多热心大佬写的教程，在此感谢酷安诸多大佬的教程与固件包，RESPECT！！！具体引用到的教程地址都会贴在对应的部分，这些教程集中在酷安的随身 wifi 版块与一些博客中，写的都很不错，但是由于太分散，对于新手来说入门时一脸懵逼完全无处下手（我不信就我一个人这样::(挖鼻)），所以用此篇博客来总结串联一下相关的教程，并结合我瞎捣腾的一点经验对教程中未提到的作出一些补充。 闲言少叙，下面进入正题。 首先，随身 wifi拿到手之后请务必备份！刷机不备份，变砖两行泪！！！ 备份全固件！备份分区镜像！备份基带文件！ 备份的好处就是可以放心给随身 wifi刷机，完全不用担心随身 wifi变砖的问题，变砖之后恢复备份即可救砖。 一、驱动与备份工具 备份之前需要安装相关的软件环境、驱动等，在这篇博客 『设备刷机需要的软件 | 宁宁's Blog (momoe.ml) 』中介绍得很全面。当然也不需要全部用到，只需要了解这么几个软件即可： MiFlash：用来安装 ADB 驱动 9008 驱动：顾名思义 Miko Service Tool（以下称为 Miko）：全备份工具，将所有分区备份为一个 “bin” 格式的文件 “Qualcomm Premium Tool”（以下称为 QPT）：备份工具，与上面 Miko 的区别是将分区分别备份为 “img” 、“mbn” 文件 星海SVIP（以下称为星海）：备份基带，备份成一个 “qcn” 文件 ARDC： 在电脑上投屏显示安卓系统的屏幕画面。 DiskGeniue Pro：用来编辑修改 “img” 镜像文件 文件下载链接：随身wifi文件 - 123云盘 (123pan.com) 需要注意的是，Miko 与 QPT 安装之后需要再破解激活，具体方法可查看对应安装文件目录下的文本文件。 二、备份原厂固件 2.1、进入9008 备份固件需要随身 wifi在 9008 模式下进行。 9008 模式是高通设备的最底层的联机模式，它相对于 Recovery、Fastboot 和 Android 系统是独立的，在这个模式下可进行救砖、备份等操作，联机后表现为序列端口（COMxx），在设备管理器下的 “端口” 选项中查看： 对于大部分的随身 wifi来说，都有这么一个恢复按钮： 在断电情况下，按住这个按钮将随身 wifi连接到电脑即可进入 9008 模式，这种方法适用于目前市面上能买到的大部分随身 wifi。除此之外还有一种短接引脚的方式也可以进入 9008，但是我查到的方法没有一个统一的答案，所以这种方法也就不再细说。 当然也有办法用 adb 命令进入 9008 模式： adb reboot edl 2.2、开始备份固件 教程：『UFI 系列 4G WiFi 棒研究记录 | 泠泫凝的异次元空间 (lxnchan.cn)』 由于备份软件有两个，所以以下分开来说吧。 2.2.1、Miko 备份： 备份出来的文件是 “.bin” 格式，如果觉得备份文件太大占空间的话可以打包成压缩文件保存，此时文件所占的空间会小很多。 恢复： 3.2.2、QPT 可以将整个固件按分区备份成多个镜像文件，后续进行开ADB（如果随身 wifi默认没有开ADB的话）、修改配置、给 openwrt/Debian 替换基带等操作需要用到其中的镜像文件。 备份： 完成之后窗口左下角会有提示： 恢复： 这个功能一般只用来恢复某个分区而不是整个固件，以 “boot” 分区为例： 同样的，完成之后左下角会提示。 这里说一个大概率会碰到的问题，就是 QPT 或 Miko 会出现如下报错： 这个问题我碰到了好多遍，明明随身 wifi已经在 9008 模式下了，却还是莫名其妙地报错，后来我发现了规律，即在 9008 模式下的随身 wifi不能被软件重复读取，随身 wifi进入 9008 模式之后，被 Miko 读取过一次分区，下次不管是 Miko 还是 QPT 读取分区，必会出现报错。 那么此时只需要拔掉随身 wifi重新进一遍 9008 模式即可，如果这样依然有报错的话，假如之前打开操作过与 ADB 相关的软件，在任务管理器 —> 详细信息中结束掉 “edl” 这个进程，再重进 9008 即可。 PS：貌似报错提示中失败的单词 fail 还是拼错的，拼成了 fial....:@(无奈) 三、开启 ADB 以及 ROOT 3.1、开启 ADB 功能 如果买到手的时候就是开了 ADB 的，那么这个步骤即可跳过。 检查随身 wifi是否开启 ADB 的方法：开机状态下，执行 adb 命令： # 此命令意为查看当前连接 adb 的设备 adb devices 如果设备列表中出现有这样的设备就说明已经开启了 ADB： 否则就是需要手动开启 ADB 功能，手动开启的过程也不难。简单来说，只需要修改 system.img 镜像中的几个文本文件，然后再刷回去即可。当然，在酷安社区中也有人直接刷其它人提供的 system.img 镜像文件，要使用哪种方式请自行甄别。 参考教程：『高通芯片的随身Wi-Fi开启adb 来自 厚德载物HoldZywOo - 酷安 (coolapk.com)』 DiskGenius 专业版下载地址：『DiskGenius v5.4.2.1239汉化版-破解全功能专业版 | 花园博客 (wcstu.cn)』 system.img 来自于之前 QPT 备份的镜像文件，用 DiskGeniue 打开这个 img 文件（把镜像文件拖进窗口打开，或者通过 “磁盘” —> “打开虚拟磁盘文件” 打开），将这三个文本文件右键复制出来： 根目录（点击主分区即可看到）：build.prop 根目录：build.prop.bakforspec 子目录 /vendor/Default/system/：build.prop 用文本文件打开，在大概179行的位置添加 “,adb”（逗号是英文逗号，不要打成中文逗号）： 然后将改好的文件拖进 DiskGenius 打开的 system.img 镜像文件里面复制替换掉原文件，需要注意的是 DiskGenius 普通版没有该功能，需要专业版。 最后将修改完成的 system.img 镜像文件用 QPT 重新刷入即可完成，刷入方法参考前面 QPT 恢复部分。 3.2、Root 设备 参考教程：『高通骁龙芯片的随身wifi入门刷机教程 来自 伏莱兮浜 - 酷安 (coolapk.com)』 Root 设备是为了备份基带，也可安装 Magisk 相关模块玩免流。这一步需要用到前面备份的 “boot.img” 镜像文件，以及一些 apk 文件，下载地址：随身wifi文件 - 123云盘 (123pan.com)。 修补 boot.img 镜像需要用到 ARDC 操作随身 wifi，打开 ARDC 之前需要关掉后台的 adb 软件，并且在任务管理器中结束掉 adb 进程，否则有可能会连接设备失败。弄好之后接下来按照以下步骤： 连接到随身 wifi之后，首先将 “桌面”、“ES 文件浏览器”、“Magisk” 这几个 apk 文件拖到窗口中安装，等几秒钟安装好之后，点击鼠标右键返回就会弹出主页的选择窗口，“Launcher” 就是刚才安装的桌面，选择始终用这个软件打开主页。 回到桌面之后打开 ES 文件浏览器，进入一个目录进行接下来的操作，以 “下载” 为例（当然也可以是其他目录）。同样的，像安装 apk 一样将之前 QPT 备份的 “boot.img” 拖进来，等几秒之后刷新，文件就被复制到这个目录了； 然后退出 ES 文件管理器，打开 Magisk，点击首页 安装 -> 下一步 -> 选择并修补一个文件 选好刚才上传的 boot.img 文件，并选择 “标准安卓方式”，然后点击 “开始”，等待出现 “All done” 提示出现 此时打开 ES 文件浏览器，可以看到在原来的目录下生成了新的修补好的 boot 镜像文件（为了之后操作方便，可将长按文件将其文件名修改得简单一点）。接下来需要用到 adb 工具，点击 ARDC 标题栏末尾的 “<<” 标记打开自带的 adb工具，在 CMD 字样右侧的输入栏中执行 adb 命令（当然可以用其他的 adb 环境，用这个只是方便而已）。 最后将修补好的文件导出到电脑上，在输入栏中输入如下命令，回车执行，等下方日志提示完成： # “Magisk.ing”与“E:/Download” 按照实际路径来 adb pull /sdcard/Download/magisk.img "E:/Download" 将修补好的 boot.img 镜像文件导出来以后，接下来就简单了，在 9008 模式下用 QPT 把镜像文件重新刷到 boot 分区即可完成。 或者用教程中提到的另外一种方式也行，即在 fastboot 下通过命令行的方式刷入，还是在这个输入栏中执行： # 将随身 wifi重启到 fastboot 下 adb reboot bootloader # 执行刷写 boot 分区的命令， # "E:download/magisk.img"是镜像文件实际的路径，可以通过把文件直接拖入输入框的方式自动生成路径 fastboot flash boot "E:download/magisk.img" 执行之后等待几秒，下方日志提示 Finished 的时候，执行重启命令即可（也可以手动插拔随身 wifi）： fastboot reboot 随身 wifi重启进入系统之后打开 Magisk，这一次进入可能得多等待一会，如果首页下方有如下图标说明 root 成功： 3.3、修改切卡密码 其实在自带的安卓系统中，很多设置项都写进了 system.img 镜像中的几个配置文件中，包括切卡密码，主要是镜像中的这几个文本文件： 根目录（点击主分区即可看到）：build.prop 根目录：build.prop.bakforspec 子目录 /vendor/Default/system/：build.prop 所以要查看切卡密码的话也很简单，首先用 DiskGeniue 挂载 system.img 镜像文件，找到这三个文件中的任意一个，复制出来后用文本文件打开，搜索 “persist.ufi.ft.simswitchpword” 属性即可，等号后面的值就是当前切卡密码： 要修改的话将这三个文件的该属性值都修改掉，然后替换掉 system.img 镜像中原来的文件，再用 QPT 刷回去即可。 或将随身 wifi重启到 fastboot 模式下用命令行刷入： # 将随身 wifi重启到 fastboot 下 adb reboot bootloader # 执行刷写 boot 分区的命令， # system.img 换成实际路径，可以通过把文件直接过来方式自动生成 fastboot flash system system.img 这就是修改切卡密码的办法，如果是其他设置项的话也是同理。设置项命名虽然都是英文，但基本能明白个大概的意思....吧::(狗头)::(狗头) 四、备份/恢复基带 备份基带使用星海这个软件。 参考教程：『随身wifi先机W001和先机003mb备份与刷机恢复基带流程 来自 UTF16 - 酷安 (coolapk.com)』 备份操作进行之前，先用 ARDC 连接随身 wifi打开 Magisk。 4.1、备份 需要注意的是，在最后一步执行备份 QCN 的操作时，弹出窗口选好基带文件保存位置后，当左边提示 “连接手机...” 的时候，随身 wifi端将会弹出 “Shell 申请获取超级用户” 的提示，选择 “允许”。如果没来得及点允许的话，在 Magisk 里面重新给 Shell 赋予 root 权限，然后再操作一遍即可。 4.2、恢复基带 首先用命令将随身 wifi重启到 fastboot 模式（或者用 “搞机助手/随身wifi助手”）： adb reboot bootloader 恢复之前，需要先将原有的基带擦除： 然后将随身 wifi重启进入系统，接着如下步骤恢复即可： 五、刷机 随身 wifi自带安卓系统，如果不使用自带的 esim 套餐，也不用 Magisk 玩免流的话，那可以刷 Debian/openwrt 系统玩一玩。 Debian/openwrt 源于 HandsomeHacker 大佬的 『OpenStick Project · GitHub』、『HandsomeMod · GitHub』 项目，在此向大佬致敬！！其官方 wiki 地址为：『OpenStick项目 · 看云 (kancloud.cn)』。后续也有酷安的其他的热心大佬根据此项目编译了不同版本的系统固件，在酷安的随身 wifi 话题下能找到很多。 这里以酷安 苏苏小亮亮 编译的固件为例，来说说如何刷机。 固件发布地址：『来自 苏苏小亮亮 - 酷安 (coolapk.com)』，下载地址：ufi_rom - 123云盘 (123pan.com) 相对于之前的备份操作，刷机反而是最容易的。刷机只需要使随身 wifi进入 “fastboot” 模式（在 adb 窗口运行 “adb reboot bootloader” 命令或者使用 “搞机助手/随身 wifi 助手” 这样的工具），然后运行刷机包目录下的刷机脚本 “flash.bat” （Linux 系统执行 “flash.sh” ），最后按照窗口中的提示操作即可刷机。 刷完机之后一般会自动重启，如果没有重启的话手动插拔一下。并且，安装完之后最好用 passwd + 用户名 改一下密码。 这个 Debian 系统连接 ssh 的地址是 192.168.68.1，用户名是 “root/user“，密码是“1”；openwrt 系统首页地址为 192.168.1.1，用户名为 “root”，无密码。需要说明的是， 这两组账户名与密码不一定适合于其他人编译的固件，不同的大佬编译的固件的账号密码是不同的，具体请参考其固件说明。 除此之外，还有一种情况，就是刷机包中只提供了 boot.img 与 roofs.img 这两个镜像，那么这个时候可以用上之前的刷机包，在其目录下用这两个文件替换同名文件，然后执行 flash.bat 刷机脚本就行了。当然前提是使用的 boot.img 文件与随身 wifi是匹配的，否则就会变砖，这一点需要注意。 文件下载：随身wifi文件 - 123云盘 (123pan.com) 参考资料： OpenStick Project · GitHub OpenStick项目 · 看云 (kancloud.cn) UFI 系列 4G WiFi 棒研究记录 | 泠泫凝的异次元空间 (lxnchan.cn) 高通骁龙芯片的随身wifi入门刷机教程 来自 伏莱兮浜 - 酷安 (coolapk.com) 随身wifi先机W001和先机003mb备份与刷机恢复基带流程 来自 UTF16 - 酷安 (coolapk.com) 设备刷机需要的软件 | 宁宁's Blog (momoe.ml)
关于华为悦盒EC6108V9的一种比较另类的救砖方法
目录： 一、前期准备 1.1、USB转TTL模块 1.2、主板上焊接针脚 二、HiTool 线刷 2.1、跑码 2.2、开始刷机 2.3、系统启动 三、破解 四、后续 五、碰到的坑 5.1、关于在刷机前配置板端ip的问题 5.2、发送数据帧失败，请检查串口连接是否正常 我手上的这个电视盒子，是2016 年家里办宽带的时候电信送的，在 2020 年疫情期间被我刷机给变砖了 :@(狂汗) 。盒子接上电源开机的时候电视完全没有反应，左边绿灯与中间红灯常亮，Recovery 进不去，使用遥控器也没有任何反应。当时还抱着卡刷救砖的希望，尝试了网上说的短接 J15 针脚强制刷机，结果一点用也没有，然后淘宝又买了 TTL 转 USB 模块准备线刷救砖，买来还没操作就被网上那些教程吓住了，再加上那段时间打游戏也打的火热，这个事也就被无限期搁置了（拖延症晚期患者 ::(酸爽) ）。后来直接就买了斐讯 N1，转 N1 的阵营了，一直用到了现在。直到前两天在 B 站刷到这个将华为悦盒刷成 Ubuntu 服务器的视频： {bilibili bvid="BV1Y3411V77b" page=""/} 这个视频让我又有了天晴了雨停了我又觉得我行了的感觉，正好这几天毕业答辩的事也忙完闲下来了，所以花了一（亿）点点时间做一下最后救砖的尝试，当然最后算是成功了，所以写这篇博客来记录一下，为同样变砖的同志提供一个救砖的参考方法。 事先在此说明：这是在华为悦盒使用卡刷、强制卡刷都没有办法救砖时，并且还找不到更适配的固件的情况下，我摸索出来的一个比较另类的救砖方法，目前这个方法只在我的这个盒子上成功了，其他的盒子还没有试过（也没有条件尝试），因此并不能保证这个方法的通用性。在 ZNDS 论坛上有个类似的方式是这个（不过我并没有尝试成功）。 如果你是老司机了，那么本文救砖的方式可以试一试，救砖成功那么恭喜你，如果尝试多次还不成功的话那建议再去找找别的方式，相反如果你此前没有过刷机的经验或者经验不足，且无法独立解决报错问题，那么强烈建议慎用本文所提供的方法！！ 在刷机过程中造成的损坏恕博主不能负责！！！ 在刷机过程中造成的损坏恕博主不能负责！！！ 在刷机过程中造成的损坏恕博主不能负责！！！ 首先说明一下我手上这个盒子的型号规格：型号为华为悦盒 EC6108V9，用的 CPU 型号是 Hi3798MV100，存储规格为 1G + 4G。 型号信息： 主板布局： 一、前期准备 1.1、USB转TTL模块 线刷需要 USB 转 TTL 模块，淘宝几块钱就能买到还送杜邦线，就是这玩意： 无脑买型号是 CH340 的就行，看网上说大部分 CH340 免驱动，但是我手上这个不是，所以建议到时候跟卖家问清楚再买。甚至只要你愿意多花几块钱，还可以买到土豪金配色的（刷机时有神秘 buff 加成 :@(吐舌) ）。 刷机之前检验一下 TTL 模块是否需要驱动，模块插到电脑上之后，在设备管理器 -> 端口选项下面会显示硬件名称跟端口： 如果不显示的话应该是没有驱动，打开 Win10 更新 -> 检查更新，有更新的话就点击安装就行： 1.2、主板上焊接针脚 此外还需要在电视盒子主板的 GND、RX、TX 这三个脚位上焊接三个排针，方便用杜邦线连接 TTL 模块，最后效果是这样： 需要注意的是盒子主板与 TTL 模块针脚连接的对应关系：模块的 GND 脚连接主板的 GND 脚，模块的 RX 与 TX 与主板要反着连，即模块的 RX 连接主板的 TX，TX 连接主板的 RX。 二、HiTool 线刷 线刷工具用到 HiTool，下载地址放在文末。这个软件需要 Java 环境，如果打开报错的话就配置一下 Java 环境，配置方法参考这篇博客：Win10系统配置Java开发环境 - Roookie博客 | 记录 · 收纳 · 分享 (wlplove.com)。 软件启动之后，首先要选择芯片平台，我选择了“Hi3798MV100”，然后进入软件，打开 “HiBurn”模块，这就是线刷需要用到的功能。 2.1、跑码 开始刷机前，简单介绍一下“跑码”。 这个操作在刷机失败之后查找错误原因是非常有用的。我刚开始查资料时看到网上很多人都提到了“跑码”这个词，弄得我一脸懵逼，不过跟着操作了以后就大概理解什么意思了，简单来说，跑码会在硬件启动过程中输出硬件信息、一些提示信息，也会在出现错误的时候输出错误代码，对定位硬件启动的错误有很大的帮助。 在软件菜单栏上点击这个图标打开终端窗口： 在打开的终端窗口上前三个按钮的功能分别是连接、断开连接、设置： 连接前先点击设置按钮配置一下连接端口，端口就是前面设备管理器里显示的 TTL 模块的端口： 设置完成之后，点击连接按钮，然后给盒子通电，首先会在终端输出当前设备的硬件信息，然后盒子会尝试启动系统，同时在终端输出启动过程中的提示信息，比如刚开始我的盒子就是一直循环输出同一段报错信息： 看报错信息应该是在尝试启动的过程中卡在了 fastboot 上。 2.2、开始刷机 相关文件链接已放在文末。 给盒子断电并连接网线，在软件里配置本机与盒子的 IP 地址： 串口：设备管理器里显示的 TTL 模块的连接端口 服务器 IP：本机的 IP 地址 IP 地址：网络盒子的 IP，可以不用改 网关：路由器的 IP 然后找到下方的“烧写eMMC”： 选择刷机文件目录下面的 “xml” 分区表文件，下方表格中就会自动导入相关的分区镜像，选择要刷入的分区文件，点击烧写，当下面控制台出来提示以后给盒子通电，然后等着刷机完成就行了。 这就是整个刷机步骤，很简单吧？ ::(呵呵) 但是吧，实操就不是这样了，因为适配的线刷固件是个大问题。 我找了不少的搜索引擎、论坛、网盘，只找到了几个 CA 版四川电信的盒子线刷固件，并且都是适配 8G 版本的华为悦盒，对比了一下文件结构和大小，最后发现有好几个是同一份文件 ::(挖鼻) ，其他还找到了很多诸如“update.zip”的这类卡刷包以及线刷的 fastboot、recovery 等文件，然而卡刷包对于线刷并没有什么卵用。 鉴于找不到完全适配的线刷固件，所以只能凑活用这个四川电信的 CA 固件了。刚开始我还没有什么思路，我就抱着死马当活马医的心态想着给盒子刷这个固件试试，看能不能刷进去。 点击“刷写”不到一分钟，不出意外地控制台就报错了： 第一点提示说是“烧写的 Fastboot 镜像与当前单板型号或 Flash 不匹配导致”，那就可能是 fastboot 文件的问题？此时我灵机一动，正好有之前下载到的适配我这个盒子的 fastboot 文件啊，于是我就用下载到的 fastboot 文件替换了刷机固件下的 fastboot 文件，然后继续刷机。 果然，这下子没有报错，显示开始刷机了，刷的时间比较长，四十几分钟后提示烧写完成： 2.3、系统启动 我一下来了精神，没想到瞎猫碰到死耗子，竟然真就给刷进去了。我连忙给盒子接到电视上，找出吃灰了两年的遥控器，塞两节电池之后开始开机，果然就见到了那个熟悉的界面： 接下来系统开始进行初始化走进度条，就在我以为救砖成功的时候，进度条卡在了 50% 不动弹了，提示“接入网络故障”： 可问题是我已经给盒子插了网线了啊，莫非是要连接光猫上的“iTV”接口？试了连接到光猫上的网口还是卡在这里，我想着要不然恢复一遍出厂设置吧，结果恢复完之后提示信息又变成“通路故障或AAA认证失败”了： 行吧，虽然依然没进去系统，至少比变砖强点。 这时候想起网上不少的刷机教程，都提到了卡刷这个方式，于是我也下了好几个卡刷包想着试一试卡刷，将刷机文件在硬盘根目录与“upgrade”文件夹各放了一份，开机通过电源键进入 Recovery，选择 “Apply update from external storage（从外部存储更新）”选项卡刷，但是要么直接提示“更新失败”，要么就是好不容易开始更新了，结果一会之后卡进度条还是提示更新失败。 起初我还怀疑是不是刷机包给下错了，但我试了好几个之后都不行之后就大概确定不是了，再尝试了一下短接 J15 针脚强刷，依然没有任何反应，卡在这了。 后面看到这一篇帖子华为悦盒通用刷机救砖破解教程_华为悦盒/华为盒子 ROM固件_小白刷机网 (xiaobaishuaji.com)中提到的更新了签名会导致卡刷失败，按这里面提到的方式刷机前进行一次“三清”，这不清不重要，清完之后启动的时候结果直接变砖无法启动 :@(喷血) ，.......无奈。 三、破解 在这个界面卡了好长时间，结果发现其实按遥控器上的设置建是可以进入设置菜单的，但需要操作码，网上查了一下，我用“6321”进去了。 操作码大概可能有这么多个：一般是运营商客服电话（10000、10086、10010），除此之外还有：8288、6321、2878、3008、8005、1301、123456等，都没有用的话，可以试试专家模式密码189189 来自：华为悦盒ec6108v9高级设置操作码常用汇总 到设置界面看了一下设备信息，我大概知道为什么卡刷失败了，因为这个盒子从 pub 版本被刷成 CA 版的了： 到这里的话，我对卡刷是不报什么希望了。但是好在盒子已经能启动了，虽然还没办法通过系统自带的 IPTV 是进入桌面，但是能进设置界面啊，那就存在破解安装当贝桌面的可能性，然后绕过 IPTV 进入系统当贝桌面。 关于破解华为悦盒安装第三方桌面的步骤，在 ZNDS 论坛的这篇帖子 最新华为悦盒V9_V9U_V9E_V9A_V8通用傻瓜式刷机包！_华为悦盒_ZNDS 里已经写挺详细的，我就懒得写了，直接参考这篇帖子就可以。破解工具在文末。 接下来就比较顺了，破解果然是可以的，破解重启之后就有选择桌面的弹窗了： 四、后续 破解完成之后，安装了几个软件用了一会，体验吧只能说很一般，目前主流的视频软件操作起来卡卡的，盒子发热还比较严重（虽然不摸是感觉不出来的），并且遥控器上的首页按键是没有响应的（估计可能是固件问题）。当然还是不能用太高的要求来评价它，毕竟盒子是七八年前了，实在太老了，就连 CPU 还是 32 位，性能放在今天来看实在是有点捉急。综合来说，安装一个直播软件来看电视直播是比较好的选择。 到这我就准备要收拾家伙事儿不搞了，然后我就在网上又发现了一个线刷固件，适用于 8G 版本盒子，我想着最后尝试一下吧，下载替换 fastboot 文件一气呵成，刷固件依然花了四十多分钟。启动之后还是卡在了运营商自带的 IPTV 界面，进入设置界面查看设备信息之后，发现这个固件是浙江的移动百盒固件，不过是 PUB 版本的，还行，比之前的那个 CA 固件强，用卡刷的方式尝试了一下刷第三方系统，是可以正常刷第三方系统的。因此把这个固件下载链接也放在了文末，有需要的话用这个也行。 最后用卡刷的方式刷入电信的原厂固件，再破解就行了，本来想着还能再认证一下使用 IPTV 来看电视的，但是我尝试之后发现这边的 IPTV 认证地址竟然都挂了，所以就干脆放弃了。 五、碰到的坑 这里记录几个我在刷机过程中碰到的问题，以供参考。碰到问题与报错不要怕，仔细查看分析控制台输出与报错，多猜多尝试。 5.1、关于在刷机前配置板端ip的问题 刚开始我并没有注意到这个问题，所以开始刷机时都是报错： 第一次我还不信邪，多尝试了几次之后我就意识到了问题：我的电视盒子都开不了机了，连接到网线之后路由器后台根本识别不到这个设备，那么现在设置的 IP 地址肯定是无效的呀。 这就是我碰到的第一个大坑，研究了一会我的解决办法是，给家里吃灰的一个旧路由器插上电，用这个路由器来组网，这个局域网里面就只有盒子和笔记本两台设备，修改 HiToll 设置里的 IP 地址，板端 IP 同样随便设置（不能跟笔记本 IP 重复），这下刷机就可以了。 所以关于这个问题我的猜测是这样的（计算机网络学的不好，猜错了大佬轻喷 ::(小红脸) ）：当局域网中设备比较多的时候，笔记本将刷机数据通过路由器给下一个结点传输的时候，设备太多就导致无法确定目标传输设备，所以就会连接超时报错，相反如果只有两个设备的话，路由器传输数据时不是传输给盒子就是传输给笔记本，传输给笔记本应该是不太可能，所以就只能将数据传输给另一设备，这么阴差阳错地就完成了传输。 怎么莫名有种玄学的感觉？？ ::(笑尿) 5.2、发送数据帧失败，请检查串口连接是否正常 刚点击刷写以后，控制这样报错： 以我的情况来看，是 fastboot 文件没有选对，换了适配设备的 fastboot 文件就不报错了。 文末再放上几个刷机查资料过程中发现的几个有用的帖子吧，供有需要的参考： 海思hi3798mv100机型通用twrp_华为悦盒_ZNDS 华为悦盒怎么进入REC模式升级双清恢复出厂设置最全方法_华为悦盒_ZNDS 河南移动cmcc-2 ch电视盒子Hi3798MV310线刷-卡刷-刷机-救砖 - 知乎 (zhihu.com) ec6108v9c刷回安卓看电视 - 海思机顶盒NAS社区 (histb.com) 关于hitool刷写... - 海思机顶盒NAS社区 (histb.com) 华为悦盒EC6108V9 CA高安版1+4G电信4K机顶盒拆机救砖文件TTL线刷 | 西安艾金达贸易有限公司 (aijinda.cn) 华为 悦盒EC6108V9_PUB-8G内存版线刷救砖软件下载_怎么安装第三方软件_应用APP下载_沙发管家 (shafa.com) 【已解决】 EC6108V9 等待boot启动超时，单板上无fastboot或当..._华为悦盒_ZNDS 文件下载链接： https://pan.baidu.com/s/1OZdZQRhWsE49pto_oAzbwQ?pwd=xy6m 提取码: xy6m
记录一下写论文过程中新学会的一些Word使用技巧
目录： 一、设置子标题 二、在不同的页设置不同的页眉/页码/页脚 三、添加的图片只占一行位置，无法完全显示出来 四、将文章中的英文、数字的字体格式一键设置为Times New Roman 五、在文档任意一个位置上开始之前的编号 六、快捷键： 七、绘制三线表 一、设置子标题 选中要设置为标题的行 开始 -> 段落上面找到多级标题的图标： 选择一个设置的多级标题样式： 就出现了标题，然后更改标题级别使其成为子标题： 此时标题编号可能不是我们想要的，所以还需要调整一下标题编号： 标题更改成功： 二、在不同的页设置不同的页眉/页码/页脚 在需要页眉/页码/页脚页码的页上第一行文字前（或是上一页的最后一行）添加分页符（布局-> 分隔符 -> 下一页）： 插入页眉/页码/页脚，此时插入的页眉/页码/页脚将以这个分页符为分界被分成了两部分，选中前面不用的页眉/页码/页脚，取消这个选项（引用 -> 链接到前一条页眉/页脚）： 接下来删除不用的页眉/页码/页脚即可，还有多出来的分页符 三、添加的图片只占一行位置，无法完全显示出来 就像这样： 方框为图片实际占的位置，但显示效果上只占了一行，图片不能全部显示出来 原因：图片的段落格式中设置了行距为“固定值” 解决办法：选中图片，在段落格式设置中把行距设置为单倍行距就可以解决问题 四、将文章中的英文、数字的字体格式一键设置为Times New Roman ctrl + A 选中全文，在字体设置中分别设置中文字体与英文字体的格式即可 还有个简单粗暴的方法，选中全文将全部字体设置为Times New Roman即可，中文不会受到影响。 五、在文档任意一个位置上开始之前的编号 先将这个编号的样式设置成与上一个编号相同的样式与级别 右键 -> 设置编号值（光标要放在标题一行或者选中标题），选择“继续上一列表”，填写需要开始的编号 六、快捷键： 格式刷： ctrl + Shift + C 复制格式 ctrl + Shift + V 粘贴格式 重复上一次操作：F4 七、绘制三线表 选中整个表格，右键 -> 表格属性 -> 边框和底纹 只保留表格的上下框线，并设置其宽度为 0.75 磅 再选中表格的第一行，右键设置其下框线即可：
目录： 前言 一、Office Tool Plus 安装之前需要做的事 二、下载安装 Office 三、激活 Office 3.1、使用 Office Tool PLus 激活 3.1.1、自动激活（推荐） 3.1.2、手动激活 3.2、命令行激活 3.3、判断 Office 是否激活 四、疑难解答 前言 这是第二篇，第一篇是 Windows 篇，链接在这：【新手向】如何激活 Windows 系统 - Roookie博客 | 记录 · 收纳 · 分享 (wlplove.com) 这一篇来讲讲 Office 的下载、安装与激活。 提前说明：使用本博客提供的方法激活的产品并不是正版，正版请前往微软商城购买 Windows 系统微软官方购买链接：https://www.microsoft.com/zh-cn/windows/get-windows-10 Office 套件微软官方购买链接：https://products.office.com/zh-cn/compare-all-microsoft-office-products 一、Office Tool Plus 下载 Office 需要用到一个工具 —— Office Tool Plus，这是一个强大且实用的 Office 工具，其基于 Office 官方部署工具 和 OSPP 制作，可以很方便地部署安装部署 Office，内置的迅雷引擎也可以更快地下载官方原版 Office。 官方网站：Office Tool Plus 官方网站 - 一键部署 Office (landian.vip) 工具下载链接：下载 | Office Tool Plus 官方网站 (landian.vip) （推荐下载包含框架的版本） 下载之后，解压压缩包，在根目录找到 “Office Tool Plus.exe” 打开： 在这里我多 BB 一句，碰到这种压缩包解压完的软件时应该如何运行。因为周围我已经碰到过好几个人了，他们从网上下载到一个打包成压缩包的程序以后，解压完之后就不知道该怎么办了。 一般来说，这种程序多是所谓 “绿色版” 软件，即不用安装、就能打开使用。在打开时，大部分情况下在根目录下即可找到 与软件同名的（英文全称或者简写都有可能） 启动程序文件，启动程序多是 “exe” 格式，在少数情况下，如果根目录找不到时，启动程序文件可能在根目录下的 “bin” 文件夹下（比如 QQ 这个臭弟弟）。 （嘘 ~~ 偷偷地告诉你：这个经验也适用于当程序启动快捷方丢失时到软件安装目录下寻找启动程序时使用哦） 安装之前需要做的事 卸载旧版本 Office，否则可能无法安装 清除旧版本的激活信息，Win 10 必须做（Office Tool Plus 激活页面 —> 许可证管理 —> 清除激活状态）。 清除 Office 设置，可选（Office Tool Plus 工具箱页面 —> 恢复 Office 为默认设置） 二、下载安装 Office 接下来就可以下载 Office 程序了。首页选择 “部署” 功能，简单说一下要设置的选项（用 Office LTSC 专业增强版 2021 - 批量许可证举例）： 基础设置里面： 产品：选择要安装哪个版本的 Office 软件。正版用户选择与自己的正版许可证对应的产品，否则无法使用正版许可证激活；如果非正版用户，就看心情选了，新版本最好，老版本也不错，但是请注意，一定要选择带有批量许可证、Volume 字样的版本，原因在激活时会说到。 应用程序：选择你需要用到的软件，不建议全部选择，装上以后多占空间不说，不想要了卸载的时候还没办法单独卸载，只能卸载是整个 Office 套件。 语言：没什么好说的，我想对于阅读这篇博客的大部分人来说选择都是一致乃至唯一的。 部署设置： 体系结构：选择 32 位兼容性好；64 位兼容性稍差且体积大，但处理大数据能力稍强。 通道：根据已经选择的产品来选择能用的通道，通道不适用于当前产品的时候会有提示。一般选 “当前通道” 就行，Office 2019/2021 批量许可证请选择 Office 2019/2021 企业长期版。 部署模式：选 “安装”，除非你是想制作 ISO 文件或者仅仅是下载 Office 软件。 安装模块：一般选 “Office 部署工具”，Office 2019/2021 批量许可证请选择 Office Tool Plus。 下载后部署：如果网不行，最好把这个选上，免得安装卡进度卡半天。 下载设置：看网络情况，个人建议切换下载引擎为 “迅雷”，当然不排除其他方式下载更快。 至于下方的高级设置里的选项，除非你明白选项是什么意思，否则建议不要瞎填瞎选。 以上设置好之后，点击右上角 “开始部署”，部署时耐心等待。这个过程会自动下载并安装选定的 Office 程序。 三、激活 Office 如果是安装好的 Office 软件，就等激活的那种。请务必保证你安装的是 VL 批量授权版本（即带有批量许可证、Volume 字样的），因为 Retail 零售版的 Office 无法使用 KMS 方式激活。 正版用户一般情况下是不需要借助 Office Tool Plus 激活 Office 的，在 Office 应用程序中登录自己的微软账号，或者输入你的正版密钥即可激活 Office。不知道自己有没有正版 Office？个人用户 >> 点击这里检查 <<，企业用户 >> 点击这里检查 <<。 没有许可证或者密钥的用户，得用点特别手段，下面展示了好几种激活方式，选择其中一种即可。 3.1、使用 Office Tool PLus 激活 3.1.1、自动激活（推荐） 注意：此功能要求 Office Tool Plus 版本不低于 8.2.4.0，旧版本无法使用。 请根据产品来选择相应的激活命令： Office 系列： Office LTSC 2021: ospp /ilbyid ProPlus2021Volume /sethst:kms.loli.best /setprt:1688 /act Office 2019： ospp /ilbyid ProPlus2019Volume /sethst:kms.loli.best /setprt:1688 /act Office 2016： ospp /ilbyid ProPlusVolume /sethst:kms.loli.best /setprt:1688 /act Visio 系列： Visio 2021: ospp /ilbyid VisioPro2021Volume /sethst:kms.loli.best /setprt:1688 /act Visio 2019： ospp /ilbyid VisioPro2019Volume /sethst:kms.loli.best /setprt:1688 /act Visio 2016： ospp /ilbyid VisioProVolume /sethst:kms.loli.best /setprt:1688 /act Project 系列： Project 2021: ospp /ilbyid ProjectPro2021Volume /sethst:kms.loli.best /setprt:1688 /act Project 2019： ospp /ilbyid ProjectPro2019Volume /sethst:kms.loli.best /setprt:1688 /act Project 2016： ospp /ilbyid ProjectProVolume /sethst:kms.loli.best /setprt:1688 /act Microsoft 365： ospp /ilbyid MondoVolume /sethst:kms.loli.best /setprt:1688 /act 当然，命令中 KMS 地址的也可以换成其他 KMS 服务器。 3.1.2、手动激活 选择首页 “激活” 功能。 安装 Office 批量许可证，每个版本的对应许可证在官方文档上就能找到：GVLKs for KMS and Active Directory-based activation of Office, Project, and Visio - Deploy Office | Microsoft Docs。 设置 KMS 地址（可以设置端口为 1688）并保存设置。这里有一份由 Yerong 大佬总结的 KMS 地址列表：KMS 列表 | Yerong の小窝 (coolhub.top)，KMS 服务器从这里面找。 点击右上角 “激活” 按钮，等待激活完成。 附上 Office Tool PLus 官方视频教程： {bilibili bvid="BV1eU4y1V7NU" page=""/} 3.2、命令行激活 其实 Office Tool PLus 就可以适用于大部分情况下的激活了，为什么还要加一种命令行的方式呢？ 当然是为了在妹子面前显得技术高超了啊~~ （好吧其实是我以前一直在使用命令行激活，结果写这篇博客深入研究时才发现原来 Office Tool Plus 的激活功能这么好用） 鉴于用了这么长时间的命令行，想了一下还是记录一下命令行的激活方式吧。 首先找到 Office 的安装目录，一般都是：C:\Program Files (x86)\Microsoft Office\Office16 或者 C:\Program Files (x86)\Microsoft Office\Office16。这个目录下面会有一个文件叫 “OSPP.VBS”，等下需要用到这个文件。 office16 是 office2016/2019/2021，office15 就是 2013，office14 就是 2010。 接下来打开开始菜单，键盘输入“cmd”，找到 命令提示符，点击 以管理员身份运行，使用 cd 命令切换到这个目录下面（以 C:\Program Files (x86)\Microsoft Office\Office16 为例，根据实际情况来）： cd C:\Program Files (x86)\Microsoft Office\Office16 接下来使用两句命令即可激活： # 设置激活时的 KMS 服务器地址为 kms.03k.org，可更换为其他 KMS 服务器 cscript OSPP.VBS /sethst:kms.03k.org # 连接 KMS 服务器激活 cscript ospp.vbs /act 命令中出现的 KMS 服务器地址在写这篇博客的时候还能正常使用，日后如果不能使用的话换成其他可用的 KMS 服务器即可。运行完成之后如果有 “Product activation successful” 字样提示，那么说明激活成功。 KMS 服务器还是在这里找：KMS 列表 | Yerong の小窝 (coolhub.top) 3.3、判断 Office 是否激活 随便打开 Office 软件中的其中一个，新建空白文档，选择左上角“文件” —> "账户"，就能看到激活信息了： 四、疑难解答 请参考这篇文章：[疑难解答] Office Tool Plus 入门教程 - Yerong の小窝 (coolhub.top) 参考资料： 视频链接：【Office Tool Plus 官方】还不会安装 Office？几个步骤即可搞定全部！_哔哩哔哩_bilibili 欢迎使用 Office Tool Plus | Office Tool Plus Docs (coolhub.top) 本站上线KMS服务~一句命令激活windows/office | 零散坑知识分享 (03k.org) Office Tool Plus 教程 - Yerong の小窝 (coolhub.top) 使用 KMS 激活 Microsoft 产品 - 犬's Blog (moedog.org)