追加読書

追加読書

私が望むのは、私のPCをDEC vt320端末に接続し、Linuxコンソールを出力して端末にコマンドを入力し、画面に応答を送信できるようにすることです。 Telnetで接続したいのですが、シリアル接続する方法がわかりません。私のシリアル接続は/dev/ttyS0です。

ベストアンサー1

Mint 19.3が使用されているように見えるsystemdので、Mintがsystemd親ディストリビューション(Ubuntuと最終的にDebian)の設定を変更しない限り、次のコマンドを使用して作業を実行する必要があります。

ターミナルスタイルのログインアクセス用にシリアルポートをすぐに起動するには、次の手順を実行します。

sudo systemctl start serial-getty@ttyS0 

再起動後も設定を維持するには、次の手順を実行します。

sudo systemctl enable serial-getty@ttyS0

最初のコマンドを実行すると、端末にログインプロンプトが表示されます。それ以外の場合は、ターミナルでEnterキーを1回または2回押します。端末が実行されているデータ転送速度を検出するのに役立ちます。

(シリアルポート速度とも呼ばれる)ボーレートただし、この用語はモデム接続とデジタル - アナログ変調に関連する同様の接続にのみ適用され、通常のデジタルデータ転送には適用されません。 )

シリアル接続端末の基本systemd構成には、毎秒115200、38400、および9600ビットのシリアルポート速度の自動検出が含まれます。コマンドを使用してこれを確認できますsystemctl cat serial-getty@ttyS0。そのシリアルポート用に自動的に生成されたデバイスファイルを出力します。とりわけ、端末管理の実際のプロセスを開始するには、次の行を含める必要があります。

ExecStart=-/sbin/agetty -o '-p -- \\u' --keep-baud 115200,38400,9600 %I $TERM

自動シリアルポート速度検出が正しく機能しない場合、またはデフォルトリストに含まれていない速度値を指定したい場合は、1つを生成する必要があります。ファイルの上書きこのシステムサービスの場合:

sudo systemctl edit [email protected]

このコマンドはファイルを作成し(必要な場合)、エディタで開きます。

たとえば、シリアルポート速度検出を57600bpsにロックするには、オーバーレイファイルに次の3行を作成します。

[Service]
ExecStart=
ExecStart=-/sbin/agetty -o '-p -- \\u' 57600 %I $TERM

最初の行は[Service]自動的に生成されたサービスファイルセクションの内容を上書きするように指定し、2行目はExecStart別の行を追加するのではなくその行を上書きすることを指定し、3行目はExecStart希望のポート速度を持つ新しい減ります。 /またはagetty端末プロセスを管理するための追加オプション。

Unixの世界では、これらのプロセスの伝統的な名前はありgetty、Linuxは一般的に改善されています(代替/utobauding)シリアルポートバージョン:agetty

おすすめ記事