tftp - Error code 1: File not found












0















I need the correct syntax of tftp to get and put file. My ultimate goal is using busybox tftp (this should be second question), but it failed even trying to test with local Ubuntu tftp client.



As you can see below, ftp no issue, only tftp has issue. And this is loopback ip so shouldn't related to iptables (Again, ftp no issue). To prevent potential long path issue, I test with only home directory.



xb@dnxb:/tmp$ grep anon_root /etc/vsftpd.conf
anon_root=/home/xiaobai/
xb@dnxb:/tmp$ cat /home/xiaobai/haha
7
xb@dnxb:/tmp$ ftp 127.0.0.1
Connected to 127.0.0.1.
220 (vsFTPd 3.0.3)
Name (127.0.0.1:xiaobai): anonymous
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> get haha
local: haha remote: haha
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for haha (2 bytes).
226 Transfer complete.
2 bytes received in 0.00 secs (6.5541 kB/s)
ftp> 221 Goodbye.
xb@dnxb:/tmp$ tftp 127.0.0.1
tftp> get haha
Error code 1: File not found
tftp> get /home/xiaobai/haha
Error code 1: File not found
tftp> get /home/xiaobai/haha output
Error code 1: File not found
tftp> put /home/xiaobai/haha
Error code 1: File not found
tftp> put haha
Error code 1: File not found
tftp> xb@dnxb:/tmp$ dpkg-query -W -f='${Description}nn${Homepage}nMaintainer: ${Maintainer}nn' tftp
Trivial file transfer protocol client
Tftp is the user interface to the Internet TFTP (Trivial File Transfer
Protocol), which allows users to transfer files to and from a remote machine.
The remote host may be specified on the command line, in which case tftp uses
host as the default host for future transfers.

http://www.hcs.harvard.edu/~dholland/computers/netkit.html
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>

xb@dnxb:/tmp$


Then I folllow this answer:



xb@dnxb:/tmp$ tftp -v 127.0.0.1 -c get haha
usage: tftp host-name [port]
tftp> xb@dnxb:/tmp$
xb@dnxb:/tmp$ tftp -v 127.0.0.1 -c get /home/xiaobai/haha
usage: tftp host-name [port]
tftp> xb@dnxb:/tmp$
xb@dnxb:/tmp$ tftp -v 127.0.0.1 -c put haha
usage: tftp host-name [port]
tftp> xb@dnxb:/tmp$ tftp -v 127.0.0.1 -c put /home/xiaobai/haha
usage: tftp host-name [port]
tftp> ^F
?Invalid command
tftp> xb@dnxb:/tmp$
xb@dnxb:/tmp$


And also this answer (comment out or not seems not effect, I did do service vsftpd restart after edited):



xb@dnxb:/tmp$ grep server_args /etc/xinetd.conf 
# server_args = -c -s /tftpboot
xb@dnxb:/tmp$


It could better if someone can give answer about busybox tftp which has different option:



# busybox tftp                                    
BusyBox v1.22.1 bionic (2017-11-04 12:54 +0800) multi-call binary.

Usage: tftp [OPTIONS] HOST [PORT]

Transfer a file from/to tftp server

-l FILE Local FILE
-r FILE Remote FILE
-g Get file
-p Put file









share|improve this question

























  • How have you configured tftpd on the server? Note that the most common use for tftp (that I know of) is for gabbing a bootloader binary off a server for booting a diskless system. It's not really used for general file transfer (partly because the tftp protocol, which is not the same as ftp, has no way of authenticating users).

    – Kusalananda
    Mar 7 at 21:12













  • @Kusalananda I only install vsftpd and edit anon_root in /etc/vsftpd.conf. Yes, the deivce is a embedded device with pre-installed busybox tftp and out of my control to install other better client.

    – 林果皞
    Mar 7 at 21:18








  • 1





    Again, note that the FTP protocol is distinct from the TFTP protocol. vsftpd is, as far as I know, not a TFTP server. It is therefore not vsftpd that you connect against when using tftp.

    – Kusalananda
    Mar 8 at 8:08


















