网络环境TFTPNFS搭建

文章目录

    • 1. TFTP服务搭建
    • 2. NFS 环境搭建

1. TFTP服务搭建

1、Ubuntu上搭建TFTP服务器,需要安装tftp-hpatftpd-hpa,命令如下:

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

2、TFTP也需要一个文件夹来存放文件,在用户目录下新建一个目录,赋予可读可写可执行权限。

mkdir /home/kaka/IMX6ULL/tftp
chmod 777 /home/kaka/IMX6ULL/tftp

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

sudo vi /etc/default/tftpd-hpa
# /etc/default/tftpd-hpa

TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/home/kaka/IMX6ULL/tftp"
TFTP_ADDRESS=":69"
TFTP_OPTIONS="--secure"

TFTP_DIRECTORY就是我们上面创建的tftp文件夹目录,以后我们就将所有需要通过TFTP传输的文件都放到这个文件夹里面,并且要给予这些文件相应的权限。

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

sudo vi /etc/xinetd.d/tftp
{
    socket_type    = dgram
    protocol       = udp
    wait           = yes
    user           = root
    server         = /usr/sbin/in.tftpd
    server_args    = -s /home/kaka/IMX6ULL/tftp	
    disable        = no
    per_source     = 11
    cps            = 100 2
    flags          = IPv4
}

注意 server_args = -s 后面要添加自己的 tftp 工作路径。

5、最后输入如下命令, 重启 tftp 服务器:

sudo service tftpd-hpa restart

6、TFTP 测试

/home/kaka/IMX6ULL/tftp目录下创建一个 test.c 文件

oot@kaka-virtual-machine:/home/kaka/IMX6ULL/tftp# chmod 777 test.c 
root@kaka-virtual-machine:/home/kaka/IMX6ULL/tftp# ls
test.c
root@kaka-virtual-machine:/home/kaka/IMX6ULL/tftp# cat test.c 
1234561234561234561234561234561234561234561234561234561234561234

在开发板文件系统执行以下指令设置开发板 IP,将虚拟机(192.168.1.254) TFTP 工作目录下的 test.c 文件拷贝到开发板中。

root@ATK-IMX6U:~# ifconfig eth0 192.168.1.50
root@ATK-IMX6U:~# ping 192.168.1.254
PING 192.168.1.254 (192.168.1.254) 56(84) bytes of data.
64 bytes from 192.168.1.254: icmp_seq=1 ttl=64 time=0.855 ms
64 bytes from 192.168.1.254: icmp_seq=2 ttl=64 time=1.02 ms
^C
--- 192.168.1.254 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 0.855/0.940/1.025/0.085 ms

root@ATK-IMX6U:~# tftp -g -r test.c 192.168.1.254
root@ATK-IMX6U:~# cat test.c
12345612345612345612345612345612345612345612345612345612

可以看到 test.c 成功传输到开发板上, TFTP 环境搭建成功。

2. NFS 环境搭建

1、NFS 简介网络文件系统,英文 Network File System(NFS),是由 SUN 公司研制的 UNIX 表示层协议(presentation layer protocol),能使使用者访问网络上别处的文件就像在使用自己的计算机一样。可以在 Ubuntu 上制作开发板的根文件系统,然后使用 NFS 来加载根文件系统到开发板的DDR 上

2、安装 NFS 服务
在 Ubuntu 终端执行以下指令安装 NFS

sudo apt-get install nfs-kernel-server  

3、NFS 共享目录
新建 NFS 共享目录,并给予 NFS 目录可读可写可执行权限

sudo mkdir /home/kaka/IMX6ULL/nfs 
sudo chmod 777 /home/kaka/IMX6ULL/nfs/

4、配置 NFS 服务

执行以下指令打开 etc/exports 文件

sudo vi /etc/exports

进入 etc/exports 文件,在最后添加如下内容

/home/kaka/IMX6ULL/nfs *(rw,sync,no_root_squash)

/home/kaka/IMX6ULL/nfs 表示 NFS 共享的目录
*表示允许所有的网络段访问
rw 表示访问者具有可读写权限
sync 表示将缓存写入设备中,可以说是同步缓存的意思
no_root_squash 表示访问者具有 root 权限。
修改完如下图所示。

请添加图片描述

修改完以后保存退出。

执行以下指令重启 NFS 服务器。

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

执行以下指令查看 NFS 共享目录

root@kaka-virtual-machine:/home/kaka/IMX6ULL# showmount -e
Export list for kaka-virtual-machine:
/home/kaka/IMX6ULL/nfs *

5、NFS 测试

/home/alientek/linux/nfs目录下创建一个 mytest.c 文件,在里面写入 hello world!

