在 Debian 下编译“swapper 相关内核”,通常你指的是重新编译 Linux 内核(swapper 是内核线程 swapper/0 等,属于内核本身,不是单独模块)。下面按最常用、最稳妥的方式说明。
sudo apt update
sudo apt install -y \
build-essential \
libncurses-dev \
bison flex \
libssl-dev \
libelf-dev \
bc \
rsync \
fakeroot
apt source linux
或指定版本:
apt-cache search linux-source
sudo apt install linux-source-6.1
解压:
cd /usr/src
tar -xvf linux-source-6.1.tar.xz
cd linux-source-6.1
git clone https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
cd linux
cp /boot/config-$(uname -r) .config
make olddefconfig
make menuconfig
swapper 本身不可关闭,但你可以调整:
General setup → Configure standard kernel featuresKernel hacking(调试 swapper 时用)make -j$(nproc)
make deb-pkg
生成:
linux-image-*.deblinux-headers-*.debsudo dpkg -i ../linux-image-*.deb
sudo dpkg -i ../linux-headers-*.deb
更新 grub:
sudo update-grub
重启:
reboot
uname -a
ps aux | grep swapper
你会看到:
root 0 0.0 0.0 0 0 ? S swapper/0
init/main.c、kernel/sched/)Kernel hacking → Debug scheduler
如果你是指:
可以告诉我具体场景,我可以给你更针对性的步骤。