fedora下tftp服務器的安裝與配置
總結過程如下:
1.下載tftp服務器、客戶端tftp和守護進程xinetd三個包
yum install xinetd tftp tftp-server
//xinetd.i386 2:2.3.14-21.fc10
//tftp-0.49-1.fc10.i386.rpm
//tftp-server-0.49-1.fc10.i386.rpm
2.配置vi /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
}
3.關閉防火墻
4.建立tftp工作目錄並修改屬性(不修改屬性會出現error)
cd /
mkdir tftpboot
chmod 777 -R /tftpboot/
5.開啟服務,上傳下載文件
######################################
我的配置過程中先後順序和出現的問題如下:
下載tftp服務客戶端tftp和守護進程xinetd
yum install xinetd
yum install tftp tftp-server
//xinetd.i386 2:2.3.14-21.fc10
//tftp-0.49-1.fc10.i386.rpm
//tftp-server-0.49-1.fc10.i386.rpm
關閉防火墻
service xinetd restart
Stopping xinetd: [ OK ]
Starting xinetd: [ OK ]
cd /
mkdir tftpboot
cd tftpboot
cp /etc/inittab /tftpboot/
tftp 172.18.1.90
tftp> get inittab
Transfer timed out.
tftp>quit
[root@localhost tftpboot]# netstat -a|grep tftp
[root@localhost tftpboot]# ls
inittab
[root@localhost tftpboot]# touch aaa
[root@localhost tftpboot]# ls
aaa inittab
[root@localhost tftpboot]# tftp 172.18.1.90
tftp> get aaa
Transfer timed out.
tftp> quit
不知何故出現“Transfer timed out.”的錯誤提示,想想沒有修改tftp配置文件:
[root@localhost tftpboot]# cd /etc/xinetd.d
[root@localhost xinetd.d]# vi tftp
修改保存:
disable=no
server_args=-s /tftpboot/ -c
[root@localhost xinetd.d]# cd /
[root@localhost /]# /etc/init.d/xinetd restart
Stopping xinetd: [ OK ]
Starting xinetd: [ OK ]
[root@localhost /]# netstat -a | grep tftp
udp 0 0 *:tftp *:*
[root@localhost /]# tftp 172.18.1.90
tftp> get aaa
Error code 1: File not found
tftp> get inittab
Error code 1: File not found
tftp> quit
錯誤不壹樣了,以為需要安裝tftpd服務器端,yum install tftpd沒有源
但這次想起來新建/tftpboot/目錄時候沒有對該目錄權限進行修改,就壹切ok了
[root@localhost /]# chmod 777 -R /tftpboot/
[root@localhost /]# tftp 172.18.1.90
tftp> get aaa
tftp> get inittab
tftp> q
[root@localhost /]# ls
aaa boot etc inittab lost+found mnt proc sbin srv tftpboot usr
bin dev home lib media opt root selinux sys tmp var
//根目錄出現了aaa和inittab文件,下載成功!
再來試試上傳文件:
[root@localhost /]# cd /tftpboot
[root@localhost tftpboot]# ls
aaa inittab
[root@localhost tftpboot]# rm aaa
rm: remove regular empty file `aaa'? y
[root@localhost tftpboot]# ls
inittab
[root@localhost tftpboot]# tftp 172.18.1.90
tftp> put aaa
tftp: aaa: No such file or directory
tftp> put aaa
tftp: aaa: No such file or directory
tftp> q
[root@localhost tftpboot]# cd /
[root@localhost /]# ls
aaa boot etc inittab lost+found mnt proc sbin srv tftpboot usr
bin dev home lib media opt root selinux sys tmp var
[root@localhost /]# tftp 172.18.1.90
tftp> put aaa
tftp> q
[root@localhost /]# cd /tftpboot
[root@localhost tftpboot]# ls
aaa inittab
上傳成功!
上面錯誤原因就是tftp的執行目錄要再根目錄下進行,因為默認根目錄為當前操作的目錄