2 votes

TFTP : Erreur du serveur : (2) Violation d'accès

J'essaie d'envoyer un fichier au serveur TFTP en utilisant la commande ci-dessous :

tftp -p -l test.txt xx.xx.xx.xx

Et l'utilisation du TFTP est :

BusyBox v1.13.2 (2011-03-24 18:58:44 CDT) binaire multi-appels

Utilisation : tftp [OPTION].... HÔTE [PORT]

Transférer un fichier depuis/vers un serveur tftp

Options : -l FILE Local FILE -r FILE Distant FILE -g Get file -p Put file

Lorsque j'ai essayé d'envoyer un fichier avec la commande ci-dessus, j'ai obtenu cette erreur : tftp: server error: (2) Access violation....

Mais si je crée test.txt (nom du fichier que je devais envoyer) sur le serveur manuellement et que j'essaie ensuite de le transférer sur le serveur, il se télécharge avec succès.

Comment puis-je envoyer le fichier sans création manuelle ?

J'utilise le service xinetd pour le serveur tftp, et voici son fichier de configuration.

/etc/xinetd.d/tftp : service tftp { protocole = udp port = 69 socket_type = dgram wait = yes utilisateur = root serveur = /usr/sbin/in.tftpd server_args = /tftpboot/ disable = no }

1voto

Jordan Kelwick Points 11

Voici donc comment j'ai résolu le problème.

# tail /var/log/syslog

La sortie de la commande ci-dessus indique que tftpd servait des fichiers provenant de /srv/tftp mais il n'y a aucune mention de /srv/tftp en /etc/xinetd.d/tftp .

Cet article a également aidé à résoudre le problème : http://toddharris.net/blog/2011/06/19/debugging-xinetd-at-system-launch/ . L'exécution de xinetd en mode débogage n'a pas causé ce problème.

Le coupable était la ligne tftp dans /etc/inetd.conf comme mentionné dans le lien suivant : http://www.beer.org/blog/category/tech-stuff.html Très probablement, lorsque xinetd fonctionne en tant que démon, le paramètre /etc/inetd.conf a la priorité sur les fichiers de configuration dans /etc/xinetd.d et c'est pourquoi ce problème se produit lorsque xinetd fonctionne comme un démon.

Commentez la ligne tftp dans /etc/inetd.conf et redémarrer xinetd et cela a réglé ce problème.

0voto

Unnati Gutpa Points 11

Ajouter -c à votre server_args :

server_args = -c /tftpboot/

Voir le page de manuel tftpd(8) .

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X