简单文件传输协议 (TFTP) 用于将文件传输至网络设备或从网络设备输出文件。
本文的读者应该是能访问UNIX根帐户和系统管理接口工具(SMIT)或系统管理器(SAM)的有经验的UNIX用户。
本文档中的信息基于以下软件和硬件版本:
IBM AIX 4.2 或 IBM AIX 4.3
HP-UX 10.20 或 HP-UX 11.0
Sun Solaris 2.6 或 Solaris 2.8
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您使用的是真实网络,请确保您已经了解所有命令的潜在影响。
有关文件规则的更多信息请参见“ Cisco技术提示规则”。
要从 SMIT 访问菜单访问 TFTP 服务,请遵循以下路径:
您可以从此点操作各种 inetd 服务。有关 SMIT 的更多信息,请参阅 IBM 技术文档:AIX 4.3 。
当您发出 loadrev 命令或 getfwrev 命令时,WAN 交换机软件会要求文件名中单个以字母显示的交换机名称采用大写形式,且驻留在 /usr/users/svplus/images/ipxbpx 中。如果要使用TFTP安全模式,请读取TFTP 守护程序(tftpd)的人工条目,并且注意维护/etc/tftpaccess.ctl。
使用此方法通过TFTP验证对localhost的TFTP配置:
cwm001% cd /tmp cwm001% tftp localhost tftp> bin tftp> get /usr/users/svplus/images/ipxbpx/9231G.img Received 784 bytes in 0.3 seconds tftp> quit cwm001% cwm001% ls -al 9231G.img -rw-r--r-- 1 svplus svplus 784 Feb 5 10:50 9231G.img cwm001% diff /usr/users/svplus/images/ipxbpx/9231G.img 9231G.img cwm001%
如果上面的方法不能发挥作用,请提供诊断消息进行识别,然后解决问题。
TFTP 以 UNIX 的 nobody 用户身份运行。文件对任何人都必须是可读的,并且路径中的所有目录必须是可搜索和可读的。
cwm001% ls -al | more total 4144 drwxr-xr-x 2 svplus svplus 1902 Feb 6 15:44 . drwxrwxrwt 10 svplus svplus 2718 Feb 6 15:44 .. -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.000 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.001 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.002 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.003 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.004 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.005 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.006 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.007 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.008 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.009 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.010 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.011 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.012 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.013 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.014 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.015 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.016 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.017 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.018 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.019 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.020 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.021 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.022 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.023 -rw-r--r-- 1 svplus svplus 15148 Nov 29 1999 9230B.024 -rw-r--r-- 1 svplus svplus 784 Nov 29 1999 9230B.img -rw-r--r-- 1 svplus svplus 502944 Mar 29 2000 rel-9230.pdf cwm001%
从 SAM 访问“网络和通信”区域中的“网络服务”:
TFTP 守护程序 (tftpd) 的默认设置显示如上。当您启用 TFTP 服务时,系统会为 TFTP 用户创建密码条目。请参阅有关tftp(1)和tftpd(1M)的HP-UX联机人工条目(使用man xxxx命令),了解更多详细资料。
当您发出 loadrev 命令或 getfwrev 命令时,WAN 交换机软件会要求文件名中单个以字母显示的交换机名称采用大写形式,且驻留在 /usr/users/svplus/images/ipxbpx 中。为了使用TFTP的安全模式,您的路径名称必须为/tftpboot/usr/users/svplus/images/ipxbpx,并且它不可以是一个符号链接。要实现这个,创建文件层并将所有交换软件和固件放置在/tftpboot之下。可以存在来源为 /usr/users/svplus/images/ipxbpx /tftpboot/usr/users/svplus/images/ipxbpx 的符号链接。
如果文件名中的交换机名称为小写字符或该文件不存在于 CWM 工作站中,则交换机软件可能会误报其无法与 Cisco WAN Manager (CWM) 工作站进行通信。
对 /etc/inetd.conf 进行修改后,安全模式 tftp 如下所示:
# Before uncommenting the "tftp" entry below, please make sure # that you have a "tftp" user in /etc/passwd. If you don't # have one, please consult the tftpd(1M) manual entry for # information about setting up this service. tftp dgram udp wait root /usr/lbin/tftpd tftpd /tftpboot
INETD进程需要发送HUP信号来强制它重新读取/etc/inetd.conf 。有关更多详细信息,请参阅 ftp(1) 和 tftpd(1M) 的 HP-UX 在线手册。
使用此方法通过TFTP验证对localhost的TFTP配置:
cwm001% cd /tmp cwm001% tftp localhost tftp> bin tftp> get /usr/users/svplus/images/ipxbpx/9231G.img Received 784 bytes in 0.3 seconds tftp> quit cwm001% cwm001% ls -al 9231G.img -rw-r--r-- 1 svplus svplus 784 Feb 5 10:50 9231G.img cwm001% diff /usr/users/svplus/images/ipxbpx/9231G.img 9231G.img cwm001%
如果上面的方法不能发挥作用,请提供诊断消息进行识别,然后解决问题。
TFTP 以 UNIX 的 nobody 用户身份运行。文件对任何人都必须是可读的,并且路径中的所有目录必须是可搜索和可读的。
cwm001% ls -al | more total 4144 drwxr-xr-x 2 svplus svplus 1902 Feb 6 15:44 . drwxrwxrwt 10 svplus svplus 2718 Feb 6 15:44 .. -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.000 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.001 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.002 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.003 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.004 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.005 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.006 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.007 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.008 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.009 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.010 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.011 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.012 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.013 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.014 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.015 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.016 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.017 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.018 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.019 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.020 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.021 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.022 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.023 -rw-r--r-- 1 svplus svplus 15148 Nov 29 1999 9230B.024 -rw-r--r-- 1 svplus svplus 784 Nov 29 1999 9230B.img -rw-r--r-- 1 svplus svplus 502944 Mar 29 2000 rel-9230.pdf cwm001%
来自 /etc/inetd.conf 的 TFTP 守护程序 (tftpd) 的默认设置如下所示:
# # Tftp service is provided primarily for booting. Most sites run this # only on machines acting as "boot servers." # tftp dgram udp wait root /usr/sbin/in.tftpd in.tftpd #
当您发出 loadrev 命令或 getfwrev 命令时,WAN 交换机软件会要求文件名中单个以字母显示的交换机名称采用大写形式,且驻留在 /usr/users/svplus/images/ipxbpx 中。为了使用TFTP的安全模式,您的路径名称必须为/tftpboot/usr/users/svplus/images/ipxbpx,并且它不可以是一个符号链接。要实现这个,创建文件层并将所有交换软件和固件放置在/tftpboot之下。可以存在来源为 /usr/users/svplus/images/ipxbpx /tftpboot/usr/users/svplus/images/ipxbpx 的符号链接。
如果文件名在指定交换机时提供小写字母或者CWM工作站没有此文件,那么交换软件可能错误地通告它不能与CWM工作站建立联络。
对 /etc/inetd.conf 进行修改后,安全模式 tftp 如下所示。
# # Tftp service is provided primarily for booting. Most sites run this # only on machines acting as "boot servers." # tftp dgram udp wait root /usr/sbin/in.tftpd in.tftpd -s /tftpboot #
INETD进程需要发送HUP信号来强制它重新读取/etc/inetd.conf 。
使用此方法通过TFTP验证对localhost的TFTP配置:
cwm001% cd /tmp cwm001% tftp localhost tftp> bin tftp> get /usr/users/svplus/images/ipxbpx/9231G.img Received 784 bytes in 0.3 seconds tftp> quit cwm001% cwm001% ls -al 9231G.img -rw-r--r-- 1 svplus svplus 784 Feb 5 10:50 9231G.img cwm001% diff /usr/users/svplus/images/ipxbpx/9231G.img 9231G.img cwm001%
如果上面的方法不能发挥作用,请提供诊断消息进行识别,然后解决问题。
TFTP 以 UNIX 的 nobody 用户身份运行。文件对任何人都必须是可读的,并且路径中的所有目录必须是可搜索和可读的。
cwm001% ls -al | more total 4144 drwxr-xr-x 2 svplus svplus 1902 Feb 6 15:44 . drwxrwxrwt 10 svplus svplus 2718 Feb 6 15:44 .. -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.000 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.001 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.002 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.003 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.004 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.005 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.006 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.007 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.008 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.009 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.010 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.011 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.012 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.013 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.014 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.015 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.016 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.017 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.018 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.019 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.020 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.021 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.022 -rw-r--r-- 1 svplus svplus 65536 Nov 29 1999 9230B.023 -rw-r--r-- 1 svplus svplus 15148 Nov 29 1999 9230B.024 -rw-r--r-- 1 svplus svplus 784 Nov 29 1999 9230B.img -rw-r--r-- 1 svplus svplus 502944 Mar 29 2000 rel-9230.pdf cwm001%
调用 tftp 守护程序时,系统会从 inetd 执行调用。在确定正在寻找哪个文件后,根tftpd程序调用一个子tftpd程序,以UNIX用户nobody的身份运行。针对这些进程运行 truss 命令会提供有关当前状况的详细信息。在下面的示例中,根tftpd程序被捆绑,说明它正在尝试打开不存在的文件,/usr/users/svplus/images/ipxbpx/9235B.img。
truss -fae -o /tmp/tftpd.truss -p 10748
注意:在本示例中,根tftpd进程的进程ID为10748。
# cat /tmp/tftpd.truss 10748: psargs: in.tftpd 10748: poll(0xEFFFDD88, 1, 60000) (sleeping...) 10748: poll(0xEFFFDD88, 1, 60000) = 1 10748: recvfrom(0, "\001 / u s r / u s e r s".., 516, 0, 0x000245C4, 0x00023BF0) = 50 10748: alarm(0) = 0 10748: so_socket(2, 1, 0, "", 1) = 3 10748: bind(3, 0x0002362C, 16) = 0 10748: fork() = 10754 10754: fork() (returning as child ...) = 10748 10754: setegid(60001) = 0 10754: seteuid(60001) = 0 10754: stat("/usr/users/svplus/images/ipxbpx/9235B.img", 0xEFFFFC88) Err#2 ENOENT 10754: setegid(0) = 0 10754: seteuid(0) = 0 10754: time() = 982191999 10754: write(4, " :8B0F7F\0\0\001\0020403".., 24) = 24 10754: llseek(0, 0, SEEK_CUR) Err#29 ESPIPE 10754: _exit(0) 10748: close(3) = 0 10748: poll(0xEFFFDD88, 1, 60000) (sleeping...) 10748: poll(0xEFFFDD88, 1, 60000) = 0 10748: kill(10749, SIGKILL) = 0 10748: llseek(0, 0, SEEK_CUR) Err#29 ESPIPE 10748: _exit(0) #
版本 | 发布日期 | 备注 |
---|---|---|
1.0 |
09-Jan-2006 |
初始版本 |