|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
& @( t3 T! W$ K: x! @, z: F: |3 L
建立 tftp 服务器。 , p! a% W1 B/ X; a7 L, h% e
在嵌入式 linux 开发过程中需要使用 tftp 方式从 Linux 主机下载文件到板子中,因此需7 w: H! _ L: Q- d" M& i
要在主机 linux 系统中安装 tftp 服务器。
& \" M; P1 n; \2 _9 Z3 v: I0 y$ TUbuntu-9.10 中安装 tftp 服务器的方法如下:
& i+ ?4 `( y3 w7 S) _3 z) Y
" I& m3 @2 g0 x4 G0 t安装程序 - U3 R- ]' A! z
通过软件管理安装 tftp tftpd,前者是客户端,后者是服务程序。系统根据依赖会选上
' t) o1 u+ y9 K0 _) |) sopenbsd-inetd。在 Ubuntu 的终端下输入命令如下:
5 ~% K% v0 Z. n9 Q$ y9 J/ i$ qsudo apt-get install tftp tftpd
" O7 V0 T7 i4 Q y' T" {# s" q$ V1 C* l
. h: Q- J( a# F/ i& y+ D1 D在根目录/目录下建一个 tftpboot, 把属性改成 777 : C) x7 x6 Y/ Z4 r0 y8 ]' c% O4 m
cd / # f9 B, l1 H6 G
sudo mkdir tftpboot
4 n: J6 K6 M. e, `- fsudo chmod 777 tftpboot ! q- \2 Z( b4 G+ W. V4 q
4 K% ?6 h, D) |1 Z2 q3 C. K 修改存放目录
4 F6 i; ]7 K2 L! I' usudo vi /etc/inetd.conf " s% \$ V+ r& b! ]' y; l; b9 b
tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /tftpboot
8 Y5 m) C* {! U$ `( \" R0 C* K; ~1 @0 ]8 H6 K. j
重新启动服务:
% K# t! B! I+ q4 f6 n, rsudo /etc/init.d/openbsd-inetd restart 3 r3 Q! y+ ~" }
sudo in.tftpd -l /tftpboot : Q( O' _( M* s6 w4 Z& u
3 M# w6 Z6 A4 G/ C$ i测试 tftp 服务器
: A4 H* E2 X. O' m, [: j在/tftpboot 文件夹下新建立一个文件 5 X. o L0 R+ O9 `; U: W& k" `
cd /tftpboot
/ y) i! `: U% l2 t- M5 M) T& @% Vtouch test / |8 }5 f$ O3 f, }! _! n, ~
进入另外一个文件夹 ! M, n3 C- }* p# Z5 j
tftp 127.0.0.1
" n+ ?+ D' f4 h; u$ `8 W$ M6 utftp> get test
8 n3 j7 m9 h, w: f# `5 [7 C* n3 [- W- s
4 T$ {( `- A8 ^: S不过,还是有个问题没法解决:只能get,不能put
: z5 ?4 A. I5 n) A( \+ m
1 j$ y5 S& V4 {. H7 c; ]在网络上搜索,有人说,Ubuntu防火墙禁用:内核有默认的防火墙iptables,关闭的话试试 sudo ufw disable ,但是我的机子没有装防火墙。特此发到首页上,期待高人的指点。 |
|