• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ftpがbashで認識しない?(xinetd) )

FTPがbashで認識しない?(xinetd)

このQ&Aのポイント
  • Linux:debian lennyをインストールし、自宅サーバを作ろうとしている初心者です。
  • ftpがbashで認識しない問題に遭遇しています。
  • xinetdが正しく起動しているのに、ftpが認識されない原因を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • vaidurya
  • ベストアンサー率45% (2714/5983)
回答No.2

ftpというコマンドはあるけど… ftpサーバーとかftpデーモンという言葉を使わず "ftpはPROFTPD"とか書く時点で、勘違いがあることが見て取れます。 どこで勘違いしているのかがわからないほどのレベルの話ですが たとえば、ウェブブラウザーとしてfirefoxをインストールして webbrowserとタイプして起動するという話はありませんし ftpというコマンドを導入していないのに、それが通るわけがありません。 また、サーバーマシンは通常ログインして サーバープログラムを手動起動するようなものではありません。 サーバー管理の基本として、サーバープログラムの起動方法が広く知られています。 ようするに、まず基本から学ぶこと無く、突然サーバーを建てるのが無謀。 debianでftpサーバーを運用するための手順を 具体的に紹介している書籍なりウェブサイトは多々あります。 一般的には、OSを問わず、その知識と能力のレベルでは インターネットに公開されたサーバーを運用することは インターネットに対する公害だと言われています。

t_yasu
質問者

お礼

ご指導ありがとうございます。 ご指摘通り、サーバーは初めての試みでわからないことだらけです。 サーバの本は数冊買っていますが、まだ熟読できておりません。 インターネットに対する公害だと言われています 全くその通りとおもいます。 サーバーを公開するときは、もっと理解を深め、絶対安全を確認してから おこないます。 お忙しい中、ご教示して頂き、誠にありがとうございました。 今後ともよろしくお願い致します。

その他の回答 (3)

  • Wr5
  • ベストアンサー率53% (2173/4061)
回答No.4

なんというか… No.2さんの意見に全面的に同意です。 >の確認でbashがcommand not found ftpってコマンド指定されたけど、そんなコマンドどこにも見つかりませんぜ? とbashが言ってます。 >/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin >になっておりまして、どこにもFTPはありませんでした。 pathはディレクトリを指定するモノで、コマンドのファイルを指定するモノではありません。 よって、ftpコマンドの使用できる私の環境でも「FTP」はありません。 >実際にftpは存在しなくて、xinetdがftpをproftpdに変換してくれると思っておりました。 xinetdは設定されたポートで待ち受けして、接続があった場合に設定されているプログラム(通常はサーバプログラム)を起動し、接続されたソケットを受け渡します。 また、/etc/xinetd/の下にあるのは設定ファイルであり、ftpというファイル名とサーバプログラムはまったく無関係です。 # ftpのサービスの内容に関して記述したファイルをwebattackとしようが関係ありません。 「service ftp」と書かれているのは待ち受けするポート番号を指定しているだけです。 man xinetd.confを参照して下さい。 その上で…サーバとクライアントの区別付いていますか?

t_yasu
質問者

お礼

ご指導ありがとう御座います。 私の勉強不足での不可思議な質問をしていまい、申し訳ありませんでした。 初心者の私にご丁寧なご指導していただき、感謝しております。 その上で…サーバとクライアントの区別付いていますか? 全くそのとりで、FTPにサーバとクライアントの2種類があるとは 知りませんでした。 これを機会にサーバの書籍を購入し勉強を始めます。 お忙しい中、時間を使って頂きありがとう御座いました。

  • mimzy
  • ベストアンサー率33% (32/96)
回答No.3

私が初心者だったころOSSコミュニティーに皆さんはどんな初歩的な 質問にも答えてくださる方がいたものです。 質問者はFTP仕組みが理解できてないようです。 FTPにはServerとClientとがあってあなたがインストールしたPROFTPDは Server programです。Clientがまだインストールされていません。 DebianならSynaptic Package Managerからftpというのを 探してクリックすると詳細にThe FTP clientと記してあるはずです。 Clientは色々あってNcftpとかGUIがいいならGftpというのがあります。 Clientによって機動コマンドが違うので注意しましょう。 Clientがインストールできたら、再度"ftp localhost"実行しましょう。 あなたが熟練者になったとき初歩の質問にも答えてあげてください。 めげずにがんばってね。

t_yasu
質問者

お礼

ご回答、ご指導して頂きありがとうございます。 >質問にも答えてくださる方がいたものです ご回答の皆様の中には、厳しいご指摘もありましたが、実際には一番重要なことと 認識しております。(大変ありがたいご回答でした) インターネットの将来を考えると一番重要なことかなと再認識しております。 前回のお礼のメールでも書きましたが、今回の知識不足は、 FTPがサーバとクライアントの2種類あることを知りませんでした。 ですから、サーバ側をインストールしたもので、全てが動くと錯覚していました。 これから、ご指導を受けた事項をやってみます。 >あなたが熟練者になったとき初歩の質問にも答えてあげてください。 >めげずにがんばってね 実際には少々めげていますが、それを肥やしに勉強していきます。 熟練者は当分先にになりそうですが、私も早く回答者になれるように頑張ります。 ほんとうに、ありがとうございました。

  • 774danger
  • ベストアンサー率53% (1010/1877)
回答No.1

ftpd(ftpサーバ)側の問題じゃなくて、ftpクライアント側の問題でしょう ftpクライアントがあるディレクトリにpathが通ってないだけでは? debianのマシンが手元にないのですが、 /usr/bin/ftp のようにfull pathで書いたらどうなりますか? それで起動できるのであれば、/usr/binにpathを通しましょう

t_yasu
質問者

お礼

早急なご回答ありがとうございます。 現在のパスを確認しましたら echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin になっておりまして、どこにもFTPはありませんでした。 実際にftpは存在しなくて、xinetdがftpをproftpdに変換してくれると思っておりました。 xinet.dの下のディレクトリにftpの記述があります。 service ftp { socket_type = stream wait = no user = root server = /usr/sbin/in.proftpd server_args = /etc/proftpd/proftpd.conf log_on_success += DURATION USERID log_on_failure += USERID nice = 10 disable = no } また、上記の通りxinetdにはftpを設定してあります。 xinetdの中の記述(コマンド)はbashにはパスが通らないのでしょうか。 またxinetdに設定したftpは実際にインストールしたproftpdと入力しないといけないのでしょうか。 大変恐縮ですが、再度ご回答お願い致します。

t_yasu
質問者

補足

ここに載せているのはすべてサーバマシンのことです。 #ftp localhost の確認でbashがcommand not found を出力します。 補足まで