Ubuntu 16.04中搭建TFTP服务

1. 安装
  $ apt-get install tftp-hpa tftpd-hpa
 
2. 建立目录
  $ mkdir /tftpboot # 这是建立tftp传输目录。
  $ sudo chmod 0777 /tftpboot
  $ sudo touch test.txt # test.txt文件最好输入内容以便区分
   

3. 配置/etc/xinetd.conf
  配置相关服务文件。进入根目录下的 etc 文件夹(cd /etc/),首先看目录中有没有一个xinetd.conf 文件,如果没有则新建一个,有的话查看内容,看是否与下面的一致,若不一致则
修改,内容如下:

  # Simple configuration file for xinetd
  #
  # Some defaults, and include /etc/xinetd.d/

  defaults
  {

  # Please note that you need a log_type line to be able to use log_on_success
  # and log_on_failure. The default is the following :
  # log_type = SYSLOG daemon info

  }

  includedir /etc/xinetd.d

  

4. 配置
  # vi /etc/default/tftpd-hpa
  TFTP_USERNAME="tftp"
  TFTP_DIRECTORY="/tftpboot" # 这里是你的tftpd-hpa的服务目录,这个想建立在哪里都行
  TFTP_ADDRESS="0.0.0.0:69"
  TFTP_OPTIONS="-l -c -s" # 这里是选项,-c是可以上传文件的参数,-s是指定tftpd-hpa服务目录,上面已经指定
  

5. 配置/etc/xinetd.d/tftp
  然后进入 xinetd.d 文件夹(cd xinetd.d),查看是否有一个 tftp 文件,如果没有就新建一个,如果有的话就查看内容是否与下面的一致,不一致则修改,内容如下:
  service tftp
  {
  socket_type = dgram
  wait = yes
  disable = no
  user = root
  protocol = udp
  server = /usr/sbin/in.tftpd
  server_args = -s /tftpboot
  #log_on_success += PID HOST DURATION
  #log_on_failure += HOST
  per_source = 11
  cps =100 2
  flags =IPv4

  }

  

 
6. 重启服务

  重新启动服务。sudo service tftpd-hpa restart,这也是我经常疏忽的一步,当配置好 tftp 的配置文件后,需要重新启动一下 xinetd,在终端中输入 sudo /etc/init.d/xinetd reload,重新加载一下进程,再输入 sudo /etc/init.d/xinetd restart,重启服务。记住,每次修改完配置文件后,都需要重新启动一下服务。
执行次序:

  $ sudo service tftpd-hpa restart
  $ sudo /etc/init.d/xinetd reload
  $ sudo /etc/init.d/xinetd restart

 
7. 测试
  # cd /home
  # tftp localhost  #localhost 表示本机
  tftp>get test.txt  //test.txt 是之前在 /tftpboot 目录下新建的文件
  tftp>put test1.txt //test1.txt 是在 /home 目录下新建的文件
  tftp>q
  退出后,在/home目录下会有一个test.txt文件,在/tftpboot 目录下有test1.txt,表示tftp服务器安装成功!
  

ubuntu 16.04 中搭建NFS服务

  nfs服务是实现Linux和Linux之间的文件共享,nfs服务的搭建比较简单。现在介绍如何在ubuntu16.04系统中搭建nfs服务,ubuntu的搭建比红帽的还要简单。

1、安装nfs服务

  • $ sudo apt-get install nfs-kernel-server
  • $ sudo apt-get install nfs-common

2、修改配置文件

  1、sudo vim /etc/exports

  • 修改内容如下:
  • /root/rootfs *(rw,sync,no_root_squash,no_subtree_check)

  

  • 各段表达的意思如下,根据实际进行修改
  • 复制代码
  • /home :共享的目录
  • * :指定哪些用户可以访问
  • * 所有可以ping同该主机的用户
  • 192.168.1.* 指定网段,在该网段中的用户可以挂载
  • 192.168.1.12 只有该用户能挂载
  • (ro,sync,no_root_squash): 权限
  • ro : 只读
  • rw : 读写
  • sync : 同步
  • no_root_squash: 不降低root用户的权限
  • 其他选项man 5 exports 查看
  • 复制代码

  2、更改文件夹的访问权限:chmod 777 -R /root/rootfs/rootfs

  3、在终端执行:showmount -e

  4、更新:exportfs -r

  5、重启本地网卡:showmount localhost -e

  6、挂在目录到本地:mount -t nfs -o nolock 192.168.1.141:/root/rootfs/rootfs /opt

3、重启nfs服务

  sudo /etc/init.d/nfs-kernel-server restart
  到此,nfs的服务就搭建好了。

下面介绍客户端如何访问服务器

  1、检查客户端和服务端的网络是否连通(ping命令)

    ping + 主机IP

  2、查看服务端的共享目录

    showmount -e + 主机IP

    showmount -e 192.168.1.93
    Export list for 192.168.1.93:
    /home *
  3、将该目录挂载到本地

    mount -t nfs -o nolock 192.168.1.141:/root/rootfs/rootfs /opt
  4、访问

    访问本地的mnt目录,就可访问服务端共享的目录了。

