2017-02-17 161 views
0

我是Yocto的新手,大約半年前我學習了yocto。下面的情況是:如何編輯Yocto項目的源代碼passwd.c並重建它

  • Yocto目標機器:英特爾corei7-64
  • 插槽服務器和客戶端與兔加密口令傳達。
  • 套接字客戶端可以更改密碼。
  • 用戶可以使用ssh登錄到corei7 Yocto嵌入式機器。
  • 用戶可以使用passwd更改密碼。

谷歌搜索後,我想也許我需要更改源代碼passwd.c並讀取輸入的密碼用戶並將密碼保存到某處並使用該算法讀取/寫入/加密/解密爲Socket服務器使用。

$ find . -name passwd.c 
./build/tmp/work/corei7-64-poky-linux/shadow/4.2.1-r0/license-destdir/shadow/passwd.c 
./build/tmp/work/corei7-64-poky-linux/shadow/4.2.1-r0/packages-split/shadow-dbg/usr/src/debug/shadow/4.2.1-r0/shadow-4.2.1/src/passwd.c 
./build/tmp/work/corei7-64-poky-linux/shadow/4.2.1-r0/shadow-4.2.1/src/passwd.c 
./build/tmp/work/corei7-64-poky-linux/shadow/4.2.1-r0/package/usr/src/debug/shadow/4.2.1-r0/shadow-4.2.1/src/passwd.c 
./build/tmp/work/corei7-64-poky-linux/busybox/1.24.1-r0/packages-split/busybox-dbg/usr/src/debug/busybox/1.24.1-r0/busybox-1.24.1/loginutils/passwd.c 
./build/tmp/work/corei7-64-poky-linux/busybox/1.24.1-r0/busybox-1.24.1/loginutils/passwd.c 
./build/tmp/work/corei7-64-poky-linux/busybox/1.24.1-r0/package/usr/src/debug/busybox/1.24.1-r0/busybox-1.24.1/loginutils/passwd.c 
./build/tmp/work/corei7-64-poky-linux/openssl/1.0.2h-r0/packages-split/openssl-dbg/usr/src/debug/openssl/1.0.2h-r0/openssl-1.0.2h/apps/passwd.c 
./build/tmp/work/corei7-64-poky-linux/openssl/1.0.2h-r0/openssl-1.0.2h/apps/passwd.c 
./build/tmp/work/corei7-64-poky-linux/openssl/1.0.2h-r0/package/usr/src/debug/openssl/1.0.2h-r0/openssl-1.0.2h/apps/passwd.c 
./build/tmp/deploy/licenses/shadow/passwd.c 
./build/tmp/deploy/licenses/shadow-native/passwd.c 

因爲我不知道的構建將使用哪一個,我添加了一些標籤在每個passwd.c,並通過以下命令重建圖像。

$ bitbake -f -c compile busybox 
$ bitbake -f -c compile linux-yocto 
$ bitbake -f -c deploy linux-yocto 
$ bitbake core-image-minimal 

但登錄到新版本後,我找不到任何更改?我想念什麼?

回答

1

請檢查是否安裝了包裝陰影。如果是,則從包陰影中使用命令passwd。否則使用busybox中的一個。你可以爲這個軟件包(shadow或busybox)做do_patch。然後進行一些修改。在修改並驗證修改後,將修補程序添加到SRC_URI。

對於陰影,源文件是 ./build/tmp/work/corei7-64-poky-linux/shadow/4.2.1-r0/shadow-4.2.1/

相關問題