您的位置 首页 被动

移植SSH到ARM Linux开发板成功

在移植到友善2440的时候很容易,因为他432交叉编译器等库文件做等好。但是在移植到天漠devkit8000时,遇到非常多的问题。一个月之前遇到

在移植到友善2440的时分很简单,由于他4.3.2穿插编译器等库文件做等好。但是在移植到天漠devkit8000时,遇到十分多的问题。一个月之前遇到问题没有找到-lgcc_s的问题一向没有处理,致使后来十分影响开发进度。最近决计处理这个问题,在google上查到没有找到lxx其实时没有找到libxxx.so,然后与友善2440比较了下,发现果真是arm-none-linux-gnueabi/libc/lib下短少libgcc_s.so。最终一步问题总结是我编译的时分遇到等一切问题,后逐个化解,成功移植。所以,假如你在编译等时分犯错,检查最终的问题总结,应该能够找到答案。

进程:

1.下载源码包,地址如下:

openssh http://www.openssh.com/portable.html
openssl http://www.openssl.org/source
zlibhttp://www.zlib.net/

2.穿插编译

创立作业目录:

#mkdir /work
#cd /work

在/work目下面创立ssh目录

# mkdir /work/lib —–〉同享库目录,经过nfs挂载
# mkdir /work/ssh —–〉作业目录
# cd/work/ssh
# mkdir compressed install source—–〉compressed 用于寄存源码包
—–〉Install软件装置目录
—–〉Source源码包解压目录
#mv tarpakgs/openssh-4.6p1.tar.gz /work/ssh/compressed
#mv tarpakgs/openssl-0.9.8e.tar.gz/work/ssh/compressed
#mv tarpakgs/zlib-1.2.3.tar.gz /work/ssh/compressed

解压装置包:

# cd /work/ssh/compressed/
# tar zxvf zlib-1.2.3.tar.gz-C../source
# tar zxvf openssl-0.9.8e.tar.gz-C../source
# tar zxvf openssh-4.6p1.tar.gz–C ../source

穿插编译 zlib:
# cd/work/ssh/source/zlib-1.2.3
# ./configure –prefix=/work/ssh/install/zlib-1.2.3
# vim Makefile
CC=arm-none-linux-gnueabi-gcc
AR=arm-none-linux-gnueabi-ar rc
CPP =arm-none-linux-gnueabi-gcc -E
LDSHARED=arm-none-linux-gnueabi-gcc

# make
# make install

穿插编译openssl
# cd/work/ssh/source/openssl-0.9.8e
# ./Configure –prefix=/work/ssh/install/openssl-0.9.8eos/compiler:arm-none-linux-gnueabi-gcc

# make
# make install

穿插编译openssh
# cd/work/ssh/source/ openssh-4.6p1
#./configure –host=arm-none-linux-gnueabi–with-libs –with-zlib=/work/ssh/install/zlib-1.2.3 –with-ssl-dir=/work/ssh/install/openssl-0.9.8e –disable-etc-default-login CC=arm-none-linux-gnueabi-gcc AR=arm-none-linux-gnueabi-ar
#make
留意:openssh不需求make install

3.操作方针板

3.1保证方针板上有以下目录,若没有,则新建:

/usr/local/bin/

/usr/local/sbin/
/usr/local/etc/
/usr/local/libexec/
/var/run/
/var/empty/

3.2从PC机上将以下文件拷贝到方针板Linux体系中

PC机 /work/ssh/source/openssh-4.6p1/ 目录下的

scpsftpsshssh-addssh-agentssh-keygenssh-keyscan拷贝到方针板/usr/local/bin

moduli ssh_config sshd_config拷贝到方针板 /usr/local/etc

sftp-serverssh-keysign拷贝到方针板 /usr/local/libexec

sshd拷贝到方针板 /usr/local/sbin/

3.3生成Key文件
在PC机 /work/ssh/source/openssh-4.6p1/ 目录下运转:
ssh-keygen -t rsa -f ssh_host_rsa_key -N “”
ssh-keygen -t dsa -f ssh_host_dsa_key -N “”
ssh-keygen -t ecdsa -f ssh_host_ecdsa_key -N “”

将生成的 ssh_host_*_key这3个文件copy到方针板的 /usr/local/etc/目录下

3.4修正方针板passwd文件。
在/etc/passwd 中增加下面这一行
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin

4.测验

在方针板上运转:
#/usr/local/sbin/sshd
能够用ps指令检查sshd是否在作业
假如运转的进程中有提示短少动态衔接库,能够在主机上查找相应文件,拷贝到方针板/lib/目录下面,留意创立软衔接!
OK!不出意外的话能够成功,

主机上:

#ssh root@192.168.0.34(开发板的ip)

然后输入开发板的root暗码就就能够了。

//root暗码便是你开发板上root的暗码,假如之前root没有暗码,需求从头设置,用passwd root,然后输入暗码即可。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/ziliao/beidong/258370.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部