「Getty」の版間の差分
Kusanaginoturugi (トーク | 投稿記録) (→参照: add TranslationStatus.) |
(→インストール: 同期) |
||
(同じ利用者による、間の1版が非表示) | |||
15行目: | 15行目: | ||
代替手段は次の通りです。 |
代替手段は次の通りです。 |
||
− | * {{App|mingetty|自動ログインができる最小主義の getty |
+ | * {{App|mingetty|自動ログインができる最小主義の getty|https://aur.archlinux.org/packages/mingetty/|{{AUR|mingetty}}}} |
− | * {{App|mgetty|Unix でモデムを使うのに適した汎用プログラム。|http://mgetty.greenie.net/|{{AUR|mgetty}}}} |
||
== ヒントとテクニック == |
== ヒントとテクニック == |
||
57行目: | 56行目: | ||
{{Tip| |
{{Tip| |
||
− | * デフォルトの {{ic|getty@.service}} にあるオプション {{ic|1=Type=idle}} は、すべてのジョブ |
+ | * デフォルトの {{ic|getty@.service}} にあるオプション {{ic|1=Type=idle}} は、すべてのジョブ(ユニットへの状態変更リクエスト)が完了するまでサービスの起動を遅らせ、ログインプロンプトがブートメッセージで汚染されないようにします。[[xinit#ログイン時に X を自動起動|X を自動的に開始する]]場合、ドロップインファイルに {{ic|1=Type=simple}} を追加して {{ic|getty@tty1.service}} を直ちに開始することが有用です。初期化システムと ''startx'' の両方を[[サイレントブート|サイレントモード]]にして、ブート中のメッセージが混在しないようにすることができます。 |
* ログインプロンプトを完全に非表示にする仮想コンソール drop-in ファイルの例については、[[サイレントブート#agetty]] を参照してください。 |
* ログインプロンプトを完全に非表示にする仮想コンソール drop-in ファイルの例については、[[サイレントブート#agetty]] を参照してください。 |
||
− | * 上記のスニペットは、loginctl のセッションタイプを {{ic|tty}} に設定します。必要であれば |
+ | * 上記のスニペットは、loginctl のセッションタイプを {{ic|tty}} に設定します。必要であれば(例えば[[xinit#ログイン時に X を自動起動|X を自動的に開始する]]場合など)、このファイルに {{ic|1=Environment=XDG_SESSION_TYPE=x11}} または {{ic|1=Environment=XDG_SESSION_TYPE=wayland}} を追加して、セッションタイプを手動で {{ic|wayland}} または {{ic|x11}} に設定することが可能です。 |
}} |
}} |
||
68行目: | 67行目: | ||
==== シリアルコンソール ==== |
==== シリアルコンソール ==== |
||
− | [[ドロップインファイル]]を作成します |
+ | [[ドロップインファイル]]を作成します: |
{{hc|/etc/systemd/system/serial-getty@ttyS0.service.d/autologin.conf|2= |
{{hc|/etc/systemd/system/serial-getty@ttyS0.service.d/autologin.conf|2= |
||
96行目: | 95行目: | ||
=== 仮想コンソールのデフォルトユーザーのログイン時に、パスワード入力のみ表示する === |
=== 仮想コンソールのデフォルトユーザーのログイン時に、パスワード入力のみ表示する === |
||
− | Getty はデフォルトユーザーで仮想コンソールからログインする際に、パスワードを入力しますが、ユーザー名を入力する必要はありません。例えば、{{ic|tty1}} 上で {{ic|''username''}} のパスワードを要求する場合です |
+ | Getty はデフォルトユーザーで仮想コンソールからログインする際に、パスワードを入力しますが、ユーザー名を入力する必要はありません。例えば、{{ic|tty1}} 上で {{ic|''username''}} のパスワードを要求する場合です: |
{{hc|/etc/systemd/system/getty@tty1.service.d/skip-username.conf|2= |
{{hc|/etc/systemd/system/getty@tty1.service.d/skip-username.conf|2= |
||
116行目: | 115行目: | ||
* [[カーネルパラメータ]]から {{ic|quiet}} を必ず削除してください。 |
* [[カーネルパラメータ]]から {{ic|quiet}} を必ず削除してください。 |
||
* KMS の起動が遅いと、最初の数回のブートメッセージがクリアされないかもしれません。[[カーネルモード設定#KMS の早期開始]] か [[カーネルモード設定#モード設定を無効にする]] を参照してください。 |
* KMS の起動が遅いと、最初の数回のブートメッセージがクリアされないかもしれません。[[カーネルモード設定#KMS の早期開始]] か [[カーネルモード設定#モード設定を無効にする]] を参照してください。 |
||
+ | }} |
||
+ | |||
+ | === タイムアウト後にディスプレイをオフにする === |
||
+ | |||
+ | システムをサーバーとして使用していてもディスプレイが接続されている場合、ディスプレイは常にオンのままになります。 |
||
+ | ディスプレイを5分後にオフにするには、[[ドロップインファイル]] を作成してください。 |
||
+ | キーを押すとディスプレイが再びオンになります。 |
||
+ | |||
+ | {{hc|1=/etc/systemd/system/getty@tty1.service.d/blankscreen.conf|2= |
||
+ | [Service] |
||
+ | ExecStartPost=-/usr/bin/setterm --blank 5 |
||
}} |
}} |
||
2025年2月25日 (火) 18:47時点における最新版
関連記事
getty はターミナルのラインと接続されたターミナルを管理するプログラムの総称です。getty の目的は権限のないアクセスからシステムを保護することにあります。通常、getty のプロセスは systemd によって起動され、ターミナルのラインを管理します。
目次
インストール
Arch Linux におけるデフォルトの getty プログラムは agetty
であり、util-linux パッケージの一部です。
代替手段は次の通りです。
- mingetty — 自動ログインができる最小主義の getty
ヒントとテクニック
階段効果
agetty はログインを待っている間、TTY の設定を変更し、改行が CR-LF に変換されないようにします。このため、コンソールに出力されるメッセージに「階段効果」が発生する傾向があります。
これは全く無害ですが、一度ログに記録されると持続する場合、この動作を修正することができます。
$ stty onlcr
この件に関しては、こちらの forums discussion を参照してください。
仮想コンソールの追加
Agetty は仮想コンソールを管理し、Arch Linux ではデフォルトで 6 つの仮想コンソールが提供されています。通常、Ctrl+Alt+F1
から Ctrl+Alt+F6
までのキーでアクセスできます。
/etc/systemd/logind.conf
ファイルを開き、オプション NAutoVTs=6
をブート時に必要な仮想端末の数に設定します。
必要に応じて、getty@ttyN.service
サービスを直接一時的に開始することもできます。
仮想コンソールに自動ログイン
agetty に渡されるデフォルトパラメータを上書きする systemd のドロップインファイルを使って設定を行います。
設定は仮想コンソールとシリアルコンソールで異なります。ほとんどの場合、設定するのは仮想コンソールの自動ログインでしょう。デバイス名は ttyN
で、N
が数字です。シリアルコンソールのデバイス名は ttySN
のようになり、N
は同じく数字になります。
仮想コンソール
getty@tty1.service
のために次の内容でドロップインファイルを作成します:
/etc/systemd/system/getty@tty1.service.d/autologin.conf
[Service] ExecStart= ExecStart=-/sbin/agetty -o '-p -f -- \\u' --noclear --autologin username %I $TERM
完全な自動ログインを望まないが、ユーザー名を入力したくない場合は、仮想コンソールログイン時にデフォルトユーザーのパスワードのみを要求するを参照してください。
tty1 以外の tty を使用したい場合は、デフォルトの getty 数を変更する方法を参照してください。
シリアルコンソール
ドロップインファイルを作成します:
/etc/systemd/system/serial-getty@ttyS0.service.d/autologin.conf
[Service] ExecStart= ExecStart=-/usr/bin/agetty --autologin username -s %I 115200,38400,9600 vt102
Nspawn コンソール
systemd-nspawn コンテナに自動ログインするには、console-getty.service
を上書きするためにドロップインファイルを作成します:
/etc/systemd/system/console-getty.service.d/autologin.conf
[Service] ExecStart= ExecStart=-/sbin/agetty -o '-p -f -- \\u' --noclear --keep-baud --autologin username - 115200,38400,9600 $TERM
machinectl login my-container
メソッドを使用してコンテナにアクセスする場合は、pts/[0-9]
仮想 tty を管理する container-getty@.service
テンプレートも調整してください:
/etc/systemd/system/container-getty@.service.d/autologin.conf
[Service] ExecStart= ExecStart=-/sbin/agetty -o '-p -f -- \\u' --noclear --keep-baud --autologin username - 115200,38400,9600 $TERM
仮想コンソールのデフォルトユーザーのログイン時に、パスワード入力のみ表示する
Getty はデフォルトユーザーで仮想コンソールからログインする際に、パスワードを入力しますが、ユーザー名を入力する必要はありません。例えば、tty1
上で username
のパスワードを要求する場合です:
/etc/systemd/system/getty@tty1.service.d/skip-username.conf
[Service] ExecStart= ExecStart=-/sbin/agetty -o '-p -- username' --noclear --skip-login - $TERM
tty1 にブートメッセージを残す
デフォルトで、Arch では getty@tty1
サービスが有効になっています。サービスファイルは既に --noclear
を使うようになっているので、agetty が画面をクリアすることはありません。しかし、systemd は起動する前に画面をクリアします。この動作を無効にするには、ドロップインファイルを作成します。
/etc/systemd/system/getty@tty1.service.d/noclear.conf
[Service] TTYVTDisallocate=no
タイムアウト後にディスプレイをオフにする
システムをサーバーとして使用していてもディスプレイが接続されている場合、ディスプレイは常にオンのままになります。 ディスプレイを5分後にオフにするには、ドロップインファイル を作成してください。 キーを押すとディスプレイが再びオンになります。
/etc/systemd/system/getty@tty1.service.d/blankscreen.conf
[Service] ExecStartPost=-/usr/bin/setterm --blank 5