0















I need the correct syntax of tftp to get and put file. My ultimate goal is using busybox tftp (this should be second question), but it failed even trying to test with local Ubuntu tftp client.



As you can see below, ftp no issue, only tftp has issue. And this is loopback ip so shouldn't related to iptables (Again, ftp no issue). To prevent potential long path issue, I test with only home directory.



xb@dnxb:/tmp$ grep anon_root /etc/vsftpd.conf
anon_root=/home/xiaobai/
xb@dnxb:/tmp$ cat /home/xiaobai/haha
7
xb@dnxb:/tmp$ ftp 127.0.0.1
Connected to 127.0.0.1.
220 (vsFTPd 3.0.3)
Name (127.0.0.1:xiaobai): anonymous
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> get haha
local: haha remote: haha
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for haha (2 bytes).
226 Transfer complete.
2 bytes received in 0.00 secs (6.5541 kB/s)
ftp> 221 Goodbye.
xb@dnxb:/tmp$ tftp 127.0.0.1
tftp> get haha
Error code 1: File not found
tftp> get /home/xiaobai/haha
Error code 1: File not found
tftp> get /home/xiaobai/haha output
Error code 1: File not found
tftp> put /home/xiaobai/haha
Error code 1: File not found
tftp> put haha
Error code 1: File not found
tftp> xb@dnxb:/tmp$ dpkg-query -W -f='${Description}nn${Homepage}nMaintainer: ${Maintainer}nn' tftp
Trivial file transfer protocol client
Tftp is the user interface to the Internet TFTP (Trivial File Transfer
Protocol), which allows users to transfer files to and from a remote machine.
The remote host may be specified on the command line, in which case tftp uses
host as the default host for future transfers.

http://www.hcs.harvard.edu/~dholland/computers/netkit.html
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>

xb@dnxb:/tmp$


Then I folllow this answer:



xb@dnxb:/tmp$ tftp -v 127.0.0.1 -c get haha
usage: tftp host-name [port]
tftp> xb@dnxb:/tmp$
xb@dnxb:/tmp$ tftp -v 127.0.0.1 -c get /home/xiaobai/haha
usage: tftp host-name [port]
tftp> xb@dnxb:/tmp$
xb@dnxb:/tmp$ tftp -v 127.0.0.1 -c put haha
usage: tftp host-name [port]
tftp> xb@dnxb:/tmp$ tftp -v 127.0.0.1 -c put /home/xiaobai/haha
usage: tftp host-name [port]
tftp> ^F
?Invalid command
tftp> xb@dnxb:/tmp$
xb@dnxb:/tmp$


And also this answer (comment out or not seems not effect, I did do service vsftpd restart after edited):



xb@dnxb:/tmp$ grep server_args /etc/xinetd.conf 
# server_args = -c -s /tftpboot
xb@dnxb:/tmp$


It could better if someone can give answer about busybox tftp which has different option:



# busybox tftp                                    
BusyBox v1.22.1 bionic (2017-11-04 12:54 +0800) multi-call binary.

Usage: tftp [OPTIONS] HOST [PORT]

Transfer a file from/to tftp server

-l FILE Local FILE
-r FILE Remote FILE
-g Get file
-p Put file









share|improve this question

























  • How have you configured tftpd on the server? Note that the most common use for tftp (that I know of) is for gabbing a bootloader binary off a server for booting a diskless system. It's not really used for general file transfer (partly because the tftp protocol, which is not the same as ftp, has no way of authenticating users).

    – Kusalananda
    Mar 7 at 21:12













  • @Kusalananda I only install vsftpd and edit anon_root in /etc/vsftpd.conf. Yes, the deivce is a embedded device with pre-installed busybox tftp and out of my control to install other better client.

    – 林果皞
    Mar 7 at 21:18








  • 1





    Again, note that the FTP protocol is distinct from the TFTP protocol. vsftpd is, as far as I know, not a TFTP server. It is therefore not vsftpd that you connect against when using tftp.

    – Kusalananda
    Mar 8 at 8:08
