root@kaka-virtual-machine:/home/kaka/IMX6ULL/nfs# vi mytest.c
root@kaka-virtual-machine:/home/kaka/IMX6ULL/nfs# cat mytest.c 
hello world!

执行以下指令设置开发板 IP,创建一个 get 目录,将虚拟机(192.168.1.254) NFS 共享目录挂载到到开发板的 get 目录中。

mkdir get 
mount -t nfs -o nolock,nfsvers=3 192.168.1.254:/home/kaka/IMX6ULL/nfs get/
root@ATK-IMX6U:~# mkdir get
root@ATK-IMX6U:~# mount -t nfs -o nolock,nfsvers=3 192.168.1.254:/home/kaka/IMX6ULL/nfs get/
root@ATK-IMX6U:~# ls
driver  get  shell  test.c
root@ATK-IMX6U:~# ls get/
mytest.c

看挂载的 NFS 目录:

root@ATK-IMX6U:~# df
Filesystem                           1K-blocks     Used Available Use% Mounted on
/dev/root                              7244864   650328   6219856  10% /
devtmpfs                                187632      120    187512   1% /dev
tmpfs                                       40        0        40   0% /mnt/.psplash
tmpfs                                   253432      196    253236   1% /run
tmpfs                                   253432      160    253272   1% /var/volatile
/dev/mmcblk1p1                        15549952      128  15549824   1% /run/media/mmcblk1p1
192.168.1.254:/home/kaka/IMX6ULL/nfs  50770944 26010624  22149120  55% /home/root/get

卸载 NFS 目录:

umount get  
root@ATK-IMX6U:~# umount /home/root/get
root@ATK-IMX6U:~# ls
driver  get  shell  test.c
root@ATK-IMX6U:~# df
Filesystem     1K-blocks   Used Available Use% Mounted on
/dev/root        7244864 650328   6219856  10% /
devtmpfs          187632    120    187512   1% /dev
tmpfs                 40      0        40   0% /mnt/.psplash
tmpfs             253432    192    253240   1% /run
tmpfs             253432    160    253272   1% /var/volatile
/dev/mmcblk1p1  15549952    128  15549824   1% /run/media/mmcblk1p1

可以看到192.168.1.254:/home/kaka/IMX6ULL/nfs 已经卸载了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/33862.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Django DRF - 【Token】认证基本使用

一. 前言 Django Rest Framework Token是Django Rest Framework中的一个扩展,用于实现用户认证和授权。它为每个用户生成一个唯一的Token,并将其存储在数据库中。在用户进行API请求时,用户需要在请求的HTTP Header中包含Token,这…

考场作弊行为自动抓拍告警算法 yolov7

考场作弊行为自动抓拍告警系统通过yolov7python网络模型算法,考场作弊行为自动抓拍告警算法实时监测考场内所有考生的行为,对考生的行为进行自动抓拍,并分析判断是否存在作弊行为。YOLOv7 的发展方向与当前主流的实时目标检测器不同&#xff…

关于Apache Dubbo反序列化漏洞(CVE-2023-23638)的预警提示与对应的Zookeeper版本

