ubuntu安裝tftp-hpa

參考一:

ubuntu 12.10上安裝tftp-hpa

1)安裝tftp-hpa,tftpd-hpa, xinetd

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

2) 在/etc/xinetd.d/下創建並配置tftp文件

sudo vim /etc/xinetd.d/tftp

service tftp
{
    socket_type = dgram
    protocol = udp
    wait = yes
    user = root
    server = /usr/sbin/in.tftpd
    server_args = -s /var/lib/tftpboot -c
    disable = no
    per_source = 11
    cps = 100 2
}

-c 用於開啓上傳功能。

3)配置tftpd-hpa

sudo vim /etc/default/tftpd-hpa 

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


4)設置tftpboot文件夾的權限

sudo chmod a+wr /var/lib/tftpboot


5)重啓xinetd服務

sudo /etc/init.d/xinetd restart


6)如果還有問題重啓電腦。


如果出現Error code 0: Permission denied, 是因爲tftpboot文件夾沒有權限,或者是要上傳和下載的文件沒有權限。

如果出現Error code 1: File not found, 是因爲tftp配置文件中沒有加-c。


參考二:

1. 安裝
$ apt-get install tftp-hpa tftpd-hpa

2. 建立目錄
$ mkdir /tftpboot # 這是建立tftp傳輸目錄。
$ sudo chmod 0777 /tftpboot
$ sudo touch test.txt # test.txt文件最好輸入內容以便區分

3. 配置
$ sudo vi /etc/default/tftpd-hpa3.
# /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服務目錄,上面已經指定

4. 重啓服務
$ sudo service tftpd-hpa restart # 啓動服務,這裏要注意,採用的獨立服務形式。

5. 測試
$ tftp 127.0.0.1
tftp>get test.txt
tftp>put test1.txt
tftp>q

參考三:

ubuntu 12.10上安裝tftpd-hpa

1)安裝tftp-hpa,tftpd-hpa

sudo apt-get install tftp-hpa tftpd-hpa

tftp-hpa是client,tftpd-hpa是server

2) 配置tftpd-hpa

sudo vim /etc/default/tftpd-hpa 

TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/home/zc/tftproot"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS=" -l -c -s"

3)設置tftpboot文件夾的權限

sudo chmod 777 /home/zc/tftproot

4)重啓tftpd-hpa服務

sudo servicetftpd-hpa restart

ps -ef |grep tftp能看到tftpd-hpa進程

5)測試

在tftproot下建立a.txt

在其他目錄下(注意是當前用戶可以操作的目錄,否則get是會提示permission denied):

#tftp 127.0.0.1或tftp localhost

tftp>get a.txt //下載tftproot中的文件

tftp>put b.txt //上傳到tftproot中

tftp>quit


參考四:

1.安裝tftp-server

sudo apt-get install tftpd-hpa
sudo apt-get install tftp-hpa(如果不需要客戶端可以不安裝)

tftp-hpa是客戶端

tftpd-hpa是服務器端

2.配置TFTP服務器

sudo vim /etc/default/tftpd-hpa

將原來的內容改爲:

TFTP_USERNAME=”tftp”
TFTP_ADDRESS=”0.0.0.0:69″
TFTP_DIRECTORY=”tftp根目錄” #服務器目錄,需要設置權限爲777,chomd 777
TFTP_OPTIONS=”-l -c -s”

3.重新啓動TFTP服務

sudo service tftpd-hpa restart

4.測試


root@xf:/home# tftp 127.0.0.1
tftp> get  test.txt
Received 7 bytes in 0.1 seconds
tftp> put test.txt
Sent 10 bytes in 0.0 seconds
tftp> quit
因調試6410開發板,需在ubuntu12.04下搭建tftp服務器,在網搜了多個ubuntu下配置tftp的文件,發現都有或多或少的問題,如下是我的配置過程,已驗證通過可供參考!!!
1)安裝tftp-hpa,tftpd-hpa, xinetd
~$ sudo apt-get install tftp-hpa , tftpd-hpa, xinetd
2) 在/etc/xinetd.d/下創建並配置tftp文件
~$ sudo vim /etc/xinetd.d/tftp
  1 service tftp
  2 {
  3     socket_type = dgram
  4     protocol = udp
  5     wait = yes
  6     user = root
  7     server = /usr/sbin/in.tftpd
  8     server_args = -s/tftpboot -c
  9     disable = no
 10    per_source = 11
 11    cps =100 2
 12    flags = IPv4
 13 }
-c 用於開啓上傳功能。
3)配置tftpd-hpa
~$ sudo vim /etc/default/tftpd-hpa 
 
  1 #/etc/default/tftpd-hpa
  2 
  3 TFTP_USERNAME="tftp"
  4 TFTP_DIRECTORY="/tftpboot"
  5 TFTP_ADDRESS="0.0.0.0:69"
  6 TFTP_OPTIONS="-l -c -s"
其中/tftpboot爲 tftp共享目錄
4) 修改xinetd.conf文件
 
~$ sudo vim /etc/xinetd.conf 
 
defaults
  6 {
  7 
  8 # Please note that you need a log_type line to be able to use log_on_success
  9 # and log_on_failure. The default is the following :
 10 # log_type = SYSLOG daemon info
 11 
 12 }
 13 
 14 #includedir /etc/xinetd.d
 15 tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /tftpboot
5) 重啓tftp服務並測試
     sudo service tftpd-hpa restart
     sudo /etc/init.d/xinetd reload
     sudo /etc/init.d/xinetd restart
6)本機測試
     在/tftpboot下創建測試文件love
     #cd /tftpboot
     #echo  xuguodongaigongxia > love
     #chmod 777 love
測試一下 tftp服務:
     重新打開一個終端
     #tftp 127.0.0.1
     tftp>get love
     tftp>q      
     #ls
    退出後,查看當前目錄,發現love文件已在當前目錄。
    如果上述設置還不行的話,那麼就要把selinux禁用掉:
    sudo gedit /etc/selinux/config      //如果沒有selinux/config這個文件,則創建。
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#       enforcing - SELinux security policy is enforced.
#       permissive - SELinux prints warnings instead of enforcing.
#       disabled - SELinux is fully disabled.
SELINUX=enforcing
# SELINUXTYPE= type of policy in use. Possible values are:
#       targeted - Only targeted network daemons are protected.
#       strict - Full SELinux protection.
SELINUXTYPE=targeted
把上面的SELINUX=enforcing 改爲:SELINUX=disable  禁用SeLinux
然後reboot重啓PC


發佈了34 篇原創文章 · 獲贊 57 · 訪問量 24萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章