2

ncurses プログラムをデバッグしています。エコーと行バッファリングが無効になっています。

initscr();
cbreak();
noecho();

コンソール(モニターとキーボードが接続されている)およびsshで接続された端末で実行するとうまく機能します。

ただし、ログイン前の Linux ブート プロセス中に実行する必要があります。これは、/etc/init.d/rc3.d/ の下のスクリプトによって呼び出されます。プログラムは、ディスクをマウントするためのパスワードを要求します。

cbreak や noecho などのプログラム動作はまったく呼び出されません。Enter キーを押すまでプログラムの出力が表示されないため、パスワードはエコーされ、入力は行バッファリングされます。

これは、curses に必要な起動時に tty を初期化するために getty がまだ開始されていないためだと思われますが、よくわかりません。

そのような状況で呪いを使用する方法について何か考えはありますか?

よろしくお願いします。

4

0 に答える 0