嵌入式Linux-网络启动

准备环境

Ubuntu需要安装配置好tftp ,nfs 服务器

TFTP服务器

sudo apt-get install tftp-hpa tftpd-hpa
sudo apt-get install xinetd

TFTP 需要一个文件夹来存放文件,在用户目录下新建一个“linux”目录,以后所有的东西都放到这个“linux”文件夹里面,在linux下创建tftpboot文件夹
注意!我们要给 tftpboot 文件夹权限,否则的话 uboot 不能从tftpboot 文件夹里面下载文件。tftpboot文件夹里的文件也要给上权限

mkdir /home/obito/linux/tftpboot
chmod 777 /home/obito/linux/tftpboot

配置 tftp,安装完成以后新建文件/etc/xinetd.d/tftp,如果没有/etc/xinetd.d 目录的话自行创建,然后在里面输入如下内容:

server tftp
{ 
	socket_type = dgram
	protocol = udp
	wait = yes
	user = root
	server = /usr/sbin/in.tftpd
	server_args = -s /home/obito/linux/tftpboot/ 
	per_source = 11
	cps = 100 2
	flags = IPv4
}

打开/etc/default/tftpd-hpa 文件,将其修改为如下所示内容:

# /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/home/obito/linux/tftpboot"
TFTP_ADDRESS=":69" 
TFTP_OPTIONS="-l -c -s"

重启 tftp 服务器:

sudo service tftpd-hpa restart

NFS服务器

sudo apt-get install nfs-kernel-server rpcbind

等待安装完成,安装完成以后在“linux”文件夹里面新建一个名为“nfs”的文件夹
打开 nfs 配置文件/etc/exports:

sudo vi /etc/exports

打开/etc/exports 以后在后面添加如下所示内容:

/home/obito/linux/nfs *(rw,sync,no_root_squash)

重启 NFS 服务

sudo /etc/init.d/nfs-kernel-server restart

开启SSH服务

sudo apt-get install openssh-server

下载移植uboot

配置Makefile

ARCH = arm
CROSS_COMPILE = arm-linux-gnueabihf-

清理工程

make distclean

生成配置文件.config

make mx6ull_alientek_defconfig

编译

make -j8

通过tftp启动Linux

把uboot下载到SD卡(nand)中,启动,设置物理地址,IP

setenv ethaddr 00:04:9f:04:d2:35
setenv ipaddr 192.168.5.10
saveenv

尝试去 ping Ubuntu,开发板的uboot ping 通Ubuntu后设置服务器IP

setenv serverip 192.168.5.254
saveenv

设置bootcmd

setenv bootcmd 'tftp 80800000 zImage;tftp 83000000 imx6ull-alientek-nand.dtb;bootz 80800000 - 83000000'
saveenv

将Linux镜像zImage下载到80800000,将设备树.dtb下载到83000000, boot

通过nfs挂载根文件系统

设置bootargs

setenv bootargs 'console=ttymxc0,115200 rw root=/dev/nfs nfsroot=192.168.5.254:/home/obito/linux/nfs/rootfs,nfsvers=3 ip=192.168.5.4:192.168.5.254:192.168.5.1:255.255.255.0::eth0:off'
saveenv

正点原子教程中没有 nfsvers=3 这个选项,造成挂载失败

在Linux内核配置中允许网络功能,文件系统允许nfs root
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

©️2020 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页