tftp服务器搭建?Linux怎么安装tftp
大家好,如果您还对tftp服务器搭建不太了解,没有关系,今天就由本站为大家分享tftp服务器搭建的知识,包括Linux怎么安装tftp的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!
如果内网搭建一个PXE服务器来安装系统,怎么搭建
搭建分为3个区域:
1、交换机(必须临时关闭DHCP)
2、部署用server主机(由此台主机接管DHCP服务)
3、其他一堆客户机(需要调节至PXE引导模式)
方法:参照帖子网页链接进行部署server,需要包含dhcp tftpd web kickstart等服务。
配置完成后将server和其他客户机连接至交换机,server保持开启。
然后逐个将客户机开机即可实现自动批量部署。
Windows的PXE安装方法同理,只是用的软件不一样罢了。
一台新的linux服务器怎么搭建网站
在开发过程中,必然会出现多人同时工作、协着的情况,在嵌入式开发项目中更为平常,这样可以加快项目周期,为产品上市占得时间先机。目前,使用Linux作为开发产品的操作系统情况越来越多,使用越来越广泛。为了交叉编译,为了最接近开发目标,我们一般都会自己搭建一台Linux开发服务器。Linux开发服务器一些常用的功能必须支持,比如Samba、nfs、tftp、httpd等。
首先我们需要选择合适的Linux操作系统作为服务器的系统,推荐使用Fedora8、Fedora10等,笔者在长期使用的过程中觉得比较稳定吧!如何安装该操作系统就不多说了。装好系统后,需要增加Linux OS用户,可以使用命令#adduser XXX;增加XXX用户,#passwd XXX给其设置登录密码。当然使用图形化创建用户也很直观、方便。在这个环节值得注意的一定要设置好该用户的home目录,一般都会设置到该用户的工作目录,各个用户的工作目录需要私有化、独立开来,这样方便些、安全些。多用户的账户有了,我们应该来打通网络功能了,Fedora有bug,在图形化配置GATEWAY什么的会不成功,请安装如下方法修改:# cd cd/etc/sysconfig/network-scripts/# vi ifcfg-eth0修改配置文件如下:# Marvell Technology Group Ltd. 88E8001 Gigabit Ethernet Controller DEVICE=eth0 HWADDR=00:16:e6:db:c2:96 ONBOOT=yes BOOTPROTO=static//这个应该是“static”,而不是“dhcp”或“none”; USERCTL=yes PEERDNS=yes IPV6INIT=no NM_CONTROLLED=yes//这个应该是“yes”,如不修改,链接仍是disconnected; TYPE=Ethernet NETMASK=***.***.***.*** IPADDR=***.***.***.*** DNS1=***.***.***.*** DNS2=***.***.***.*** GATEWAY=***.***.***.*** step 3:# service network restart接下来就需要调试一下Samba功能了,这样在windows下编辑Linux下的代码将非常的便利。命令行下操作方法如下: Vim/etc/samba/smbusers# Unix_name= SMB_name1 SMB_name2… root= administrator admin nobody= guest pcguest smbguest dssun= dssun hmchen= hmchen增加Samba用户; Vim/etc/samba/smb.conf [dssun] comment=* path=/opt/STM/STLinux-2.3/devkit/dtvkit/dssun writeable= yes; browseable= yes valid users= bluo, dssun, hmchen, hqian, sbxiang, tsfu, yrli设置工作路径,可读写性、有效访问的用户等。在图形化下也有配置菜单,这个就很简单了,不再叙述。有了Samba就方便很多了!编译编辑都很不错了!接下来要着手你的开发平台软件,这个对于不同平台的SDK有不同的处理方法,根据自己的SDK来处理。有了SDK后,我们编译通过后,一般都会进行调试,如何方便的调试呢?一般都会想到使用nfs调试。以Fedora为例,一般默认安装的没有包括tftp功能,可以使用yum来安装,方便!#yum install tftp;#yum install tftp-server还需要更改一下tftp的配置,如下: vim/etc/xinetd.d/tftp修改server_args=-s/tftpboot-c,这里的-c一定要加上,否则只能下载不能上传!!! service tftp{ disable= no socket_type= dgram protocol= udp wait= yes user= root server=/usr/sbin/in.tftpd server_args=-s/tftpboot-c per_source= 11 cps= 100 2 flags= IPv4}# mkdir/tftpboot# chmod 777-R/tftpboot/# service xinetd restart记得要关闭防火墙、seLinux.不disabled seLinux,Samba有可能只能读不能写,切记。
Linux怎么安装tftp
第一部分:TFTP开发环境搭建流程
1
第一步:安装tftp所需的软件(黑色加粗字体为linux命令,下同)
搭建TFTP服务所需要安装的软件有tftp-hpa,tftpd-hpa以及xinetd,其中:
tftp-hpa:是客户端软件; root# apt-get install tftp-hpa
tftpd-hpa:是服务程序; root# apt-get install tftpd-hpa
xinetd:是新一代进程守护程序。 root# apt-get install xinetd
2
第二步:配置xinetd.conf配置文件
进入/etc目录,首先看目录中有没有一个xinetd.conf文件,如果没有则新建一个,有的话查看其内容:
root# cat xinetd.conf
看是否与下面的一致,内容如下所示:
若不一致则运行如下命令,修改为相同即可。
root# gedit xinetd.conf
3
第三步:配置tftpd-hpa配置文件
修改tftpd-hpa配置文件的内容:
root# gedit/etc/default/tftpd-hpa
将内容修改成:
#/etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/tftpboot"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="-l-c-s"
修改成功后,如下图所示,保存退出。
注解:TFTP_DIRECTORY="/tftpboot"表示tftp服务器的工作目录,用户可根据自己的实际情况进行更改。
指定了tftp服务的工作目录后,我们需要在相应的路径下建立该tftp工作目录,命令如下:
root# mkdir–p/tftpboot
修改工作目录的权限为777,777是最松的权限,这样不仅可以允许别的主机或者目标机下载,同时允许其上传文件。命令为:
root# chmod 777/tftpboot
4
第四步:配置tftp配置文件
进入/etc下面的xinetd.d文件夹,查看是否有一个tftp文件,如果没有的话,就新建一个并输入以下内容,如果有的话就查看内容是否与下面的一致,不一致则修改,内容如下:
root# gedit tftp
service tftp
{
disable= no
socket_type= dgram
protocol= udp
wait= yes
user= root
server=/usr/sbin/in.tftpd
server_args=-s/tftpboot-c
per_source= 11
cps= 100 2
flags=IPv4
}
修改之后,如图所示:
其中server_args一行是配置服务器的文件存放的位置,就是进行tftp传输的时候,都是从该文件夹中搜索文件的。然后保存文件,并退出编辑。
5
第五步:重新启动TFTP
重启tftpd-hpa,提示如下图:
root# service tftpd-hpa restart
6
第六步:重新加载xinetd
重新加载xinetd进程,提示如下图:
root#/etc/init.d/xinetd reload
7
第七步:重新启动xinetd
重启xinetd服务,提示如下图:
root#/etc/init.d/xinetd restart
每次修改完配置文件后,都需要重新启动一下服务。
至此,嵌入式Linux系统下搭建TFTP开发环境大功告成,下面介绍如何测试TFTP
END
第二部分:测试TFTP服务
1
第一步:新建测试文件
首先在tftp的工作目录"/tftpboot"中新建一个文件test,在其中输入任意内容,例如内容如下图:
2
第二步:进入测试目录
然后进入任意一个不同于/tftpboot的目录(例如/opt目录下),然后在终端中输入如下命令,进入tftp命令符下,如下图:
root# tftp localhost
3
第三步:获取测试文件
输入如下命令,再按回车,获取存放在tftp工作目录/tftpboot中的"test"文件。如果没有任何提示,就说明传输成功了,如下图所示:
root# get test
4
第四步:退出TFTP测试
输入 q退出tftp命令行,如下图所示:
5
修改test文件后,可以在tftp命令中输入如下命令,把修改过的test文件上传到服务器文件夹中。
root# put test
其效果图,在此不再给出,读者可以自行测试。
END
第三部分:脚本程序自动搭建TFTP开发环境
鉴于TFTP服务的安装过程十分繁复,且容易出错,下面给出脚本代码,自动安装该服务。
新建一个空文件,将下面代码复制,保存之后,修改文件权限,使之具有执行权限后,就可以自动搭建嵌入式TFTP开发环境了。
以下为脚本代码:
#!/bin/bash
####################################################
#搭建TFTP服务所需要安装的软件有tftp-hpa,tftpd-hpa以及xinetd,#
#其中:#
# tftp-hpa:是客户端软件;#
# tftpd-hpa:是服务程序;#
# xinetd:是新一代进程守护程序。#
####################################################
function creat_xinetd_conf
{
echo"# 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">/tmp/xinetd.conf
}
function config_xinetd_conf
{
creat_xinetd_conf
filename=/etc/xinetd.conf
example=/tmp/xinetd.conf
test-f$filename#返回值为0,代表文件存在返回值为1,代表文件不存在
if ["$?"-eq 0 ];then
echo"xinetd.conf文件存在"
diff-E$example$filename
case$? in
1)#文件内容有误
rm-rf$filename
mv-f$example$filename
echo"xinetd.conf文件内容修改成功";;
0)#文件内容正确
rm-rf$example
echo"xinetd.conf文件内容正确";;
*)
rm-rf$example
echo"未知错误,程序终止";;
esac
else
echo"xinetd.conf文件不存在,正在创建该文件"
mv-f$example$filename
echo"xinetd.conf文件创建成功"
fi
}
#=============================================#
function modify_tftpd_hpa
{
echo"#/etc/default/tftpd-hpa
TFTP_USERNAME=\"tftp\"
TFTP_DIRECTORY=\"/tftpboot\"
TFTP_ADDRESS=\"0.0.0.0:69\"
TFTP_OPTIONS=\"-l-c-s\"">/tmp/tftpd-hpa
rm-rf/etc/default/tftpd-hpa
mv-f/tmp/tftpd-hpa/etc/default/tftpd-hpa
echo"tftpd_hpa文件内容修改成功"
mkdir-p/tftpboot
chmod 777/tftpboot
}
#=============================================#
function modify_tftp
{
echo"service tftp
{
disable= no
socket_type= dgram
protocol= udp
wait= yes
user= root
server=/usr/sbin/in.tftpd
server_args=-s/tftpboot-c
per_source= 11
cps= 100 2
flags=IPv4
}">/tmp/tftp
rm-rf/etc/xinetd.d/tftp
mv-f/tmp/tftp/etc/xinetd.d/tftp
echo"tftp文件内容修改成功"
}
#=============================================#
function test_tftp
{
echo"This is a test file">/tftpboot/TEST
cd/tmp
echo"请在终端命令行中依次键入\"get TEST\"以及\"quit\""
tftp localhost
cat/tmp/TEST#返回值为0,表示成功查看指定的文件返回值为1,表示不能正常查看指定的文件
if [$?-eq 0 ]; then
echo"tftp测试成功,可以正常使用"
rm-rf/tftpboot/TEST/tmp/TEST
else
echo"tftp测试失败,请检查tftp配置"
rm-rf/tftpboot/TEST/tmp/TEST
fi
}
#=============================================#
function step_1#安装TFTP相关服务
{
apt-get update#安装软件之前,先升级一下数据库,获取软件包的最新相关信息
apt-get install tftp-hpa#安装TFTP服务的客户端软甲
apt-get install tftpd-hpa#安装TFTP服务的服务器端软件
apt-get install xinetd#安装新一代进程守护程序
}
function step_2#配置TFTP相关服务
{
config_xinetd_conf#配置/etc/xinetd.conf文件
modify_tftpd_hpa#修改/etc/default/tftp-hpa文件
modify_tftp#安装TFTP服务的服务器端软件
}function step_3#重启TFTP相关服务
{service tftpd-hpa restart#重新启动tftpd-hpa
/etc/init.d/xinetd reload#重新加载xinetd服务程序
/etc/init.d/xinetd restart#重新启动xinetd服务程序
}function step_4#测试TFTP相关服务
{
test_tftp#测试tftp服务
}
echo"选项1安装TFTP相关服务"
echo"选项2配置TFTP相关服务"
echo"选项3重启TFTP相关服务"
echo"选项4测试TFTP相关服务"
echo"键入quit,退出TFTP安装"
echo"请键入数值,执行您所需要的操作:"
read-r Step
while [$Step!= quit ]
do
while [$Step-lt 1-o$Step-gt 4 ]
do
echo"对不起,您输入的选项有误,请输入数字1—4之间的数值!"
read-r Step
done
case"$Step" in
1)
read-p"安装过程中出现的选项,请直接确定,不必更改,按任意键继续安装"
step_1;;
2)
step_2;;
3)
step_3;;
4)
step_4;;
*)
echo"出现致命错误,请检查脚本程序!";;
esac
echo"操作已完成!"
echo"============================="
echo""
echo""
echo""
echo""
echo"选项1安装TFTP相关服务"
echo"选项2配置TFTP相关服务"
echo"选项3重启TFTP相关服务"
echo"选项4测试TFTP相关服务"
echo"键入quit,退出TFTP安装"
echo"请键入数值,执行您所需要的操作:"
read-r Step
echo""
echo""
done
exit
如果你还想了解更多这方面的信息,记得收藏关注本站。