Тайм-аут TFTP на виртуальной машине Ubuntu
Я использую ПК с Windows 7 с установленным VMware, на котором установлена моя Ubuntu (10.04 Lucid Lynx). Я недавно установил DHCP-сервер и TFTP (Xinet tftpd), используя эти инструкции. Я подключил сетевой диск так, чтобы у моей Windows был доступ ко всем файлам в моей виртуальной машине через IP-адрес 192.xxx.
Я пытаюсь закинуть какую-нибудь кастомную прошивку на роутер. Маршрутизатор имеет собственную встроенную утилиту TFTP, которая загружает образ. Он успешно все делает, но медленно, потому что записывает его во флэш-память. Есть еще один метод, который намного быстрее, потому что он пишет в ОЗУ напрямую, но должен использовать TFTP-сервер в Ubuntu.
Проблема, с которой я сталкиваюсь, заключается в том, что передача Ubuntu TFTP, похоже, истекает. Передача начинается, но никогда не проходит ~60%. Вот мой файл /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 /home/user/tftp/
disable = no
cps = 300 2
per_source = 60
}
Я провел некоторый поиск, но не могу найти никаких параметров для этого файла, чтобы контролировать время ожидания или количество повторных попыток. Последние два аргумента (cps, per_source) и совершенно чужды мне (может кто-нибудь объяснить). У меня есть несколько возможных решений, но самым простым было бы заставить этот сервер TFTP работать. Кто-нибудь может помочь? Или с настройкой тайм-аута или, может быть, даже порекомендовать другой сервер TFTP?
Спасибо!
1 ответ
Я не эксперт по Linux, но я использую server_args
параметр ( http://linux.die.net/man/5/xinetd.conf) для передачи параметров в процесс TFTP. TFTPD имеет --timeout
параметр ( http://linux.die.net/man/8/tftpd). Вы можете попробовать что-то вроде
service tftp {
[...]
server_args = --timeout 10000 -s /home/user/tftp/
}