partition | filesystem | capacity | type |
---|---|---|---|
boot | FAT32 | 100MB | W95 FAT32 |
root | ext4 | until last sector |
fdisk
sdc
로 가정# 마운트가 되어 있다면 umount 할 것
$ lsblk
sdc 8:32 1 14.9G 0 disk
├─sdc1 8:33 1 61.9M 0 part /media/dhyang/boot
└─sdc2 8:34 1 161.2M 0 part /media/dhyang/root
$ sudo umount /media/dhyang*
$ sudo fdisk /dev/sdc # fdisk 명령 실행
$ sudo fdisk /dev/sdc
w
명령을 써야 적용된다.$ sudo mkfs.vfat -F 32 -n boot /dev/sdc1
$ sudo mkfs.ext4 -L root /dev/sdc2
# 마운팅 포인트가 없다면 미리 만들기
# sudo mkdir -p /mnt/boot
$ sudo mount /dev/sdc1 /mnt/boot
# sudo mkdir -p /mnt/root
$ sudo mount /dev/sdc2 /mnt/root
$ git clone https://github.com/crosstool-ng/crosstool-ng
$ cd crosstool-ng/
$ ./bootstrap
$ ./configure --prefix=${PWD}
$ make
$ make install
$ export PATH="${PWD}/bin:${PATH}"
$ ct-ng list-samples
aarch64-rpi4-linux-gnu
$ ct-ng show-aarch64-rpi4-linux-gnu
$ ct-ng aarch64-rpi4-linux-gnu
$ ct-ng build
${HOME}/x-tools/aarch64-rpi4-linux-gnu
에 생성된다.${HOME}/x-tools/aarch64-rpi4-linux-gnu/bin
에 있다.$ export PATH=${HOME}/x-tools/aarch64-rpi4-linux
https://hechao.li/2021/12/20/Boot-Raspberry-Pi-4-Using-uboot-and-Initramfs/