0

AVR上のCから組み込みLinuxプラットフォームに移行しています。

デバイスに最初にログインするためのtelnet「管理コンソール」をプログラムする方法(bashスクリプト/ cプログラムなど)に関するいくつかの「ベストプラクティス」の提案に感謝します(カーネルが機能し、単純な「helloworld」cプログラムを実行できるようになりました) )次に、ユーザーが「setmsc」などのコマンドを入力できるようにします。コンソールでapnの入力を求められますか?ユーザー名?パスワード...など

acプログラムを「telnetサーバー」として記述し、ソケットを介したtelnetクライアント接続を待機して実行しますか?または、組み込みLinuxに他のアプローチはありますか?ありがとうございました。

4

2 に答える 2

0

ベスト プラクティスは、おそらく既存のソリューションを使用することです。たとえば、組み込みボード (ARM および x86 プラットフォーム) にはopensshを使用し、デバッグにはシリアル コンソールを使用します。これらはどちらも、ログイン処理とそのすべてを無料で提供します.

さらに、カーネルと rootfs はPTXdistで作成されるため、標準のホスト コンピューターから新しいアプリケーションとパッケージを簡単に追加、処理、およびクロスコンパイルできます。それは問題なく動作し、完全なアプリケーションを他のプラットフォームに実際に移植することも非常に簡単になります。

于 2012-04-08T10:25:47.127 に答える
0

まず、デバイスとの通信が暗号化されるように、ターゲットでdropbear(lightweight ) を使用することをお勧めします。必要な場合にのみ含めてください。sshdtelnetd

どちらの方法 (または両方) を選択しても、dropbear/telnetd を開始するには、いくつかのスクリプトをセットアップする必要があります。これは、ディストリビューションによっては注意が必要です。

次に、システムの管理に使用されるデバイスでアカウントをセットアップし、そのユーザー シェルをカスタム CLI にします。(この情報は /etc/passwd に保存されます)

その後、CLI は適切と思われる言語で実装できます。ユーザー側の telnet または ssh クライアントに接続される stdin/stdout を読み書きするだけです。すべての telnet ロジックは、ユーザーの認証を管理するためtelnetdに呼び出される によって処理されます。loginこれらのアプリケーションはどちらも利用可能busyboxで、ルート ファイルシステムの一部である可能性が最も高いでしょう。

于 2012-08-22T11:24:34.997 に答える