公司在升级dubbo过程中因zookeeper版本不匹配,导致服务注册和调用出现异常 一、漏洞详情 Apache Dubbo是一款高性能、轻量级的开源Java服务框架。 Apache官方发布安全公告,修复了Apache Dubbo中的一个反序列化漏洞(CVE-2023-23638&#xff…

玩转C++调试之Python的GDB库增强

玩转C调试之Python的GDB库增强 0.导语 调试是软件开发过程中不可或缺的一环,而GDB(GNU调试器)作为一款功能强大的调试工具,在开发者中得到广泛应用。除了传统的命令行调试功能外,GDB还提供了Python的GDB库,…

计算机网络——自顶向下方法(第一章学习记录)

什么是Internet? 可以从两个不同的方面来理解Internet。(它的构成。它的服务) 1.因特网的主要构成 处在因特网的边缘部分就是在因特网上的所有主机,这些主机又称为端系统(end system),端系统通过因特网服…

【C2】文件,时间,多线程,动静态库

文章目录 1.文件:fprint/fgets/fwrite/fread,ftell/rewind/fseek/fflush1.1 文本文件:FILE结构体1.2 二进制文件:没有行概念1.3 文件定位:linux下文本文件模式和二进制文件模式没有区别。fgets和fprintf以行方式读写文…

【测试效率提升技巧】xmind测试用例转换为excel工具使用手册

【测试效率提升技巧】xmind测试用例转换为excel工具使用手册 一、前置环境配置二、执行Xmind2testcase的转换方法1.在控制台输入xmind2testcase [path/xmind文件路径] [-csv] [-xml] [-json],例:xmind2testcase /root/homin/XX测试点.xmind -csv ##在当前…

MacOS 升级golang版本后无法debug,升级delve版本

golang版本升级到1.20以后导致debug失效了,本文针对MacOS系统,win系统也可作参考。 WARNING: undefined behavior - version of Delve is too old for Go version 1.20.4 (maximum supported version 1.19) 1、升级delve版本 brew install delve 安装…

抖音seo账号矩阵系统源码代开发组件

一.开发矩阵系统的项目背景: 目录 一.开发矩阵系统的项目背景: 二.短视频矩阵系统SaaS模板组件通常包含以下几个方面的内容: 三.抖音SEO账号矩阵系统源码的技术搭建过程可以分为几个步骤: 1.确定系统的需求和目标&#xff0c…

MATLAB App Designer基础教程 Matlab GUI入门(一)

MATLAB GUI入门 第一天 学习传送门: 【MATLAB App Designer基础教程Matlab GUI界面设计(全集更新完毕-用户界面设计appdesigner(中文)Matlab Gui教程】 https://www.bilibili.com/video/BV16f4y147x9/?p2&share_sourcecopy_…

Spring Boot是什么?详解它的优缺点以及四大核心

作者:Insist-- 个人主页:insist--个人主页 作者会持续更新网络知识和python基础知识,期待你的关注 目录 一、Spring Boot 是什么? 二、Spring Boot 的优缺点 1、优点 ①可快速构建独立的 Spring 应用 ②直接嵌入Tomcat、Jett…

基于SpringBoot+mybatis+layui就业管理系统设计和实现

基于SpringBootmybatislayui就业管理系统设计和实现 博主介绍:5年java开发经验,专注Java开发、定制、远程、指导等,csdn特邀作者、专注于Java技术领域 作者主页 超级帅帅吴 Java项目精品实战案例《500套》 欢迎点赞 收藏 ⭐留言 文末获取源码联系方式 文…

Rust语言从入门到入坑——(11)面向对象

文章目录 0、引入1、封装2、继承3、多态4、引用 0、引入 Rust 不是面向对象的编程语言,但是可以实现面向对象方法:封装与继承,以及不完全的多态 1、封装 "类"往往是面向对象的编程语言中常用到的概念。"类"封装的是数据…

由于找不到msvcr110.dll,无法继续执行的三个可行修复方案

MSVCR110.dll是一种动态链接库文件,它是由Microsoft Visual Studio 2012的C运行时库的一部分。该文件主要负责提供C代码在Windows操作系统上运行所需的运行时支持。是Windows操作系统中非常重要的文件,如果文件出现损坏或者丢失,计算机系统就…

Windows下通过FastGithub加速国内GitHub访问

有时候在国内访问GitHub会非常慢,有时候直接打不开,无法访问,最近了解到了FastGithub 可以解决以下几个问题: github加速神器,解决github打不开、用户头像无法加载、releases无法上传下载、git-clone、git-pull、git-push失败等问…

设计模式第18讲——中介者模式(Mediator)

目录 一、什么是中介者模式 二、角色组成 三、优缺点 四、应用场景 4.1 生活场景 4.2 java场景 五、代码实现 5.0 代码结构 5.1 抽象中介者(Mediator)——LogisticsCenter 5.2 抽象同事类(Colleague)——Participant 5…

Scala之泛型详解

泛型用于指定类或方法可以接受任意类型参数,参数在实际使用时才被确定,泛型可以有效地增强程序的适用性,使用泛型可以使得类或方法具有更强的通用性。泛型的典型应用场景是集合及集合中的方法参数,可以说同 Java 一样,…

LabVIEW开发基于直流电机的高精度定位火星车

LabVIEW开发基于直流电机的高精度定位火星车 火星探测器一直用于火星探测的自动无人驾驶车辆。这些机器人远程车辆用于避免对人类不公平的条件,并减少与之相关的危险。这一研究领域引起了许多科学家和研究人员的注意,这导致了这一技术领域的显着进步。已…

Quartz任务调度笔记

一、概念 1.1简介 Quzrtz是OpenSymphony开源组织在Job scheduling领域的开源项目 特点:Quartz具有丰富特性的"任务调度库",能够集成于任何的Java应用,小到独立的应用,大到电子商业系统。quartz能够创建亦简单亦复杂的调…

如何建立一个企业网站

建立一个企业网站的方法 1、好。如果你的网站将专注于你已经有了一个不错的主意,请跳过此步骤。如果不是,这里有一些事情来帮助你找出答案。首先,要明白,有几十亿人在互联网上,一个健康的比例有自己的网站。如果你限制…