Mise-à-jour de ce mémo ici : https://miniordi.hacktech.dev/changement-de-logo-de-demarrage-du-noyau-v2/ Distribution : Ubuntu 12.04 LTS 1) Répertoire de travail :
[~] ➔ mkdir FRAMBOISEPI
[~] ➔ cd FRAMBOISEPI/
2) Télécharger l'image du Raspberry Pi :
[~/FRAMBOISEPI] ➔ mkdir RASPBIAN
[~/FRAMBOISEPI] ➔ cd RASPBIAN/
[~/FRAMBOISEPI/RASPBIAN] ➔ wget https://miniordi.hacktech.dev/images/2013-09-25-wheezy-raspbian.zip
[~/FRAMBOISEPI/RASPBIAN] ➔ unzip 2013-09-25-wheezy-raspbian.zip
[~/FRAMBOISEPI/RASPBIAN] ➔ sudo fdisk -l 2013-09-25-wheezy-raspbian.img
Disque 2013-09-25-wheezy-raspbian.img : 2962 Mo, 2962227200 octets
255 têtes, 63 secteurs/piste, 360 cylindres, total 5785600 secteurs
Unités = secteurs de 1 * 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets
Identifiant de disque : 0x0002c262
Périphérique Amorce Début Fin Blocs Id Système
2013-09-25-wheezy-raspbian.img1 8192 122879 57344 c W95 FAT32 (LBA)
2013-09-25-wheezy-raspbian.img2 122880 5785599 2831360 83 Linux
[~/FRAMBOISEPI/RASPBIAN] ➔ mkdir img1 img2
[~/FRAMBOISEPI/RASPBIAN] ➔ sudo mount 2013-09-25-wheezy-raspbian.img -o loop,offset=$(( 512 * 8192)) img1/
[~/FRAMBOISEPI/RASPBIAN] ➔ sudo mount 2013-09-25-wheezy-raspbian.img -o loop,offset=$(( 512 * 122880)) img2/
[~/FRAMBOISEPI/RASPBIAN] ➔ ls img1/
bootcode.bin config.txt fixup.dat issue.txt kernel.img start_cd.elf start_x.elf
cmdline.txt fixup_cd.dat fixup_x.dat kernel_emergency.img LICENSE.oracle start.elf
[~/FRAMBOISEPI/RASPBIAN] ➔ ls img2/
bin boot dev etc home lib lost+found media mnt opt proc root run sbin selinux srv sys tmp usr var
[~/FRAMBOISEPI/RASPBIAN] ➔ cd ..
3) Téléchargement des outils :
[~/FRAMBOISEPI] ➔ git clone https://github.com/raspberrypi/tools.git
Cloning into 'tools'...
remote: Reusing existing pack: 11148, done.
remote: Total 11148 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (11148/11148), 220.67 MiB | 576 KiB/s, done.
Resolving deltas: 100% (6270/6270), done.
4) Téléchargement du noyau Linux :
[~/FRAMBOISEPI] ➔ git clone https://github.com/raspberrypi/linux.git
Cloning into 'linux'...
remote: Counting objects: 3291611, done.
remote: Compressing objects: 100% (548589/548589), done.
remote: Total 3291611 (delta 2714694), reused 3291000 (delta 2714087)
Receiving objects: 100% (3291611/3291611), 892.16 MiB | 852 KiB/s, done.
Resolving deltas: 100% (2714694/2714694), done.
5) Conversion du logo : Installation du logiciel de conversion :
[~/FRAMBOISEPI] ➔ sudo apt-get install netpbm
6) Télécharger un logo : http://tux.crystalxp.net/fr.id.1587-tux-gign.html 7) Redimensionnent :
[~/FRAMBOISEPI] ➔ convert pit-tux-tux-gign.png -resize 80x80 logo.jpg
8) Conversion en ppm :
[~/FRAMBOISEPI] ➔ jpegtopnm logo.jpg > logo.ppm
jpegtopnm: WRITING PPM FILE
9) Conversion en logo :
[~/FRAMBOISEPI] ➔ cd linux/drivers/video/logo/
[~/FRAMBOISEPI/linux/drivers/video/logo (rpi-3.10.y)] ➔ ppmquant 224 ../../../../logo.ppm > logo_224.tmp
ppmquant: making histogram...
ppmquant: 2206 colors found
ppmquant: choosing 224 colors...
ppmquant: mapping image to new colors...
[~/FRAMBOISEPI/linux/drivers/video/logo (rpi-3.10.y)⚡] ➔ pnmnoraw logo_224.tmp > logo_linux_clut224.ppm
[~/FRAMBOISEPI/linux/drivers/video/logo (rpi-3.10.y)⚡] ➔ cd ../../../..
10) Installation du compilateur de compilation-croisé :
[~/FRAMBOISEPI] ➔ sudo apt-get install gcc-4.6-arm-linux-gnueabi
[~/FRAMBOISEPI] ➔ sudo ln -s /usr/bin/arm-linux-gnueabi-gcc-4.6 /usr/bin/arm-linux-gnueabi-gcc
11) Compilation de l'outil de configuration du noyau :
[~/FRAMBOISEPI] ➔ cd linux/
[~/FRAMBOISEPI/linux (rpi-3.10.y)⚡] ➔ make ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabi- bcmrpi_cutdown_defconfig
[~/FRAMBOISEPI/linux (rpi-3.10.y)⚡] ➔ make ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabi- menuconfig
12) Configuration du noyau :
[~/FRAMBOISEPI/linux (rpi-3.10.y)⚡] ➔ make ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabi- -k -j5
14) Creation de l'image du noyau :
[~/FRAMBOISEPI/tools/mkimage (master)] ➔ ls -l ../../linux/arch/arm/boot/Image
-rwxrwxr-x 1 util01 util01 4291936 janv. 13 21:41 ../../linux/arch/arm/boot/Image
[~/FRAMBOISEPI/tools/mkimage (master)] ➔ ./imagetool-uncompressed.py ../../linux/arch/arm/boot/Image
15) Copier l'image :
[~/FRAMBOISEPI/tools/mkimage (master)⚡] ➔ sudo rm ../../RASPBIAN/img1/kernel.img
[~/FRAMBOISEPI/tools/mkimage (master)⚡] ➔ sudo cp kernel.img ../../RASPBIAN/img1/
16) Démonter les 2 répertoires de montage :
[~/FRAMBOISEPI/tools/mkimage (master)⚡] ➔ cd ../../RASPBIAN/
[~/FRAMBOISEPI/RASPBIAN] ➔ sudo umount img1/
[~/FRAMBOISEPI/RASPBIAN] ➔ sudo umount img2/
~/FRAMBOISEPI/RASPBIAN] ➔ ls -l img1
total 0
[~/FRAMBOISEPI/RASPBIAN] ➔ ls -l img2
total 0
[~/FRAMBOISEPI/RASPBIAN] ➔ cd ..
[~/FRAMBOISEPI/RASPBIAN] ➔ ls -l 2013-09-25-wheezy-raspbian.img
-rw-r--r-- 1 util01 util01 2962227200 janv. 13 22:12 2013-09-25-wheezy-raspbian.img
17) Liens : http://www.rasplay.org/?p=6371 http://linuxconfig.org/how-to-mount-rasberry-pi-filesystem-image