GNU/Linux >> Linux の 問題 >  >> Linux

Linux – Systemdでデスクトップに自動ログインする方法は?

できればログインマネージャーを使用せずに、デスクトップ環境に自動的にログインするようにsystemdを構成するにはどうすればよいですか? Archを使用しています。

承認された回答:

これはArchWikiで説明されています:

[email protected]のような新しいサービスファイルを作成します /etc/systemd/system/にコピーします

cp /usr/lib/systemd/system/[email protected] /etc/systemd/system/[email protected]

これは基本的に、既存の[email protected]をコピーします 新しいファイルに[email protected] これは自由に変更できます。 /etc/systemd/systemにコピーされます これは、サイト固有のユニットファイルが保存される場所だからです。 /usr/lib/systemd/system パッケージによって提供されるユニットファイルが含まれているため、そこには何も変更しないでください。

次に、その[email protected]をシンボリックリンクする必要があります 自動ログインするttyのgettyサービス、たとえばtty1:

ln -s /etc/systemd/system/[email protected] /etc/systemd/system/getty.target.wants/[email protected]

これまでのところ、これは通常の[email protected]と同じです。 ファイルですが、最も重要な部分は[email protected]を変更することです 実際に自動的にログインします。
これを行うには、ExecStartを変更するだけです。 読む行

ExecStart=-/sbin/agetty -a USERNAME %I 38400

ExecStartの違い [email protected]の行 および[email protected] -a USERNAMEのみです これはagettyにユーザー名USERNAMEでユーザーを自動的にログインするように指示します。

これで、systemdにデーモンファイルをリロードしてサービスを開始するように指示するだけで済みます:

systemctl daemon-reload
systemctl start [email protected]

(すでにtty1にログインしている場合、サービスが正しく開始されるかどうかはわかりません。最も安全な方法は、サービスを開始する代わりに再起動することです)。

その後、Xを自動的に起動する場合は、次のスニペットを~/.bash_profileに挿入します。 (再びwikiから取得):

if [[ -z $DISPLAY ]] && [[ $(tty) = /dev/tty1 ]]; then
    exec startx
fi

~/.xinitrcを変更する必要があります デスクトップ環境を開始する方法は、DEによって異なり、おそらくArchwikiにも記載されています。


Linux
  1. PlexyDeskを使用してLinuxデスクトップの機能を拡張する方法

  2. Linuxでコマンドラインからジオロケーションを取得する方法

  3. LinuxデスクトップにGNS3をインストールする方法

  1. Linuxデスクトップでカーネルをアップグレードする方法

  2. Linux – SystemdでTtyを減らす方法は?

  3. Linuxでパスワードを確認するには?

  1. Electronを使用してLinuxデスクトップアプリを構築した方法

  2. Linux専用サーバーにred5をインストールする方法

  3. LinuxでSystemctlを使用してSystemdサービスを管理する方法