1.虚拟机安装tftp server。
##########################
TFTP Server Install and Setup
Install following packages.
sudo apt-get install xinetd tftpd tftp
Create /etc/xinetd.d/tftp and put this entry
service tftp
{
protocol = udp
port = 69
socket_type = dgram
wait = yes
user = nobody
server = /usr/sbin/in.tftpd
server_args = /tftpboot
disable = no
}
Create a folder /tftpboot this should match whatever you gave in server_args. mostly it will be tftpboot
sudo mkdir /tftpboot
sudo chmod -R 777 /tftpboot
sudo chown -R nobody /tftpboot
Restart the xinetd service.
newer systems:
sudo service xinetd restart
older systems:
sudo /etc/init.d/xinetd restart
Now our tftp server is up and running.
Testing our tftp server
Create a file named test with some content in /tftpboot path of the tftp server
Obtain the ip address of the tftp server using ifconfig command
Now in some other system follow the following steps.
tftp 192.168.1.2
tftp> get test
Sent 159 bytes in 0.0 seconds
tftp> quit
cat test
##########################
1-2. 安装服务器NAS
nfs服务是实现Linux和Linux之间的文件共享,nfs服务的搭建比较简单。
现在介绍如何在ubuntu16.04系统中搭建nfs服务,ubuntu的搭建比红帽的还要简单。
1、安装nfs服务
sudo apt install nfs-kernel-server
sudo apt install nfs-common
2、修改配置文件
sudo vim /etc/exports
修改内容如下:
/home *(rw,sync,no_root_squash)
#or /home/andrew/w
各段表达的意思如下,根据实际进行修改
/home :共享的目录 * :指定哪些用户可以访问 * 所有可以ping同该主机的用户 10.67.*.* 指定网段,在该网段中的用户可以挂载 10.67.112.183 只有该用户能挂载
(ro,sync,no_root_squash): 权限
ro : 只读
rw : 读写
sync : 同步
no_root_squash: 不降低root用户的权限 其他选项man 5 exports 查看
3、重启nfs服务
sudo /etc/init.d/nfs-kernel-server restart
到此,nfs的服务就搭建好了。
下面介绍客户端如何访问服务器
1、检查客户端和服务端的网络是否连通(ping命令)
ping + 主机IP
2、查看服务端的共享目录
showmount -e + 主机IP
showmount -e 10.67.112.183
Export list for 10.67.112.183:
/home *
3、将该目录挂载到本地
mount 10.67.112.183:/home /mnt
4、访问
访问本地的mnt目录,就可访问服务端共享的目录了。
##########################
2.参考'Hi3519AV100 SDK 安装及升级使用说明.pdf'-> 2.1.2 操作步骤 -> 步骤 1. 配置tftp服务器
将相关文件放到'/tftpboot'文件夹下面
3.设置 虚拟机使用的桥接模式,共用电脑上网。配置虚拟机为固定ip(比如192.168.0.100),与电脑保持同一网段。
现在假定电脑ip为 192.168.0.200
4.参考'Hi3519AV100 SDK 安装及升级使用说明.pdf'-> 2.1.2 操作步骤 -> 步骤 2. 参数配置
#serveripserverip (即 tftp 服务器的 服务器的 ip )、 ipaddripaddr ipaddr (单板 ip )和 ethaddrethaddr ethaddr(单板的 MAC 地址)
setenv serverip 192.168.0.100
setenv ipaddr 192.168.0.101
setenv ethaddr 10:11:12:13:14:15
setenv netmask 255.255.255.0
setenv gatewayip 192.168.0.1
ping 192.168.0.100
5. 步骤 3
#2. 烧写 u-boot
mw.b 42000000 ff 80000
tftp 0x42000000 u-boot-hi3519av100.bin
nand erase 0 80000;nand write 42000000 0 80000
#3. 烧写内核
mw.b 42000000 ff 400000
tftp 42000000 uImage_hi3519av100_smp
nand erase 100000 400000;nand write 42000000 100000 400000
#4.烧写文件系统
mw.b 42000000 ff 2000000
tftp 42000000 rootfs_hi3519av100_2k_4bit.yaffs2
#(0x9cf9c0 为实际文件大小,文件加载完成后会在串口终端显示出来)
nand erase 500000 2000000;nand write.yaffs 42000000 500000 0x9cf9c0
#5. 设置启动参数(注意 linux-4.9.y kernel 默认文件系统只读,需要在 bootargs 中加入 rw 选项,文件系统才可读写)
setenv bootargs 'mem=256M console=ttyAMA0,115200 clk_ignore_unused
root=/dev/mtdblock2 rw rootfstype=yaffs2
mtdparts=hinand:1M(boot),4M(kernel),32M(rootfs)'
setenv bootcmd 'nand read 0x42000000 100000 400000; bootm 0x42000000'
saveenv
#6.重启系统
reset
##########################
#4.1 开启Linux下的网络
#步骤 1. 设置网络
ifconfig eth0 hw ether 10:11:12:13:14:15;
ifconfig eth0 192.168.0.101 netmask 255.255.255.0;
route add default gw 192.168.0.1
ping 192.168.0.100
ping 192.168.0.200
#步骤 2. 挂载NFS文件系统的操作命令:
mount -t nfs -o nolock -o tcp -o rsize=32768,wsize=32768 192.168.0.100:/home/andrew/w /mnt
#4.3开启telnet服务
telnetd&
#4.4 运行MPP业务
#步骤 1. 在串口上,进入mpp/ko目录,加载驱动, 例:
cd /mnt/Hi3519AV100_SDK_V2.0.1.0/smp/a53_linux/mpp/ko
./load3519av100 -i -sensor0 imx334 imx334
#步骤 2. 进入各sample目录下执行相应样例程序(sample需要先在服务器上成功编译过)
cd ../sample/svp/nnie/
./sample_nnie_main 7