《海思移植rsync和openssh-server》


1.移植rsync

  因為要使用rsync把板卡已經配置好環境的文件系統備份出來。但是使用apt-get不能下載rsync,因此就自己下載rsync的軟件包。

  下載地址:https://download.samba.org/pub/rsync/src/

tar -zxvf   rsync-3.1.3.tar.gz
cd rysnc-3.1.3
./configure --host=arm-hisiv400-linux --prefix=/usr/local/rsync
make && make install

  然后會在/usr/local/rsync中生成一個rsync的可執行程序。

  將這個rsync可執行程序放在開發板上就行了。

 

2.移植openssh-server

http://blog.sina.com.cn/s/blog_5587f9270101cy90.html

https://blog.csdn.net/david_xtd/article/details/11734225

  移植openssh-server需要分別移植openssh、openssl、zlib

2.1下載地址

openssh http://www.openssh.com/portable.html

openssl http://www.openssl.org/source

zlib    http://www.zlib.net/ 

  

2.2 編譯安裝zlib

#進入到zlib的目錄
#./configure  --prefix=/home/3520/software/openssh-server/package

修改Makefile
CC=arm-hisiv400-linux-gcc
AR=arm-hisiv400-linux-ar
CPP =arm-hisiv400-linux-gcc -E
LDSHARED=arm-hisiv400-linux-gcc

make
make install

  

2.3 編譯安裝openssl

  首先看一下openssl中的INSTALL,里面有詳細的安裝步驟,別看着網上的內容就一頓操作猛如虎,然后發現不太對。因為我就是這樣的,要學會看INSTALL和README。

#./config no-asm --prefix=/home/3520/software/openssh-server/package --cross-compile-prefix=arm-hisiv400-linux-
no-asm 在交叉編譯過程中不使用匯編代碼代碼加速編譯過程。
no-shared  生成靜態鏈接庫。
--prefix 指定生成lib include bin目錄的路徑,不修改此項則默認為OPENSSLDIR目錄。
-cross-compile-prefix指定編譯器
#make
#make install

  報錯:

  如果編譯報錯,並提示"m64"字樣報錯信息,多半是交叉編譯器不支持m64選項。解決辦法:
  修改Makefile ,若有-m32或-m64 字段,直接刪除即可

 

2.4 編譯安裝openssh

  先開一下INSTALL文檔。

#./configure --host=arm-hisiv400-linux --with-libs --with-zlib=/home/3520/software/openssh-server/package 
  --with-ssl-dir=/home/3520/software/openssh=server/package --disable-etc-default-login CC=arm-hisiv400-linux-gcc AR=arm-hisiv400-linux-ar
#make

  這里不需要安裝,因為我們是需要部署到開發板上面。

  運行到這一步,就可以在openssh文件夾中找到移植需要的“scp ,sftp ,ssh,sshd,ssh-add,ssh-agent,ssh-keygen,ssh-keyscan”文件。

  生成key文件:

進入openssh目錄:cd openssh-5.6p1
生成ssh_host_rsa_key文件:ssh-keygen -t rsa -f ssh_host_rsa_key -N “”
生成ssh_host_dsa_key文件:ssh-keygen -t dsa -f ssh_host_dsa_key -N “”
生成ssh_host_ecdsa_key文件:ssh-keygen -t ecdsa -f ssh_host_ecdsa_key -N “”
生成ssh_host_ed25519_key文件:ssh-keygen -t dsa -f ssh_host_ed25519_key -N “”

  

3.在板卡上部署

  在開發板上新建“/usr/libexec“,“/usr/local/etc ”,“/usr/local/bin ”三個目錄:mkdir -p /usr/libexec /usr/local/etc /usr/local/bin

  將openssh生成的“scp ,sftp ,ssh,sshd,ssh-add,ssh-agent,ssh-keygen,ssh-keyscan”文件拷貝到開發板中的 /usr/local/bin中

  將openssh目錄下的“ssh_host_rsa_key,ssh_host_dsa_key,ssh_host_ecdsa_key,ssh_host_ed25519_key,moduli,ssh_config,sshd_config”拷貝到開發板的“/usr/local/etc”目錄

  將“ssh_host_rsa_key,ssh_host_dsa_key,ssh_host_ecdsa_key,ssh_host_ed25519_key”權限改為600(不改權限后面運行不了)

  將“sftp-server、ssh-keysign”拷貝到開發的“/usr/libexec”目錄

https://blog.csdn.net/yangxuan12580/article/details/95207961?utm_medium=distribute.pc_relevant.none-task-blog-baidujs-1

  因為板卡Flash的空間不足,因此不能進行移植。靠 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM