Linuxカーネルは/usr/share/consolefontsのフォントを使用しますか?動作するカーネルは安全ですか?

Linuxカーネルは/usr/share/consolefontsのフォントを使用しますか?動作するカーネルは安全ですか?

オペレーティングシステム:Ubuntu 18.04。私はそれが配布に依存しないと思います。 Arch Linuxは同じ原則を使用しますが、これを別の方法で実装します。

ttyファイルを編集して設定したフォント/etc/default/console-setup

CODESET="guess"
FONTFACE="TerminusBold"
FONTSIZE="22x11"

フォントファイルはにあります/usr/share/consolefonts/psf形式があります。

~からウィキペディア:

PCFフォント(PSF)は、現在Linuxカーネルがコンソールフォントに使用するビットマップフォント形式です。 PSFファイル形式のドキュメントはLinuxカーネルのソースコードにあります。

質問:

  1. カーネルはこのファイルをカーネル空間にロードしますか?
  2. tty.psfそれ以外の場合は、ファイル(カーネル内)にある文字をどのようにレンダリングしますか/usr/share/consolefonts/
  3. 私は、信頼性とセキュリティ上の理由から、カーネルがユーザーファイル(カーネルモジュールを除く)を使用しない堅牢なコードスニペットだと思います。私は間違っていますか?それともコンソールフォントは例外ですか?
  4. .psfどのファイルがロードされたかをどのように確認できますか?/usr/share/consolefonts/フォルダにはコードセットの異なるファイルがたくさんあるためですTerminusBold22x11.psf.gz。どの特定のファイルが使用されるかを知りたいです。確認してみましたdmesgが、syslogそのような情報は見つかりませんでした。

ベストアンサー1

私は答えを見つけました4位Ubuntu 18.04の問題:

sudo strace -s99 setupcon 2>&1 | grep '.psf' 

出力

read(3, "/etc/console-setup/cached_Uni2-TerminusBold22x11.psf.gz\n", 128)

説明する:

setupconこのプログラムを使用すると、systemdオペレーティングシステムの起動時にコンソール設定を指定できます。このファイルで見ることができます。/lib/systemd/system/console-setup.serviceしたがってsetupcon、手動で繰り返すとstraceシステムコールを実行し、使用されたフォントファイルを見つけることができます。

インストーラ コンソールにフォントとキーボードをすばやく簡単に設定できるプログラムです。ほとんどの場合、パラメータなしでsetupconを呼び出します。キーボード構成は ~/.keyboard または /etc/default/keyboard で指定されます。フォント構成は以下で指定します。 ~/.console-設定または/etc/default/コンソール設定

おすすめ記事