0












0








0








I need the correct syntax of tftp to get and put file. My ultimate goal is using busybox tftp (this should be second question), but it failed even trying to test with local Ubuntu tftp client.



As you can see below, ftp no issue, only tftp has issue. And this is loopback ip so shouldn't related to iptables (Again, ftp no issue). To prevent potential long path issue, I test with only home directory.



xb@dnxb:/tmp$ grep anon_root /etc/vsftpd.conf
anon_root=/home/xiaobai/
xb@dnxb:/tmp$ cat /home/xiaobai/haha
7
xb@dnxb:/tmp$ ftp 127.0.0.1
Connected to 127.0.0.1.
220 (vsFTPd 3.0.3)
Name (127.0.0.1:xiaobai): anonymous
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> get haha
local: haha remote: haha
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for haha (2 bytes).
226 Transfer complete.
2 bytes received in 0.00 secs (6.5541 kB/s)
ftp> 221 Goodbye.
xb@dnxb:/tmp$ tftp 127.0.0.1
tftp> get haha
Error code 1: File not found
tftp> get /home/xiaobai/haha
Error code 1: File not found
tftp> get /home/xiaobai/haha output
Error code 1: File not found
tftp> put /home/xiaobai/haha
Error code 1: File not found
tftp> put haha
Error code 1: File not found
tftp> xb@dnxb:/tmp$ dpkg-query -W -f='${Description}nn${Homepage}nMaintainer: ${Maintainer}nn' tftp
Trivial file transfer protocol client
Tftp is the user interface to the Internet TFTP (Trivial File Transfer
Protocol), which allows users to transfer files to and from a remote machine.
The remote host may be specified on the command line, in which case tftp uses
host as the default host for future transfers.

http://www.hcs.harvard.edu/~dholland/computers/netkit.html
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>

xb@dnxb:/tmp$


Then I folllow this answer:



xb@dnxb:/tmp$ tftp -v 127.0.0.1 -c get haha
usage: tftp host-name [port]
tftp> xb@dnxb:/tmp$
xb@dnxb:/tmp$ tftp -v 127.0.0.1 -c get /home/xiaobai/haha
usage: tftp host-name [port]
tftp> xb@dnxb:/tmp$
xb@dnxb:/tmp$ tftp -v 127.0.0.1 -c put haha
usage: tftp host-name [port]
tftp> xb@dnxb:/tmp$ tftp -v 127.0.0.1 -c put /home/xiaobai/haha
usage: tftp host-name [port]
tftp> ^F
?Invalid command
tftp> xb@dnxb:/tmp$
xb@dnxb:/tmp$


And also this answer (comment out or not seems not effect, I did do service vsftpd restart after edited):



xb@dnxb:/tmp$ grep server_args /etc/xinetd.conf 
# server_args = -c -s /tftpboot
xb@dnxb:/tmp$


It could better if someone can give answer about busybox tftp which has different option:



# busybox tftp                                    
BusyBox v1.22.1 bionic (2017-11-04 12:54 +0800) multi-call binary.

Usage: tftp [OPTIONS] HOST [PORT]

Transfer a file from/to tftp server

-l FILE Local FILE
-r FILE Remote FILE
-g Get file
-p Put file









share|improve this question
















I need the correct syntax of tftp to get and put file. My ultimate goal is using busybox tftp (this should be second question), but it failed even trying to test with local Ubuntu tftp client.



As you can see below, ftp no issue, only tftp has issue. And this is loopback ip so shouldn't related to iptables (Again, ftp no issue). To prevent potential long path issue, I test with only home directory.