Ubuntu16.04中搭建TFTP 和 NFS 服务器的更多相关文章

  1. 在 Ubuntu16.04 中搭建 Spark 单机开发环境 (JDK + Scala + Spark)

    1.准备 本文主要讲述如何在Ubuntu 16.04 中搭建 Spark 2.11 单机开发环境,主要分为 3 部分:JDK 安装,Scala 安装和 Spark 安装. JDK 1.8:jdk-8u ...

  2. Ubuntu: 搭建tftp,nfs服务器

    Ubuntu12.04搭建tftp&nfs服务器 http://blog.163.com/thinki_cao/blog/static/83944875201411610467306/ 硬件环 ...

  3. SLAM+语音机器人DIY系列:(二)ROS入门——3.在ubuntu16.04中安装ROS kinetic

    摘要 ROS机器人操作系统在机器人应用领域很流行,依托代码开源和模块间协作等特性,给机器人开发者带来了很大的方便.我们的机器人“miiboo”中的大部分程序也采用ROS进行开发,所以本文就重点对ROS ...

  4. Ubuntu16.04 中 Vscode 如何断点调试C语言程序

    个人博客链接:Ubuntu16.04 中 Vscode 如何断点调试C语言程序 问题:环境是 Ubuntu16.04,如何使用 Vscode 断点调试C语言程序. 写代码没有调试环境是不能忍受的,所以 ...

  5. ubuntu16.04中可以用于教学的有趣的应用

    ubuntu16.04中可以用于教学的有趣的应用 在ubuntu自带的软件中心里,内置了非常丰富的教育应用,可以用于物理,化学等科学课教学,只选取我用过用于教学的软件,优秀的软件不止这些,可以慢慢发掘 ...

  6. 在ubuntu16.04中再次体验.net core 2.0

    在上一篇文章中在ubuntu16.04中初次体验.net core 2.0 简单介绍了一下ubuntu中运行.net core 2.0.配置nginx反向代理以及安装supervisor守护进程……本 ...

  7. 在局域网中搭建自己的gis服务器

    在局域网中搭建自己的gis服务器 需求        在客户的B/S应用系统中使用电子地图.该系统只可运行于内部网中. 分析        由于系统中的电子地图只能运行于局域网中所以不能采用googl ...

  8. ubuntu16.04中docker安装curl拒绝连接问题

    在Ubuntu16.04中安装docker ce,安装步骤按照官网说明https://docs.docker.com/engine/installation/linux/docker-ce/ubunt ...

  9. Ubuntu16.04中Mysql 5.7 安装配置

    记录在Ubuntu 16.04安装Mysql 5.7时遇到的一些问题. Mysql安装 使用如下命令进行安装: 1 sudo apt-get install mysql-server mysql-cl ...

随机推荐

  1. 2018-02-18 Antlr4实现简单语言之条件语句

    本系列之前的文章: Antlr4的分析错误处理 Antlr4实现数学四则运算 Antlr4添加中文变量赋求值,括号,各种问题 Antlr4: 修改语法规则更接近普通BNF格式 Antlr4实现简单语言 ...

  2. python之网络通信协议

    TCP/IP五层协议和OSI的七层协议: TCP和UDP的区别: Tcp协议:面向连接,数据可靠,传输效率低,面向字节流 Udp协议:面向无连接,数据不可靠,传输效率高,面向报文

  3. web全栈架构师[笔记] — 03 html5新特性

    HTML5新特性 一.geolocation PC端 精度比较低 通过IP库定位 移动端 通过GPS window.navigator.geolocation 单次 getCurrentPositio ...

  4. NopCommerce 根据手机浏览器和桌面浏览器切换 Theme

    自从 NopCommerce 升级到 3.x 以来,默认的 ViewName.Mobile.cshtml 方式就被响应式的默认 Theme 取代了. 但是在今天各种手机专用前端库大行其道的情况下,响应 ...

  5. 2018下半年Android面试历程

    个人看法:可以总结下他的面试经历以及涉及到的面试题 下面开始正文吧: 从今年下半年以来就开始在杭州准备简历找工作了,原因基本都懂的,没多少工资,投递简历的渠道是Boss,偶尔也在拉钩上投递,刚开始把简 ...

  6. 聊聊setTimeout和setInterval线程

    在聊setTimeout和setInterval这两个事件的前,先聊另外一个与之密切关联的知识点,那就是线程(thread).而线程有常常跟另外一个词语--“进程”一起出现.那么何为线程?何为线程呢? ...

  7. Source Insight里头文件注释和函数头的注释

    1.将下述代码拷贝入一个文件,扩展名为em 2.打开BASE工程,添加本文件,并重新同步 3.添加hh_InsertFuncHeader的快捷键,即为函数头注释,光标需要放在函数名那一行,否则无效 4 ...

  8. 【第三篇】SAP ABAP7.5x新语法之程序结构&SubScreen

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文地址:SAP ABAP7.5x系列之程序结构& ...

  9. ubuntu 配置拼音输入法步骤

    今天配置了一下 ubuntu 拼音,要求使用ubuntu 内置拼音.大致步骤我记录一下: 配置拼音,使用 ibus pinyin,网上有很多帖子大致步骤: 1)安装 中文语言 2)安装ibus 3)  ...

  10. 什么是Docker?

      概观 Docker是推动集装箱运动的公司,也是唯一一家能够解决混合云中的每个应用的集装箱平台提供商.当今的企业面临数字化转型的压力,但受到现有应用程序和基础架构的制约,同时合理化日益多样化的云,数 ...