Ubuntu16.04中搭建TFTP 和 NFS 服务器
Ubuntu 16.04中搭建TFTP服务
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
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
}
重新启动服务。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
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、开发板下载文件
在开发板的命令行中输入
tftp -l a.txt -r a.txt -g 192.168.1.21 69
参数说明:-l 是local的缩写,后跟本地或下载到本地后重命名的文件名。
-r 是remote的缩写,后跟远程即PC机tftp服务器根目录中的文件名,或上传到PC机后重命名后的文件名。
-g 是get的缩写,下载文件时用,后跟PC机的IP地址
-p 是put的缩写,上传文件时用,后跟PC机的IP地址
tftp 默认占用的是69端口。
注意:下载或上传文件时,文件名最好相同,否则会出现得到了文件,但文件大小却是 0k 的尴尬现象。如果出现了这种现象,请多敲几次命令,在 -l -r 和 -g 前面多放几个空格,例如
tftp -l a.txt -r a.txt -g 192.168.1.21 69
默认下载到开发板的当前目录。
上传文件:将开发板当前目录的某个文件上传到tftp服务器根目录。
命令: tftp -l a.txt -r a.txt -p 192.168.1.21 69
当然我们假设tftp服务器根目录不存在a.txt这个文件,当运行这个命令后,就会在tftp服务器根目录中发现这个文件。
4、重启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
/root/rootfs/rootfs:目标主机(192.168.1.141)的nfs共享目录;
/opt:本地的nfs共享目录;
4、访问
访问本地的mnt目录,就可访问服务端共享的目录了。