xb@dnxb:/tmp$ grep anon_root /etc/vsftpd.conf
anon_root=/home/xiaobai/
xb@dnxb:/tmp$ cat /home/xiaobai/haha
7
xb@dnxb:/tmp$ ftp 127.0.0.1
Connected to 127.0.0.1.
220 (vsFTPd 3.0.3)
Name (127.0.0.1:xiaobai): anonymous
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> get haha
local: haha remote: haha
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for haha (2 bytes).
226 Transfer complete.
2 bytes received in 0.00 secs (6.5541 kB/s)
ftp> 221 Goodbye.
xb@dnxb:/tmp$ tftp 127.0.0.1
tftp> get haha
Error code 1: File not found
tftp> get /home/xiaobai/haha
Error code 1: File not found
tftp> get /home/xiaobai/haha output
Error code 1: File not found
tftp> put /home/xiaobai/haha
Error code 1: File not found
tftp> put haha
Error code 1: File not found
tftp> xb@dnxb:/tmp$ dpkg-query -W -f='${Description}nn${Homepage}nMaintainer: ${Maintainer}nn' tftp
Trivial file transfer protocol client
Tftp is the user interface to the Internet TFTP (Trivial File Transfer
Protocol), which allows users to transfer files to and from a remote machine.
The remote host may be specified on the command line, in which case tftp uses
host as the default host for future transfers.

http://www.hcs.harvard.edu/~dholland/computers/netkit.html
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>

xb@dnxb:/tmp$


Then I folllow this answer:



xb@dnxb:/tmp$ tftp -v 127.0.0.1 -c get haha
usage: tftp host-name [port]
tftp> xb@dnxb:/tmp$
xb@dnxb:/tmp$ tftp -v 127.0.0.1 -c get /home/xiaobai/haha
usage: tftp host-name [port]
tftp> xb@dnxb:/tmp$
xb@dnxb:/tmp$ tftp -v 127.0.0.1 -c put haha
usage: tftp host-name [port]
tftp> xb@dnxb:/tmp$ tftp -v 127.0.0.1 -c put /home/xiaobai/haha
usage: tftp host-name [port]
tftp> ^F
?Invalid command
tftp> xb@dnxb:/tmp$
xb@dnxb:/tmp$


And also this answer (comment out or not seems not effect, I did do service vsftpd restart after edited):



xb@dnxb:/tmp$ grep server_args /etc/xinetd.conf 
# server_args = -c -s /tftpboot
xb@dnxb:/tmp$


It could better if someone can give answer about busybox tftp which has different option:



# busybox tftp                                    
BusyBox v1.22.1 bionic (2017-11-04 12:54 +0800) multi-call binary.

Usage: tftp [OPTIONS] HOST [PORT]

Transfer a file from/to tftp server

-l FILE Local FILE
-r FILE Remote FILE
-g Get file
-p Put file






busybox vsftpd tftp tftpd






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Mar 7 at 23:12









Rui F Ribeiro

41.8k1483142




41.8k1483142










asked Mar 7 at 20:54









林果皞林果皞

2,4671433




2,4671433













  • How have you configured tftpd on the server? Note that the most common use for tftp (that I know of) is for gabbing a bootloader binary off a server for booting a diskless system. It's not really used for general file transfer (partly because the tftp protocol, which is not the same as ftp, has no way of authenticating users).

    – Kusalananda
    Mar 7 at 21:12













  • @Kusalananda I only install vsftpd and edit anon_root in /etc/vsftpd.conf. Yes, the deivce is a embedded device with pre-installed busybox tftp and out of my control to install other better client.

    – 林果皞
    Mar 7 at 21:18








  • 1





    Again, note that the FTP protocol is distinct from the TFTP protocol. vsftpd is, as far as I know, not a TFTP server. It is therefore not vsftpd that you connect against when using tftp.

    – Kusalananda
    Mar 8 at 8:08





















  • How have you configured tftpd on the server? Note that the most common use for tftp (that I know of) is for gabbing a bootloader binary off a server for booting a diskless system. It's not really used for general file transfer (partly because the tftp protocol, which is not the same as ftp, has no way of authenticating users).

    – Kusalananda
    Mar 7 at 21:12













  • @Kusalananda I only install vsftpd and edit anon_root in /etc/vsftpd.conf. Yes, the deivce is a embedded device with pre-installed busybox tftp and out of my control to install other better client.

    – 林果皞
    Mar 7 at 21:18








  • 1





    Again, note that the FTP protocol is distinct from the TFTP protocol. vsftpd is, as far as I know, not a TFTP server. It is therefore not vsftpd that you connect against when using tftp.

    – Kusalananda
    Mar 8 at 8:08



















