感觉还不太成熟,不太建议,除非官方出了参数。
另外,有时候它会胡扯的......
昨天编译这个内核成功,让它加强了性能方面的改进。
运行一天下来后,不太理想,小U卡顿明显、wine微信卡顿+网络老慢
#!/bin/bash
============================================================
内核编译脚本 v5(自动识别压缩包内真实版本 · AMD Zen4 优化)
用法: bash ~/Desktop/kernel_build.sh (不要加 sudo!)
日志: ~/Desktop/kernel_build.log
============================================================
set -euo pipefail
LOG="$HOME/Desktop/kernel_build.log"
TARBALL="$HOME/linux-7.1.10.tar.xz"
KURL="https://cdn.kernel.org/pub/linux/kernel/v7.x/linux-7.1.10.tar.xz"
log(){ echo "[(date '+%F %T')] *" | tee -a "$LOG"; }
die(){ echo -e "\033[31m[错误] *\033[0m" | tee -a "LOG"; exit 1; }
if [ "$(id -u)" -eq 0 ]; then
echo -e "\033[33m⚠ 提示: 请用普通用户运行,不要加 sudo\033[0m"
fi
--- 下载(已存在则跳过)---
if [ ! -f "$TARBALL" ]; then
log "下载源码..."
wget "KURL" -O "TARBALL" 2>&1 | tee -a "$LOG" || die "下载失败,请检查网络"
else
log "使用已有压缩包: $TARBALL"
fi
--- 完整性校验 ---
log "校验压缩包..."
xz -t "TARBALL" 2>&1 | tee -a "LOG" || die "压缩包损坏,请删除后重跑"
--- 自动探测真实版本 ---
SRC_NAME="(tar -tf "TARBALL" | head -1 | cut -d/ -f1)"
[ -n "$SRC_NAME" ] || die "无法读取压缩包内容"
log "检测到源码版本目录: $SRC_NAME"
SRC="HOME/SRC_NAME"
--- 解压(目录不存在才解压)---
if [ ! -d "$SRC" ]; then
log "解压源码..."
tar -xf "TARBALL" -C "HOME" 2>&1 | tee -a "$LOG" || die "解压失败"
fi
cd "SRC" || die "无法进入 SRC"
[ -f Makefile ] || die "$SRC 缺少 Makefile,目录内容异常"
log "源码就绪: $(pwd)"
--- 配置 + AMD 优化 ---
log "生成基础配置..."
cp /boot/config-$(uname -r) .config || die "复制内核配置失败"
make olddefconfig 2>&1 | tee -a "$LOG" || die "olddefconfig 失败"
log "应用 AMD Zen4 / RDNA3 优化项..."
scripts/config --enable MZEN4
--enable X86_AMD_PSTATE
--set-val X86_AMD_PSTATE_DEFAULT_MODE 2
--enable ACPI_CPPC
--enable AMD_PMC
--enable CPU_FREQ_DEFAULT_GOV_SCHEDUTIL
--enable CPU_IDLE_GOV_MENU
--enable CPU_IDLE_GOV_TEO
--enable HZ_300
--enable PM_AUTOSLEEP
--enable PM_WAKELOCKS
--enable PCIEASPM
--enable IO_URING
--enable SCHED_MC
--enable SCHED_SMT
--enable SENSORS_K10TEMP
--enable CC_OPTIMIZE_FOR_PERFORMANCE
--disable DEBUG_INFO 2>&1 | tee -a "$LOG" || die "配置优化项失败"
make olddefconfig 2>&1 | tee -a "$LOG" || die "重新生成配置失败"
--- 并行编译 ---
log "并行编译核心数: $(nproc)"
make -j(nproc) 2>&1 | tee -a "LOG" || die "编译失败!请查看日志最后 50 行"
--- 安装 + 更新引导 ---
log "安装模块..."
sudo make modules_install 2>&1 | tee -a "$LOG" || die "模块安装失败"
log "安装内核..."
sudo make install 2>&1 | tee -a "$LOG" || die "内核安装失败"
log "更新引导..."
sudo update-grub 2>&1 | tee -a "$LOG" || die "grub 更新失败"
log "===== 编译安装完成 @ $(date '+%F %T') ====="
log "版本目录: SRC_NAME | 日志: LOG"
EOF
chmod +x ~/Desktop/kernel_build.sh
echo "✅ 智能版脚本已生成: ~/Desktop/kernel_build.sh"



中文 




本次重新编译了一个7.1.10的内核,并更改了AMD的参数,自用发现电脑的启动速度快了点,其他的还在摸索中,