2017-03-15 5 views
1

私は、デフォルトのコンソールをttyS0から別のttySxに変更する必要があるオフィスで、小さな組み込みLinuxプラットフォームで作業しています。 ttyS0が有効で、デフォルトのコンソールです。 他のttySを有効にして、それを正しく探知しました。私はID = 4を与えました。つまり、これを/ dev/ttyS4として適切に見ることができます。Linuxコンソールが変更されました。印刷OK、読み取りNOK

だからからCMDLINE修飾:

CMDLINE=...console=ttyS0,921600n8 console=tty0... 

CMDLINE=...console=ttyS4,921600n8 console=tty0... 
へのUARTはFTDIチップに接続されています。 console = ttyS0このシェルは正常に読み書きできます。 console = ttyS4私はカーネルが何を表示するかを見ることができますが、私が書いたものはLinuxでは無視されます。

私は新しいttyS4のTX/RXをチェックしました。私はこのCOMポートにパテのセッションを開いています。 SSH経由でログインすると、私はいくつかのテストをしたLinuxのファイルシステムへのアクセス権を持っている:

echo 1234 > /dev/ttyS4   
echo 1234 > /dev/console 

どちらも上記のコマンドが正常にttyS4に対応したパテウィンドウに「1234」を印刷します。その後

:猫上記

cat /dev/console    
cat /dev/ttyS4 

どちらも、私は&は私のパテウィンドウのEnter入力する内容に成功表示を指令します。 これは、ttyS4の電気接続とドライバがうまく機能していることを意味します。 しかし、このパテウィンドウでファイルシステムにアクセスしようとすると、私はできません。 Enterを入力すると、新しい空行だけが表示されます。 新しいコンソール= ttyS4のように、私はLinuxに書き込むデータを転送しません。

私は猫の/ proc/cmdlineを

に任意のヘルプ感謝を入力するとき、私は新しいconsole=ttyS4,921600n8 console=tty0を見ることができます。

+1

を実行することができますが、このコンソール上で実行されているのgettyを持っていますか? –

+0

いいえ、それは問題でした。私は新しい定義されたコンソールでgettyを手作業で起動しなければならないことに気づいていませんでした。私はちょうど/ etc/inittabにエントリを追加しました。フィードバックをお寄せいただきありがとうございます。 – mdaniel

答えて

1

コンソールは単なる入出力デバイスです。シェルログインに使用する場合は、gettyを起動してください。 sysvinitで

、あなたが/etc/inittab、コピーを編集するか、そこに行をコメントアウトすることでこれを行うことができます。systemdにして

4:2345:respawn:/sbin/getty 38400 tty4 

を、あなたは

systemctl enable console-getty.service [email protected] 
関連する問題