How have you configured tftpd on the server? Note that the most common use for tftp (that I know of) is for gabbing a bootloader binary off a server for booting a diskless system. It's not really used for general file transfer (partly because the tftp protocol, which is not the same as ftp, has no way of authenticating users).

– Kusalananda
Mar 7 at 21:12







How have you configured tftpd on the server? Note that the most common use for tftp (that I know of) is for gabbing a bootloader binary off a server for booting a diskless system. It's not really used for general file transfer (partly because the tftp protocol, which is not the same as ftp, has no way of authenticating users).

– Kusalananda
Mar 7 at 21:12















@Kusalananda I only install vsftpd and edit anon_root in /etc/vsftpd.conf. Yes, the deivce is a embedded device with pre-installed busybox tftp and out of my control to install other better client.

– 林果皞
Mar 7 at 21:18







@Kusalananda I only install vsftpd and edit anon_root in /etc/vsftpd.conf. Yes, the deivce is a embedded device with pre-installed busybox tftp and out of my control to install other better client.

– 林果皞
Mar 7 at 21:18






1




1





Again, note that the FTP protocol is distinct from the TFTP protocol. vsftpd is, as far as I know, not a TFTP server. It is therefore not vsftpd that you connect against when using tftp.

– Kusalananda
Mar 8 at 8:08







Again, note that the FTP protocol is distinct from the TFTP protocol. vsftpd is, as far as I know, not a TFTP server. It is therefore not vsftpd that you connect against when using tftp.

– Kusalananda
Mar 8 at 8:08












1 Answer
1






active

oldest

votes


















1














tftp is usually restricted to /tftpboot directory, I wouldn't expect it to work to get something from a user home directory.



Also check the file permissions. IIRC (it has been awhile), since tftp is unauthenticated files need to be world readable.






share|improve this answer
























    Your Answer








    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "106"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: false,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: null,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f505003%2ftftp-error-code-1-file-not-found%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    1














    tftp is usually restricted to /tftpboot directory, I wouldn't expect it to work to get something from a user home directory.



    Also check the file permissions. IIRC (it has been awhile), since tftp is unauthenticated files need to be world readable.






    share|improve this answer




























      1














      tftp is usually restricted to /tftpboot directory, I wouldn't expect it to work to get something from a user home directory.



      Also check the file permissions. IIRC (it has been awhile), since tftp is unauthenticated files need to be world readable.






      share|improve this answer


























        1












        1








        1







        tftp is usually restricted to /tftpboot directory, I wouldn't expect it to work to get something from a user home directory.



        Also check the file permissions. IIRC (it has been awhile), since tftp is unauthenticated files need to be world readable.






        share|improve this answer













        tftp is usually restricted to /tftpboot directory, I wouldn't expect it to work to get something from a user home directory.



        Also check the file permissions. IIRC (it has been awhile), since tftp is unauthenticated files need to be world readable.







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Mar 8 at 2:08









        FitzFitz

        1952




        1952






























            draft saved

            draft discarded




















































            Thanks for contributing an answer to Unix & Linux Stack Exchange!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f505003%2ftftp-error-code-1-file-not-found%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            How to make a Squid Proxy server?

            第一次世界大戦

            Touch on Surface Book