
コンソールの色を指定しようとしましたが、ルートで次の成功を収めました.bash_profile
。
echo -en "\e]P7000000"
echo -en "\e]P0F0F0F0"
clear
問題は、これがルートが初めてログインしたときにのみ開始されることです。mingetty
正しいコンソールカラーを自動的に設定する方法はありますか?提案されたソリューションは、ほとんどのシステムと同様に、RHEL6とRHEL7(つまりsystemd)で動作する必要があります。これは、ターミナルエミュレータやSSH以外の一般的なコンソールカラーに関するものです(電子は関係がなく、後者がユーザー設定の問題と見なされることに同意します)。
答え1
あなたは置くことができます言葉コメントに示されているように文字をエスケープします/etc/issue
(Red Hatは時々これを行います)。クイックテスト後は動作しますが、テキスト。背景は無色です。 viでは、テキストは次のようになります。
^[]P7000000^[]P0F0F0F0\S
Kernel \r on an \m
結果は次のとおりです。
画面が消去されると、色がウィンドウを塗りつぶします。例えば、
^[]P7000000^[]P0F0F0F0^[[2J\S
Kernel \r on an \m
その中にはviに挿入された^[
ASCII文字とエスケープ文字があります。escapecontrolV
修正は、問題が発生したときに機械で修理できる /etc/issue
限り比較的安全です。ログインする前にファイルを印刷してください。ssh
mingetty
ssh
しかし、同じように修正したいかもしれません/etc/motd
(結局、それも印刷されます。) しかし、これは問題を引き起こします。スクリプトで一度\e
交換すると言葉ASCIIエスケープ文字
echo -en "\e]P7000000"
echo -en "\e]P0F0F0F0"
あなたは得るでしょう
escape]P7000000
escape]P0F0F0F0
エスケープシーケンス標準(ECMA-48)は、escape]次のように指定します。オペレーティングシステムコマンドこれは〜になります文字列終端。 Linuxコンソールの実装では使用できません。 .sshを使用して誤って終了したエスケープシーケンスを印刷しようとすると、ssh/etc/motd
に接続すると興味深く混乱する端末ロックが発生する可能性がありますxterm
。 resourcesに回避策(少なくともxtermの場合)がありますbrokenLinuxOSC
。
追加資料: