-
安装交叉编译环境
需要一个
Ubunut18.04的64位的主机 或者直接在树莓派系统上进行编译;apt-get update apt-get install -y bc build-essential gcc-aarch64-linux-gnu git unzip -
获取树莓派内核源码
bash# 下载成功后,在当前目录下有一个 linux 的文件夹 git clone --depth=1 https://github.com/raspberrypi/linux --branch rpi-6.6.y获取树莓派官方 img 文件
bashwget https://downloads.raspberrypi.com/raspios_lite_arm64/images/raspios_lite_arm64-2024-10-28/2024-10-22-raspios-bookworm-arm64-lite.img.xz解压
2024-10-22-raspios-bookworm-arm64-lite.img.xzbash# 安装解压工具 sudo apt-get install xz-utils # 解压 xz --decompress --stdout 2024-10-22-raspios-bookworm-arm64-lite.img.xz > 2024-10-22-raspios-bookworm-arm64-lite.img -
编译内核
bash# 进入到内核源码 cd linux # 生成配置 make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- bcm2712_defconfig # 配置内核 make menuconfig # 编译内核 make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- -j8 -
查看
2024-10-22-raspios-bookworm-arm64-lite.imgbash# fdisk -l 2024-10-22-raspios-bookworm-arm64-lite.img Disk 2024-10-22-raspios-bookworm-arm64-lite.img: 2.67 GiB, 2864709632 bytes, 5595136 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x385cce61 Device Boot Start End Sectors Size Id Type 2024-10-22-raspios-bookworm-arm64-lite.img1 8192 1056767 1048576 512M c W95 FAT32 (LBA) 2024-10-22-raspios-bookworm-arm64-lite.img2 1056768 5595135 4538368 2.2G 83 Linux -
挂在镜像分区到文件系统
bash# 根分区 # offset: 541065216 = 512*1056768 sector size:512 bytes 起始地址:1056768 mount -o loop,offset=541065216 2024-10-22-raspios-bookworm-arm64-lite.img /mnt # 启动分区 # offset: 4194304 = 512*8192,sizelimit:536870912 = 512*1048576 mount -o loop,offset=4194304,sizelimit=536870912 2024-10-22-raspios-bookworm-arm64-lite.img /mnt/boot -
安装内核, 将编译好的内核以及设备树复制到系统中
bashcp linux/arch/arm64/boot/Image /mnt/boot/kernel8.img cp linux/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b.dtb /mnt/boot -
安装内核模块
bashmake ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu INSTALL_MOD_PATH=/mnt modules_install -
调整config.txt
bashvim /mnt/boot/config.txt # 在最后加上 kernel=kernel8.img -
卸载分区
bashumount /mnt/boot && umount /mnt -
结束
可以将
2024-10-22-raspios-bookworm-arm64-lite.img镜像通过Raspberry Pi Imager烧录工具制作系统启动的 SD 卡。
树莓派镜像 DIY 制作
楚轩QK2024-11-20 21:39
相关推荐
Yana.nice3 分钟前
openssl将证书从p7b转换为crt格式AI逐月8 分钟前
tmux 常用命令总结:从入门到稳定使用的一篇实战博客小白跃升坊35 分钟前
基于1Panel的AI运维跃渊Yuey1 小时前
【Linux】线程同步与互斥舰长1151 小时前
linux 实现文件共享的实现方式比较zmjjdank1ng1 小时前
Linux 输出重定向路由侠内网穿透.1 小时前
本地部署智能家居集成解决方案 ESPHome 并实现外部访问( Linux 版本)VekiSon2 小时前
Linux内核驱动——基础概念与开发环境搭建zl_dfq2 小时前
Linux 之 【进程信号】(signal、kill、raise、abort、alarm、Core Dump核心转储机制)Ankie Wan2 小时前
cgroup(Control Group)是 Linux 内核提供的一种机制,用来“控制、限制、隔离、统计”进程对系统资源的使用。