PetaLinux 自动登陆
(1) cd 到项目工程目录下;
(2) 运行命令:petalinux-config -c rootfs
(3) 依次选择 Image Features -> serial-autologin-root
保存退出
创建APP
petalinux-create apps --template install --name init-app --enable
编辑文件 /project-spec/meta-user/recipes-apps/myapp-init/init-app.bb
原本的
#
# This file is the init-app recipe.
#
SUMMARY = "Simple init-app application"
SECTION = "PETALINUX/apps"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
SRC_URI = "file://init-app \
"
S = "${WORKDIR}"
do_install() {
install -d ${D}/${bindir}
install -m 0755 ${S}/init-app ${D}/${bindir}
}
修改后
#this file is the init_app recipe.
#
SUMMARY = "Simple init_app application"
SECTION = "PETALINUX/apps"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
SRC_URI = "file://init_app \
"
S = "${WORKDIR}"
FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
inherit update-rc.d
INITSCRIPT_NAME = "init_app"
INITSCRIPT_PARAMS = "start 99 5 ."
do_install() {
install -d ${D}${sysconfdir}/init.d
install -m 0755 ${S}/init_app ${D}${sysconfdir}/init.d/init_app
}
FILES_${PN} += "${sysconfdir}/*"
# 1为单用户模式
# 2-4是文本模式,一般不用图形界面的话用3就行了,3是多用户字符界面模式
# 5是多用户图形模式
# 0关机
# 6重启
# S就是全都有
# 写 “99 5” 的原因是,在第五程序启动层级的第99个程序启动
# 因为我们的网络是第5层启动的
# 写S的话,网络应用无法正常启动
编辑/project-spec/meta-user/recipes-apps/init_app/files/init_app
原本的
#!/bin/sh
echo "Hello PetaLinux World"
修改后
#!/bin/sh
echo "Starting init-app"
echo "init-app"
编译
petalinux-build
写入SD卡
不挂载
格式化
写入
同步
sudo umount /dev/sdb2
sudo mkfs.ext4 -L rootfs /dev/sdb2
sudo dd if=rootfs.ext4 of=/dev/sdb2
sync