2017-04-07 61 views
1

我在更新我的Linux發行版的/etc/fstab時,遇到與Yocto一起構建時遇到問題。我對Yocto很新,所以也許我不喜歡我的搖桿。Yocto配方更新/ etc/fstab

我最近的嘗試是添加一個名爲base-files_%.bbappend的食譜。

mount_smackfs() { 
    cat >> ${IMAGE_ROOTFS}/etc/fstab <<EOF 

# Generated from smack-userspace 
smackfs /smack smackfs smackfsdefault=* 0 0 

EOF 
} 

ROOTFS_POSTPROCESS_COMMAND += "mount_smackfs; " 

但是,分發上的輸出/ etc/fstab沒有改變。所以問題是:

  1. 有沒有更好的方法來做到這一點?
  2. 如何判斷我的.bbappend文件是否真正執行?

回答

4

ROOTFS_POSTPROCESS_COMMAND是在圖像處方和不在包食譜。你有兩種可能性。

  • 更新您在base-file_%.bbappend fstab文件:

    do_install_append() { 
        cat >> ${D}${sysconfdir}/fstab <<EOF 
    
    # Generated from smack-userspace 
    smackfs /smack smackfs smackfsdefault=* 0 0 
    
    EOF 
    } 
    
  • 更新在圖像的食譜fstab中:在這種情況下,你只是在圖像的配方添加 你上面寫的(在您的文章) 。

+0

謝謝,這工作得很好。 – slashingweapon

0

創建使用

yocto層創建mylayer

裏面新建一個圖層,創建一個文件夾名爲食譜核心和這個文件夾裏面 創建另一個文件夾,名爲鹼基文件。

此文件夾中創建一個名爲基礎文件_%bbappend,具有以下內容:

FILESEXTRAPATHS_append := "${THISDIR}/${PN}:" 

創建一個名爲基礎文件的文件夾,裏面你應該把一個叫做fstab文件與您的配置。

確保在bblayers.conf中啓用新圖層,它將正常工作,不需要創建任何附加配方或事物。 我有這個問題,並今天使用這種方法解決它。