Jak zainstalować i uruchomić serwer TFTP?


60

Mam osadzony cel VxWorks, który musi uruchomić jądro z mojego komputera Ubuntu. Jak zainstalować i uruchomić serwer TFTP?

Odpowiedzi:


103

Instalacja i konfiguracja serwera TFTP

  1. Zainstaluj następujące pakiety.

    sudo apt-get install xinetd tftpd tftp
    
  2. Utwórz /etc/xinetd.d/tftp i umieść ten wpis

    service tftp
    {
    protocol        = udp
    port            = 69
    socket_type     = dgram
    wait            = yes
    user            = nobody
    server          = /usr/sbin/in.tftpd
    server_args     = /tftpboot
    disable         = no
    }
    
  3. Utwórz folder / tftpboot, który powinien pasować do tego, co podałeś w server_args. głównie będzie to tftpboot

    sudo mkdir /tftpboot
    sudo chmod -R 777 /tftpboot
    sudo chown -R nobody /tftpboot
    
  4. Uruchom ponownie usługę xinetd.

    nowsze systemy:

    sudo service xinetd restart
    

    starsze systemy:

    sudo /etc/init.d/xinetd restart
    

Teraz nasz serwer tftp jest uruchomiony.

Testowanie naszego serwera tftp

  1. Utwórz plik o nazwie test z pewną zawartością w ścieżce / tftpboot serwera tftp

    Uzyskaj adres IP serwera tftp za pomocą komendy ifconfig

  2. Teraz w innym systemie wykonaj następujące kroki.

    tftp 192.168.1.2
    tftp> get test
    Sent 159 bytes in 0.0 seconds
    
    tftp> quit
    
    cat test
    

Źródło: http://mohammadthalif.wordpress.com/2010/03/05/installing-and-testing-tftpd-in-ubuntudebian/


1
tylko krok 4 musi zostać zmieniony, ponieważ xinetd jest odradzany przez upstart. musisz go zrestartować za pomocą „service xinetd restart”
BЈовић

3
Postępowałem zgodnie z tą instrukcją i odmówiono zgody! Docelowa nazwa pliku [c2950-i6q4l2-mz.121-22.EA1b.bin]? TFTP: otrzymano kod błędu 2 - Naruszenie dostępu% Błąd otwierania tftp: //10.1.11.14/c2950-i6q4l2-mz.121-22.EA1b.bin (Odmowa dostępu) # kopia flash: c2950-i6q4l2-mz.121-22 .EA1b.bin tftp: adres lub nazwa zdalnego hosta []? 10.1.11.14 Docelowa nazwa pliku [c2950-i6q4l2-mz.121-22.EA1b.bin]? TFTP: otrzymano kod błędu 2 - Naruszenie dostępu
Mohammad Rafiee

1
@Mohammad Rafiee: link na blogu, do którego prowadzi link, dodał kilka informacji: uruchom sudo chmod -R 777 /tftpbootmiędzy krokiem 1 a 2 w części „Testowanie naszego serwera tftp”. Nie to mi pomogło, ale wygląda na to, że pomogło innym.
Gauthier

2
14.04 to mi nie zadziałało. Informacje na temat /tftpbootw /etc/xinetd.d/tftpnie wydawały się mieć znaczenia. Zamiast tego klient szuka w katalogu /srv/tftpokreślonym w /etc/inetd.conf. Nie robię tego, jeśli sposób konfiguracji się zmienił od czasu artykułu, czy też jakoś spieprzyłem. Jeśli powyższa odpowiedź nie działa, spróbuj /srv/tftpzamiast tego umieścić plik testowy .
Gauthier

2
Należy pamiętać, że z Ubuntu 16.04, będziesz doświadczać error code 2 (access violation). Aby rozwiązać to umieścić tftpboot -sw server_args(nie prowadzącej ukośnik -sna końcu. Źródło: icesquare.com/wordpress/...
CharlesB

7

Możesz zainstalować atftpdi utworzy katalog o nazwie, /tftpbootw którym możesz umieścić swoje pliki. Umieść tam szczególnie pxelinux.0plik. Wszelkie przyszłe konfiguracje zostaną rozwiązane, jeśli będzie to konieczne.

Po zainstalowaniu pakietu za pomocą

sudo apt-get install atftpd

użyje Debconf, aby poprosić cię o pewne wybory. Możesz ustawić wiele opcji (może się przydać limit czasu serwera), zwłaszcza ścieżka bazowa . Możesz także dostosować zakres multiemisji.


Do czego służy pxelinux.0? Uruchamiam cel VxWorks, więc pomyślałem, że potrzebuję tylko pliku vxworks w / tftpboot.
user1689961,

Przepraszam - to nie działało dla mnie.
user1689961,

Spróbuj zmienić nazwę vxworksna pxelinux.0, aby zobaczyć, czy moja odpowiedź będzie działać dla przyszłych użytkowników.
ζ--

to nie działa dla 13.04. Właśnie próbowałem
Bћовић

@ BЈовић To jest nieco stara odpowiedź i szczerze mówiąc, nie znam procedury dla 13.04.
ζ--

6

Możesz zainstalować tftpd-hpai zmienić konfiguracje. Kroki instalacji tftpd-hpa wyjaśniono w tym poście na blogu .


2
Chociaż teoretycznie może to odpowiedzieć na pytanie, lepiej byłoby zawrzeć tutaj istotne części odpowiedzi i podać odnośnik.
guntbert

1
zaliczyłem cię tylko dlatego, że tftpd-hpa jest głupim prostym serwerem tftp do użycia i tak naprawdę nie wymaga żadnej konfiguracji wymaganej w tym poście, po prostu upuść swoje pliki do / var / lib / tftpboot i jesteś ustawiony (na Ubuntu 16.04 nie jestem pewien o innym systemie operacyjnym).
mschuett,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.