Ubuntu 14.04 下安裝 TFTP 艱辛之路

背景

按說在Linux下安裝tftp server 很簡單,之前操作過很多次了。這次也是直接從網上搜索,搜出了很多內容。之前都是在Centos下安裝的,這次是第一次在Ubuntu下安裝,看那些內容有些不太一樣,但是大同小異。


失敗方案

下面的操作是按照網上來的:

安裝軟件

apt-get install xinetd tftp tftpd

修改配置文件

vi /etc/xinetd.d/tftp

service tftp                                                                    
{
    protocol        = udp
    port            = 69
    socket_type     = dgram
    wait            = yes
    user            = nobody
    server          = /usr/sbin/in.tftpd
    server_args     = -s /root/tftpboot -c
    disable         = no
} 

創建目錄

mkdir /root/tftpboot
chmod 777 /root/tftpboot

啓動服務

/etc/init.d/xinetd restart

查看服務

netstat -an | more | grep udp
udp 0 0 0.0.0.0:69 0.0.0.0:*

測試

tftp 127.0.0.1
tftp> get hello
Error code 2: Access violation

此次出現了錯誤,網上也衆說不一。
最終的解決方案是:vi /etc/inetd.conf
註釋掉下面這句話:
tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /root/tftpboot

再次測試

Transfer timed out

直接無語,安裝個TFTP這麼折騰,再次上網搜索,終於發現了一篇文章。他裏面給出的結論是上面的操作也是不成功的,接着給出了新的解決方案。

成功方案

安裝軟件

apt-get install tftp-hpa tftpd-hpa xinetd

修改配置

vi /etc/default/tftpd-hpa

TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/root/tftpboot"
TFTP_ADDRESS=":69"
TFTP_OPTIONS="--secure -c"

重啓服務

service tftpd-hpa restart

測試

tftp 127.0.0.1
tftp> get hello
tftp> quit

成功!

NFS

安裝軟件

apt-get install nfs-kernel-server

修改配置

vi /etc/exports
/root/rootfs *(rw,sync,no_root_squash)
exportfs -a

重啓服務

/etc/init.d/rpcbind restart
/etc/init.d/nfs-kernel-server restart

測試

mount -t nfs 192.168.2.104:/root/rootfs /mnt/

參考

http://liucw.blog.51cto.com/6751239/1223695
http://jacoxu.com/ubuntu-14-04%E4%B8%8Bnfs%E5%AE%89%E8%A3%85%E9%85%8D%E7%BD%AE/
https://unix.stackexchange.com/questions/106122/mount-nfs-access-denied-by-server-while-mounting-on-ubuntu-machines

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章