TFTPサーバーをインストールして実行するにはどうすればよいですか?


60

Ubuntuコンピューターからカーネルを起動する必要があるVxWorksターゲットが埋め込まれています。TFTPサーバーをインストールして実行するにはどうすればよいですか?

回答:


103

TFTPサーバーのインストールとセットアップ

  1. 以下のパッケージをインストールします。

    sudo apt-get install xinetd tftpd tftp
    
  2. /etc/xinetd.d/tftpを作成し、このエントリを配置します

    service tftp
    {
    protocol        = udp
    port            = 69
    socket_type     = dgram
    wait            = yes
    user            = nobody
    server          = /usr/sbin/in.tftpd
    server_args     = /tftpboot
    disable         = no
    }
    
  3. / tftpbootフォルダーを作成します。これは、server_argsで指定したものと一致する必要があります。ほとんどはtftpbootになります

    sudo mkdir /tftpboot
    sudo chmod -R 777 /tftpboot
    sudo chown -R nobody /tftpboot
    
  4. xinetdサービスを再起動します。

    新しいシステム:

    sudo service xinetd restart
    

    古いシステム:

    sudo /etc/init.d/xinetd restart
    

これでtftpサーバーが稼働しました。

tftpサーバーのテスト

  1. tftpサーバーの/ tftpbootパスにコンテンツを含むtestという名前のファイルを作成します

    ifconfigコマンドを使用してtftpサーバーのIPアドレスを取得します

  2. 他のシステムでは、次の手順に従ってください。

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

ソース:http : //mohammadthalif.wordpress.com/2010/03/05/installing-and-testing-tftpd-in-ubuntudebian/


1
xinetdはupstartによって生成されるため、ステップ4のみを変更する必要があります。あなたは「サービスxinetdの再起動」でそれを再起動する必要があります
BЈовић

3
私はこの指示に従いましたが、許可が拒否されました!宛先ファイル名[c2950-i6q4l2-mz.121-22.EA1b.bin]?TFTP:エラーコード2を受信-アクセス違反%tftp://10.1.11.14/c2950-i6q4l2-mz.121-22.EA1b.binを開く際のエラー(許可が拒否されました) .EA1b.bin tftp:リモートホストのアドレスまたは名前[]?10.1.11.14宛先ファイル名[c2950-i6q4l2-mz.121-22.EA1b.bin]?TFTP:エラーコード2は、受信した-アクセス違反
モハメドRafiee

1
@Mohammad Rafiee:ここにリンクされているブログ投稿は、いくつかの情報を追加しました:sudo chmod -R 777 /tftpboot「Testing our tftp server」のステップ1と2の間で実行します。それが私を助けたわけではないが、他の人を助けたように見える。
ゴーティエ14

2
14.04には、これはうまくいきませんでした。についての情報は重要/tftpboot/etc/xinetd.d/tftpはないようでした。代わりに、クライアントはで/srv/tftp指定されたディレクトリを検索します/etc/inetd.conf。記事以降、セットアップの方法が変わったのか、それともなんとなく台無しになったのかどうかはわかりません。上記の答えがうまくいかない場合は、/srv/tftp代わりにテストファイルを入れてみてください。
ゴーティエ14

2
Ubuntu 16.04では、が発生することに注意してくださいerror code 2 (access violation)。それを修正するには、入れないtftpboot -sserver_args、(何も先頭のスラッシュを-s:ソース終わりicesquare.com/wordpress/...
CharlesB

7

あなたはインストールするatftpdことができ、/tftpbootあなたのファイルを置くことができると呼ばれるディレクトリを作成します。特にpxelinux.0ファイルをそこに置きます。必要に応じて、将来の構成に対処します。

でパッケージをインストールするとき

sudo apt-get install atftpd

Debconfを使用して、いくつかの選択を求めます。多くの選択肢を設定できます(サーバータイムアウトが役立つ場合があります)、特にbasepath。マルチキャスト範囲を調整することもできます。


pxelinux.0の目的は何ですか?VxWorksターゲットを起動しているので、/ tftpbootにあるファイルvxworksだけが必要だと思いました。
user1689961

申し訳ありません-それは私のために動作しませんでした。
user1689961

名前vxworkspxelinux.0に変更してみて、将来のユーザーに対して私の回答が機能するかどうかを確認してください。
–ζ

これは13.04では機能しません。私は試してみました
BЈовић

@BЈовићこれはやや古い答えであり、13.04の手順は正直わかりません。
–ζ

6

tftpd-hpa構成をインストールおよび変更できます。tftpd-hpaのインストール手順は、このブログ投稿で説明されています。


2
これは理論的には質問に回答するかもしれませんが、回答の重要な部分をここに含め、参照用のリンクを提供することが望ましいでしょう
ガントベルト

1
tftpd-hpaは使用する愚かな単純なtftpサーバーであり、実際にその投稿に必要な設定を必要としないので、あなたを支持しました他のOSについて)。
mschuett
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.