だからC言語で簡単なUIを作成しました。読み取り専用で、ディスク容量、ネットワーク情報などのシステム情報を表示します。
私はUbuntu Server 14.04を実行しており、現在のデバイスが起動すると、クラシックUbuntuのテキストログインとパスワードのプロンプトが表示されます。代わりに、私は私のプログラム実行可能ファイル(gccでコンパイルされた)がログインプロンプトの前に実行され表示されることを望みます。最良のアプローチは何ですか?
「用語」が不足していることをご了承ください。私はこの分野で比較的新しい人であり、シェルスクリプトの経験はあまりありません。この質問に回答するために追加情報が必要な場合はお知らせください。私自身も表現に苦労している。 :) よろしくお願いします!
編集:写真を通してアイデアを入手してください。ここに似たものがあります。アイデアを見せるために、インターネット検索中に見つけただけです。
編集2:ユーザーがログインする前にTUIを表示する方が良いですが、実際にはユーザーにログインとパスワードの入力を求める前か後であるかは問題ではありません。
答え1
テキストコンソールにユーザーがログインするのを待つプログラムが多いゲッティ。 (ところで、GUIログインに対応するプログラムの種類は、ディスプレイマネージャ)これもユーザー名を求めるプログラムです。パスワードを求めるプログラムはですlogin
。 gettyにはいくつかの実装があります。 Ubuntu 14.04のデフォルト値は次のとおりです。アジティ。
あなたの場合、最も簡単な解決策はagettyに1.ユーザー名の入力を求めるのではなく、2.プログラムを実行するスクリプトを呼び出してから電話をかけてユーザー名のプロンプトを表示するように指示するlogin
ことです。login
スクリプト:
#!/bin/sh
yourprogram
exec /bin/login
getty の設定方法:/etc/init/tty1.conf
他のコンソールに対して同様のファイルを編集します。行をexec
次に変更します。
exec /sbin/getty -l /path/to/script --skip-login -8 38400 tty1
もう一つの可能性は、gettyがファイルを表示するという事実を利用することです。/etc/issue
ログインプロンプトの前に。頻繁に変更されないテキストのみを表示したい場合は、そのテキストを書き込むことができます/etc/issue
。アレンジファイルには動的コンテンツがあります。、これはgetty呼び出しを変更するよりも少し難しいです。ただし、SSHなどの他のログインサービスでも機能します。