【问题标题】:How to add a script (bash script) to my linux image developed in yocto?如何将脚本(bash 脚本)添加到我用 yocto 开发的 linux 映像中?
【发布时间】:2022-10-20 11:10:33
【问题描述】:

我正在开发一个脚本来在使用 yocto 开发的 linux 映像中安装软件包。目前,我通过 scp 将 .sh 脚本与 linux 映像一起发送到我的设备,但我想将此脚本直接安装在 linux 映像中,以及设备何时启动时具有 .sh 文件。我怎样才能在 yocto 中做到这一点?我需要为此脚本创建一个配方吗?

【问题讨论】:

    标签: embedded embedded-linux yocto


    【解决方案1】:

    如果需要,您应该创建一个配方和一个 systemd 服务以启用它的启动时间。 架构应该是这样的:

    my_script/
    ├── files
    │   ├── my_script.service
    │   └── my_script.sh
    └── my_recipe.bb
    

    你的食谱应该是这样的,

    我的食谱.bb:

    LICENSE = "CLOSED"
    
    LIC_FILES_CHKSUM = ""
    
    SRC_URI = "file://myscript.service"
    
    SRC_URI += "file://myscript.sh"
    
      
    inherit systemd
    
    do_install() {
    
    install -Dm0755 ${WORKDIR}/my_script.sh ${D}/usr/bin/my_script.sh
    install -Dm0644 ${WORKDIR}/my_script.service ${D}${systemd_system_unitdir}/my_script.service
    
    }
    
    
    SYSTEMD_SERVICE_${PN} = "my_script.service"
    

    当然,这应该在您的 conf/bblayers.conf 中已经存在的元层中 否则创建它并手动添加它。

    【讨论】:

      【解决方案2】:

      @amolina 我猜您需要将 shell 脚本添加到 /etc/init.d 以便在操作系统启动时运行它。

      您可以继承 update-rc.d 类并在中定义 INITSCRIPT_NAME/PARAMS 你的食谱。

      更多细节可以在这个链接中找到yocto manual

      参考:add custom script to yocto

      【讨论】:

        猜你喜欢
        • 2022-01-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-05-13
        • 2013-02-05
        • 2013-12-02
        • 2021-08-05
        • 1970-01-01
        相关资源
        最近更新 更多