TFTP сервер с поддержкой подкаталогов



  • Возникла проблема при попытке использовать подключаемый пакет tftp сервер в 1.0.2 на pfsense 1.2.2 при работе с проектом thinstation.
    Суть проблемы в том, что данная реализация tftp сервера не позволяет создавать и отдавать клиентским машинам подкаталоги т.е. отдает только файлы из корня сервера.
    А для полноценной загрузки linux ядра через PXE загрузчик сетевой карты, необходимо некоторые файлы размещать в подкаталоге сервера tftp.
    Существуют ли сборки tftp сервера под pfsense с поддержкой данной возможности и если нет, может кто подскажет в каком направлении копать :)



  • @siv237:

    Возникла проблема при попытке использовать подключаемый пакет tftp сервер в 1.0.2 на pfsense 1.2.2 при работе с проектом thinstation.
    Суть проблемы в том, что данная реализация tftp сервера не позволяет создавать и отдавать клиентским машинам подкаталоги т.е. отдает только файлы из корня сервера.
    А для полноценной загрузки linux ядра через PXE загрузчик сетевой карты, необходимо некоторые файлы размещать в подкаталоге сервера tftp.
    Существуют ли сборки tftp сервера под pfsense с поддержкой данной возможности и если нет, может кто подскажет в каком направлении копать :)

    установи свой, по аналогии с установкой фтп сервера, которую я тут описывал ;)



  • @zar0ku1:

    @siv237:

    Существуют ли сборки tftp сервера под pfsense с поддержкой данной возможности и если нет, может кто подскажет в каком направлении копать :)

    установи свой, по аналогии с установкой фтп сервера, которую я тут описывал ;)

    Какой свой? Какой пакет tftp под freebsd поддерживает подкаталоги.



  • @siv237:

    Какой свой? Какой пакет tftp под freebsd поддерживает подкаталоги.

    любой, допусти родной tftpd
    http://www.opennet.ru/base/net/tftp_setup.txt.html



  • Настройка TFTP сервера с поддержкой подкаталогов

    Для запуска tftpd с поддержкой подкаталогов на чистом pfsense 1.2.2 необходимо выполнить следующие действия:

    * создать корень файловой системы для tftp сервера
          # mkdir /diskless/tftpboot

    * раскоментировать и поправить в файле /etc/inetd.conf соответствующую строку
          tftp dgram udp wait root /usr/libexec/tftpd tftpd -l -s /diskless/tftpboot

    * создать для tftpd журнал сообщений, для этого в /etc/syslog.conf добавим
          !tftpd
          .      /var/log/tftpd.log

    и создадим tftpd.log
          # touch /var/log/tftpd.log

    * запустить inetd
          # echo 'inetd_enable="YES"' >> /etc/rc.conf
          # sh /etc/rc.d/inetd start

    Многие вещи для новичков, таких как я, удобнее делать собрав предварительно Midnight Commander коммандой:
    pkg_add -r mc
    после установки нужно выполнить:
    rehash
    а затем mc

    К сожалению после перезагрузки pfsense, tftp не запускается автоматически.
    Кто может подсказать решение?



  • Все-таки удалось сделать так, что-бы tftp стартовал автоматически. Для этого нужно:
    1. Идем в /etc/defaults/rc.conf ищем строку:
    inetd_enable="No" и меняем "No" на "Yes"
    2. Идем в /etc находим файл *rc (похоже это и есть аналог rc.conf в pfsense). Ищем в нем строку:

    Start packages и после строк запуска пакетов перед строкой # Remove stale files that bla bla bla… пишем свое:

    Start inetd

    sh /etc/rc.d/inetd start

    Сохраняем, перезагружаем pfsense. Tftp должен запустится автоматически.

    Это решение найдено путем проб и ошибок и оно работает!
    Прошу не пинать, если что не так, а нормально объяснить если есть ошибки :)



  • Обновился пакет tftp до версии 1.0.5 stable
    Проблема подкаталогов решена. Время танцев с бубном проходит :)



  • Намучившись с родным tftp сервером снёс его и поставил tftp-hpa. С ним всё нормально. К тому же можно подключить таблицу преобразования регистра имён файлов - актуально для загрузки винды, там загрузчик запрашивает файлы в разном регистре.


Log in to reply