Ubuntu 10.04 desktop 正式版上安装tftp服务器

如需转载,请注明,未经授权,不得用于任何商业性的文章,书籍以及任何未列出但符合商业目的的用途。

==============================我是分割线==================================

 

网上有很多相关资料,不过几乎没有一个试验成功的~~T_T,最后还是自己摸索出来怎么弄,在这里记下来以便其他人能够解决此问题。

首先列出来使用的系统和虚拟机,系统不同无法保证以下步骤一定成功。

 

==============================我是分割线==================================

系统&环境

 

物理上使用的操作系统:Window XP SP3

虚拟操作系统:Ubuntu-10.04-desktop-正式版

虚拟机:Virtual Box 3.2.10 r66523

 

==============================我是分割线==================================

安装&测试

 

OK,书接上回,各位看官,我们先说步骤,再详细讨论相关的问题和解决办法。">"代表命令行提示符,如果不知道命令行是啥意思,对不起,请百度之,谢谢。

 

1) > sudo apt-get install tftp-hpa tftpd-hpa

2) > mkdir ~/tftproot

2) > sudo vi /etc/default/tftp-hpa

     该文件内容如下

     # /etc/default/tftpd-hpa

     TFTP_USERNAME="tftp"
     TFTP_DIRECTORY="/var/lib/tftpboot"
     TFTP_ADDRESS="0.0.0.0:69"
     TFTP_OPTIONS="--secure"

 

 

 

 3)修改成如下内容

     # /etc/default/tftpd-hpa

     TFTP_USERNAME="tftp"
     #TFTP_DIRECTORY="/var/lib/tftpboot"
     TFTP_DIRECTORY="~/tftproot"
     TFTP_ADDRESS="0.0.0.0:69"
     #TFTP_OPTIONS="--secure"
     TFTP_OPTIONS="-l -c -s"

    

     注意, ~/tftproot 是我创建的目录,用来作为tftp的根目录

 

4)> sudo chmod 777 ~/tftproot

5)> sudo service tftp-hpa restart

 

OK,运行5)之后,如果你看到下面的输出信息,说明tftpd-hpa已经运行起来了,其process ID为2064

 

tftpd-hpa start/running, processing 2064

 

 

如果输出信息只有逗号前的部分 tftpd-hpa start/running, 没有后面的 processing 2064, 那非常有可能tftpd-hpa并没有运行。

现在我们可以测试一下tftp是否工作。

 

1)> echo hello world > ~/a.txt

2)> echo tftp test > ~/tftproot/b.txt

3)> cd ~

4)> tftp localhost 或者 tftp 127.0.0.1

5)> tftp> put a.txt

6)> tftp> get b.txt

7)> tftp> q

现在你可以检查~/和~/tftproot两个目录下是否存在a.txt和b.txt,如果上述命令没有任何报错,且两个文件都可以看见,那么恭喜你,你已经搞定tftp的安装了,而且下次reboot系统tftp也可以工作。如果不是,那么不好意思,你还得多看一会本文。

 

==============================分割线又来了==================================

 

问题集萃

 

 

1)Q: put命令时报错

          Error code 0:Permission denied

     A:tftproot访问权限设置问题,将其改为全权限(777或者rwxrwxrwx),参考安装步骤4)

 

2)Q:put命令时报错

          tftp: [filename] :No such file or directory

     A: 这说明你要put的文件不存在,检查在运行tftp命令时所在的路径里是否存在该文件

 

3)Q:get命令报错

          Error code 1:File not found

     A:检查你指定的tftp根目录里是否存在你想get的文件

 

 

4)Q:sudo service tftp-hpa restart 时只看到tftpd-hpa start/running, 没有后面的 processing 2064

     A:检查是否已经运行了tftpd,注意这个和tftpd-hpa是不同的两个程序,二者是冲突的,如果一个运行,另一个就不能正常运行。想办法让tftpd不要运行。详见下面的其他注意事项2)

 

==============================又一个分割线==================================

 

 

其他注意事项

1)ubuntu 10.04下有两种tftp服务器,tftpd和tftpd-hpa,二者是冲突的,只能安装一个。我是用tftpd-hpa试成功的,另一个也许也可以,但是本文没有涵盖。

2)很多说法说要安装xinetd,然后还要写/etc/xinetd.d/tftp文件,这个是不需要的,而且如果装了,又装了tftpd(不是tftpd-hpa),那么再按照上述安装步骤会出现问题集萃里的4)。解决办法是删掉tftp文件

3)还有说法是安装inetd,这个我没有试,不过我想即使可以成功也没有上述方法简单,只要安装tftpd-hpa的两个包即可以。我有个类似洁癖的习惯,就是尽量安装最少的包来达到目的,我不想让好好的linux像windows一样丑陋。

 

 

==============================最后的分割线==================================

 

OK,到此本文就结束了,本人能力有限,肯定还有很多问题的细节没有覆盖到,这就需要各位看官一起努力完善了 ^_^

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值