哈尔滨理工大学软件工程专业08-7李万鹏原创作品,转载请标明出处
http://blog.csdn.net/woshixingaaa/archive/2011/02/19/6194651.aspx
刚才完成了lcd文档的编写,把剩下的两篇也一起完成了。第一篇文章搭建的tftp在linux下测试好使,但是在与arm通信的时候一点反应都没有。所以这里给出另一个方法,重新搭建tftp开发环境和nfs。nfs可以作为你的文件系统使用,或者你用别的文件系统,可以在需要传输文件的时候挂载linux的nfs,进行文件传输。
搭建tftp步骤如下:
1、安装tftp的server和client,还有xinetd
sudo apt-get install xinetd tftpd-hpa tftp-hpa
2、xinetd会建立目录/etc/xinetd.d/,在这个目录下建立新文件 tftpd
sudo touch tftpd
3、编辑 sudo gedit /etc/xinetd.d/tftpd,加入以下内容
service tftp
{
disable = no
socket_type = dgram
wait = no
user = root
protocol = udp
server = /usr/sbin/in.tftpd
server_args = -s /home/hacker/tftpboot
log_on_success = PID HOST DURATION
log_on_failure = HOST
}
注意:/home/hacker/tftpboot 是你的tftp的根目录,其它的不用修改
4、建立tftp根目录
sudo mkdir /home/hacker/tftpboot
修改权限
sudo chmod 777 /home/hacker/tftpboot
5、修改/etc/inetd.conf文件
sudo gedit /etc/inetd.conf
修改下面这行
tftp dgram udp wait root /usr/sbin/in.tftpd /usr/sbin/in.tftpd -s /var/lib/tftpboot
为
tftp dgram udp wait root /usr/sbin/in.tftpd /usr/sbin/in.tftpd -s /home/hacker/tftpboot
6、修改/etc/default/tftpd-hpa
sudo gedit /etc/default/tftpd-hpa
内容修改如下
#Defaults for tftpd-hpa
RUN_DAEMON="yes"
OPTIONS="-l -s /home/hacker/tftpboot"
7、重启服务
sudo /etc/init.d/xinetd restart
sudo /etc/init.d/tftpd-hpa restart
8、不要忘记修改/home/hacker/tftpboot 下文件的权限
chmod 777 *
这样tftp就搭建完成了,记得关闭linux防火墙啊。
Ubuntu 关闭防火墙方法
sudo ufw disable
然后搭建nfs
1.sudo vim /etc/exports
在其文本后添加
/rootfs 192.168.1.*(rw,sync,no_root_squash)
然后保存退出。
/home/work就表示共享目录,当然,你可以随便换成自己喜欢的目录,192.168.1.*,前面三位是你主机的ip地址(怎么获得本机的ip地址?ifconfig命令就可以了)
rw:读/写权限,只读权限的参数为ro;
sync:数据同步写入内存和硬盘,也可以使用async,此时数据会先暂存于内存中,而不立即写入硬盘。 no_root_squash:NFS 服务器共享目录用户的属性,如果用户是 root,那么对于这个共享目录来说就具有 root 的权限。
上面设置了只要在192.168.1.*这个网段的所有IP地址用户都可以访问共享目录,但我只想让一个IP地址访问,比如192.168.1.101(把刚才192.168.1.*直接换成192.168.1.101不行么?应该可以吧,没试过),那么就可以这样设置了。
可以通过设定/etc/hosts.deny和/etc/hosts.allow文件来限制网络服务的存取权限。
***/etc/hosts.deny***
portmap:ALL
lockd:ALL
mountd:ALL
rquotad:ALL
statd:ALL
***/etc/hosts.allow***
portmap:192.168.1.101
lockd:192.168.1.101
mountd:192.168.1.101
rquotad:192.168.1.101
statd:192.168.1.101
同时使用这两个文件就会使得只有ip为192.168.1.101的机器使用NFS服务。你的target board的ip地址设定为192.168.1.101,这样就可以了。
启动端口映射:
#sudo /etc/init.d/portmap start
启动NFS 服务:
sudo /etc/init.d/nfs-kernel-server start
最后执行:#sudo mount –t nfs 192.168.1.101:/rootfs /mnt
执行:# ls /mnt,mnt下就有了/rootfs里的内容了。
先现在到sdram中,再烧到nand。
分享到:
相关推荐
可用于交叉编译ARM系统中所有环节的代码,包括裸机程序、u-boot、Linux kernel、filesystem和App应用程序。arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2.7z交叉编译器必须安装在32为主机上,...
由于上传文件大小限制,将工具链分为2个压缩文件,arm-linux-gcc-4.3.2-1.tgz和arm-linux-gcc-4.3.2-2.tgz 请务必下载完整,分别进行安装。 安装方法: 1.ubuntu 终端输入 tar -zxvf arm-linux-gcc-4.3.2-1.tgz -C ...
交叉编译工具:gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.bz2 解压命令:tar jxvf gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.bz2
arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 ./arm-none-linux-gnueabi-gcc -v Using built-in specs. COLLECT_GCC=./arm-none-linux-gnueabi-gcc Target: arm-none-linux-gnueabi Configured...
交叉编译工具:gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.bz2 解压命令:tar jxvf gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.bz2
ARM Linux交叉编译工具链,arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
arm-none-linux-gnueabi-gcc.exe -v Using built-in specs. COLLECT_GCC=arm-none-linux-gnueabi-gcc.exe COLLECT_LTO_WRAPPER=d:/eclipse/cross/arm-2014.05-29/bin/../libexec/gcc/arm-none-linux-gnueabi/4.8.3/...
可用于交叉编译32-bit Armv7 Cortex-A, hard-float, little-endian目标中的裸机程序、u-boot、Linux kernel、filesystem和App应用程序。gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf交叉编译器必须安装在64...
可用于交叉编译32-bit Armv7 Cortex-A, hard-float, little-endian目标中的裸机程序、u-boot、Linux kernel、filesystem和App应用程序。gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf.tar.tar交叉编译器必须...
交叉编译 arm-linux-gcc-4.4.3.tar.gz
第二步:查看当前系统是否支持arm-linux-gcc 如果不存在 则继续如下步骤: 第三步:在/usr/local创建一个文件夹为arm mkdir /usr/local/arm 第四步:将arm-linux-gcc-4.3.2.bz2解压到/usr/local/arm目录下 sudo tar ...
arm-linux-gcc-3.4.5-glibc-2.3.6-linux.tar.bz2交叉编译器
可用于交叉编译32-bit Armv7 Cortex-A, hard-float, little-endian目标中的裸机程序、u-boot、Linux kernel、filesystem和App应用程序。gcc-linaro-6.3.1-2017.05-x86_64_arm-linux-gnueabihf.tar.xz交叉编译器必须...
7z文件包需要解压哦:jdk-8u401-linux-x64.tar.gz
arm linux gcc 交叉编译器 gcc-linaro-arm-linux-gnueabihf-4.7-2013.03-20130313_linux.tar.bz2.tar
u-boot.bin_tekkaman_2009.11.bz2 参考网站:Tekkaman Ninja github.com/tekkamanninja 直接可用于mini2440开发板 当然在这之前首先必须保证你的开发板上已经有了U-boot。如果没有,就请先烧入一个 已经编译好...
主要用于基于ARM架构的Linux系统,可用于编译 ARM 架构的 u-boot、Linux内核、linux应用等。
arm架构下jdk-8u391-linux-aarch64.tar下安装部署java1.8
Ubuntu安装arm-linux-gcc交叉编译工具 arm-linux-gcc工具包arm-linux-gcc-5.4.0.tar.gz
当前,U-Boot项目正在他的领军之下,众多有志于开放源码BOOT LOADER移植工作的嵌入式开发人员正如火如荼地将各个不同系列嵌入式处理器的移植工作不断展开和深入,以支持更多的嵌入式操作系统的装载与引导。