質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

FTP

FTP(File Transfer Protocol)は、ネットワークでのファイル転送を行うための通信プロトコルの1つである。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Q&A

解決済

2回答

1611閲覧

ftpによるファイル受信機能

Gammodler

総合スコア9

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

FTP

FTP(File Transfer Protocol)は、ネットワークでのファイル転送を行うための通信プロトコルの1つである。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

0グッド

1クリップ

投稿2019/09/11 11:44

やや特殊な事例かもしれません。

Microzed
Windows10 64Bit
petalinux 2019.1
開発用OS:CentOS-7-1708+Hyper-V
で開発中です。

CentOS上で作成したBinaryファイルをTargetのMicrozedにftpで送信したいのですが不調です。
従来Target側で動作するpetalinuxがVersion2016.2のときはこの動作は問題ありませんでした。
これをPetalinux2019.1にVersionUpし、Hostからftp接続を試みると下記のErrorがでます:
WIndows 10 PowerŞhellより
ftp 192.168.1.5を発行、

Powershell画面に
PS C:\Users\user> ftp 192.168.1.5
192.168.1.5 に接続しました。
ftpd: invalid option -- 'w'
BusyBox v1.29.2 (2019-09-02 06:00:57 UTC)接続がリモート ホストによって閉じられました。
が表示されます。

Target側がftpサーバ機能を持っているためにFile受信が可能なのだと思うのですが、
これには開発用OSのあるfileの内容を変更、petalinux-configによりBuild条件を変更の上、
petalinux-build
をする必要があるのだと思います。
しかしこれと思う”条件”Fileには行き当たれませんでした。

3年前にpetalinux-2016.2では何らかの条件設定をしているはずなのですが、自身で行ったことが分からなりました。
このケースではTarget側の/var/ftpでCentoS側が送信したFileが受信できます。
/ftpはTarget起動後作成しています。

はなはだ無精な質問で恐縮ではありますが、よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

petalinuxについては知らないのですが質問の内容から

  • ftpdにbusyboxを使っている
  • 使用しているbuxyboxはftpdにおいてwオプション非サポートでビルドされている。
  • 接続時にftpdが起動されていることからinetdまたはxinetdを使っている。

と予想されるので

  • ftpdは以前使っていたものと同じか?(別途vsftpdなどを使っていなかったか?)
  • inetdまたはxinetdの設定ファイルを確認し、ftpdを起動するときのオプションを確認する。(以前の環境と現在の環境)

など調べてみるのがいいと思います。

投稿2019/09/11 12:58

nomuken

総合スコア1627

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Gammodler

2019/09/12 11:12

nomuken様 回答ありがとうございます。 GOの結果が得られないため苦慮しています。 petalinuxというLinuxはFPGAのXilinx社が提供するもので、CentOSの処理対象としてpetalinuxとうPackageを提供しています。 GO/NGの二つのVersionを比較してみました。 vsftpdはInstallしなくてもftpdの機能は備わっているようです。 設定Fileのinetd.confは探った結果 2016.2 ./build/linux/rootfs/targetroot/etc/inetd.conf 2019.1 project-spec/meta-plnx-generated/receipes-core/busybox/files/inetd.conf にあるらしいです。この内容を変更すると両者とも Target側の /etc/inetd.conf に反映されるので間違いないと思っています。 このFileの末尾に ftp stream tcp nowait root ftpd ftpd -w /var/ftp/ を追加してpetalinux-buildを実行するとimage.ubというFileが更新されます。 これがLinuxのシステムプログラムです。 その結果、2016.2では/var/ftp 動作は2016.2では/varに/va/ftp DIrが追加され、外部からFileの送受信が問題なく実行可能です。 一方2019.1ではWindow10 powerShellからftp 192.168.1.5を発行すると PS C:\Users\usr> ftp ftp> open 192.168.1.5 192.168.1.5 に接続しました。 ftpd: invalid option -- 'w' BusyBox v1.29.2 (2019-09-12 09:17:01 UTC)接続がリモート ホストによって閉じられました。 となってしまいます。 /var/ftp Dirも生成されていません。 inet.conf Fileからftpd -w Optionを省いてみると PS C:\Users\usr> ftp ftp> open 192.168.1.5 192.168.1.5 に接続しました。 220 Operation successful 接続がリモート ホストによって閉じられました。 ftp> bye という風に明らかにいったんは接続に成功しているのです。 そのあとTarget側の事情で回線断になってしまいます。 FFFTPで接続してみました。 Target内部のFileをWindows側に引き出すことに成功しました。 しかし逆方向はNGでした。 以上本問題はpetalinuxのVersionの差が原因であることが分かりました。 ですからこのスレッドは終了しているのかもしれません。 しかし何かご示唆いただけることがあればお願いいたします。
nomuken

2019/09/12 12:00

ftpdのwオプションはbusyboxの設定項目CONFIG_FEATURE_FTPD_WRITEによって決まります。これがファイルのアップロードをサポートするか否かになるようです。 対策を簡単に述べると現状使っているbosyboxのビルド環境を準備して、設定ファイルを更新して、ビルドし、petalinuxに再統合すればよいわけです。ただ、私はpetalinuxの統合環境を持っていないですし、仕組みもわかってないのでこれ以上はわかりません。
Gammodler

2019/09/13 03:30

nomuken様 Resありがとうございます。 busyboxの仕組み、操作はこれから勉強し、希望する機能実現を目指します。
Gammodler

2019/09/13 03:35

nomuken様 ベストアンサーのマークを付ける操作を間違えました。 申し訳ありません。
guest

0

ベストアンサー

ftpに拘らず、scpコマンドでは駄目なのですか?

投稿2019/09/11 12:28

sage

総合スコア1216

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Gammodler

2019/09/11 13:10

回答ありがとうございます。 PowerShellより以下操作 指定されたパスが見つかりません。 PS C:\Users\user> scp 192.168.1.5:file /home The authenticity of host '192.168.1.5 (192.168.1.5)' can't be established. RSA key fingerprint is SHA256:3i7wXuiXuLRai41Uug/9rKGGnD6Kuky3CJa+HYYE2wI. Are you sure you want to continue connecting (yes/no)? Please type 'yes' or 'no': Warning: Permanently added '192.168.1.5' (RSA) to the list of known hosts. user@192.168.1.5's password: ← rootと入力 Permission denied, please try again. 以上のように送信しようとしているようです。しかしrootというpasswordを許してくれません。 これ以外のpasswordは設定した覚えがありません。 でもこれは別の問題かもしれません。 残念ながら送信はできていません。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問