Sddmはまだ始まっていませんが、理論的にはすべてがうまくいくでしょう!

Sddmはまだ始まっていませんが、理論的にはすべてがうまくいくでしょう!

しばらく前に、私はLinuxの冒険を始めることにしました。仮想マシン(VMware Workstation Pro)から始めましたが、すべてがうまく機能しました。私はKDE Plasmaデスクトップと一緒にDebian 10.4.0ディストリビューションを選択しました。私はDebianにとても満足していて、物理ドライブにインストールしました。残念ながら、sddmGNU GRUBメニューからDebian GNU / Linuxオプションを選択すると、起動が失敗します。

私はsddmが利用できない問題に対する多くの解決策を見つけましたが、どちらも役に立ちませんでした。 Debian GNU/LINUX の起動後に得られた内容は次のとおりです。

上記の数行には「Watchdog Hardware Disabled」があります。

私が最初に確認したことは、sddmがデフォルトのディスプレイマネージャとして設定され、有効なディレクトリを呼び出したことです/usr/bin/sddm。その後、有効にしようとしましたが、# systemctl enable sddm次のように表示されます。

ただし、入力すると# systemctl status sddm印刷されます。

どのように解決すべきかわかりません。 SDDMは表示されませんが、動作しているようです。多くの人が黒い画面の問題を抱えていますが、ご覧のとおりそうではありません。非公式の非無料インストールでDebianを再インストールしましたが、うまくいきました(以前は私のWi-Fiカードが検出されませんでした)。しかし、まだ動作しません。

役に立つなら、私のコンピュータの仕様は次のとおりです。

  • CPU:AMDライゼン7 3800X
  • GPU: MSI Geforce RTX 2070 Super Gaming X Trio
  • マザーボード:MSI MPG X570ゲーミングエッジWi-Fi

答え1

sddm.serviceシンボリックリンク/etc/systemd/system/display-manager.service(インストールしてデフォルトのディスプレイマネージャとして実行するように選択したXディスプレイマネージャを指す)によって開始されますgraphical.target

sddmGUIログイン画面/自動ログインセッションを開始できない場合は、手がかりを確認/var/lib/sddm/.local/share/sddm/xorg-session.logおよび/または/var/log/Xorg.0.log見つける必要があります。

必要なパッケージが欠落している可能性がありますxserver-xorg-video-*。 Geforce RTX 2070の場合、オープンソースソフトウェアはxserver-xorg-video-nouveauそれを処理できますが、xserver-xorg-video-nvidia非フリーソフトウェア(バージョン418。*以降)を使用すると、より良い結果が得られます。

RTX 2070を使用している場合は、xserver-xorg-video-nouveau一部のファームウェアファイルが必要な場合があります。これらのファイルはfirmware-misc-nonfree

有効な場合は、ステータスファイル、その設定ファイル、および/またはにあるデフォルトスクリプト、または対応するsysadmin-customisedバージョンstartxに問題がある可能性があります。sddm/var/lib/sddm/state.conf/etc/sddm.conf/usr/share/sddm/scripts/etc/sddm/


Debian 10 カンファレンスに関する詳細sddm: (ウェイランドではなく X11 を想定)

sddm起動時にXサーバー(/usr/bin/X)を起動し、/usr/share/sddm/scripts/Xsetupスクリプトを実行し(デフォルトで空)、sddm-greeter自動ログインが設定されていない場合は、ログインプロンプトを起動しますsddm.conf.desktopファイルに複数のセッションタイプが定義されている場合、グリーティングは、/usr/share/xsessions/以前のGUIログイン中にユーザーが選択したセッションタイプをデフォルトとして選択して提供します。この時点で、セッションタイプの選択は単にファイル$STARTUPで指定されたコマンドを指すように環境変数を設定します.desktop

実際のユーザーセッションはによって開始され/etc/sddm/Xsession、ログインしたユーザーとして実行され、GUIセッションのユーザーシェル環境を初期化して実行します/etc/X11/Xsessionsddmを含むすべての方法startx

(Waylandの場合、セッションスクリプトが/usr/share/sddm/scripts/wayland-session置き換えられる予定ですが、それ以降はどうなるのかわかりません。)

/etc/X11/XsessionさまざまなクラシックXセッションプロファイルがあることを確認してください。その後、/etc/X11/Xsession.d選択したセッション開始コマンドが実際にsddm-greeter存在することを確認し、そうでない場合は、通常の(sysadmin調整可能)デフォルト値に戻り、最後に実際に起動したスクリプトを取得します。 KDEセッションの場合、セッション開始コマンドはですexec /usr/bin/startkde

使用されるため、このコマンドは実行中のシェルプロセスのPIDとそのプロセスから以前に取得されたすべてのスクリプトをexec引き継ぎます。/etc/X11/Xsessionこのコマンドは、X ログインセッション全体の「キー」になります。このプロセスが終了すると、セッションは終了しsddmたと見なされ、完全なGUIログインセッションが終了します。スクリプトが/usr/share/sddm/scripts/Xstop実行され、Xサーバーがリセットされます。 、その後、xauth新しいクッキーが生成されます。前のセッションの残りのプロセスはこの時点でHUP信号を受信でき、通常は消えます。

答え2

いくつかの回避策を試した後、問題に対する答えを直接見つけました。 sddmは起動時に自動的に起動しませんが、

$ systemctl start sddm

rootとしてログインした後、正しく機能して次の変更を行いました。

$ ls /etc/rc3.d/S03sddm lrwxrwxrwx 1 ルート 2020 年 4 月 14 日 /etc/rc3.d/S03sddm -> ../init.d/sddm

到着する:

$ ls /etc/rc3.d/S07sddm lrwxrwxrwx 1 ルート 2020 年 4 月 14 日 /etc/rc3.d/S07sddm -> ../init.d/sddm

名前を変更すると、次の再起動後にすべてがうまく動作します!誰かに役立つことを願っています。

関連情報