2番目のXセッションを正常に実行するにはどうすればよいですか?

2番目のXセッションを正常に実行するにはどうすればよいですか?

startx -- :1 vt1아래 답변에 따라 기본적으로 XFCE를 사용하여 Debian 10에 로그인한 표준 사용자(stduser라는)를 사용하여 tty에서 실행하려고 합니다 .https://unix.stackexchange.com/a/85384

그러면 디스플레이도 깜박이는 것처럼 보이지만 이는 결국 실패합니다.

(==) Log file: "/var/log/Xorg.1.log"
(==) Using config directory: "/etc/X11/xorg.conf.d"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
xinit: connection to X server lost

에 따르면 /var/log/Xorg.1.log다음 줄까지는 모든 것이 괜찮아 보입니다.

[  3585.25] (++) using VT number 1
[  3585.25] (II) systemd-logind: logind integration requires -keeptty and -keeptty was not provided, disabling logind integration
[  3585.26] (II) xfree86: Adding drm device (/dev/dri/card0)
[  3585.26] (EE) /dev/dri/card0: failed to set DRM interface version 1.4: Permission denied

이는 완벽하게 작동하므로 소프트웨어 문제에 적합하고 이를 확인하는 것 같습니다 sudo startx -- :1 vt1. 하지만 그것은 내가 원하는 것이 아닙니다. 루트로 로그인한 동안에는 일부 소프트웨어를 실행할 수 없기 때문입니다.

대부분의 단서는 Optimus(Intel iGPU + Nvidia GPU)가 탑재된 PC와 관련되어 있기 때문에 여기서 막히게 됩니다.

일부 세부정보:

  • 私は約10年前のIntel HDグラフィックスしか持っていません(Intel IrisやeDRAM / L4 Cache / HBMなどの素晴らしい製品もなく、AMD、Nvidia、不都合な古いIntel GMA GPUもありません)。
  • デスクトップ管理者はlightdm
  • /home/stduser/.profileエクスポートに設定DISPLAY=:0.0し、XAUTHORITY=/home/stduser/.Xauthority環境変数に設定します。
  • 一部のディスプレイ/セッションの問題が解決されたため(まだ役に立ちません)、この修正も適用されました。「ルート」:「指定されたプロトコルなし」でGUIアプリケーションを実行できないのはなぜですか?
  • startx -- :1 vt1AntiX(軽量システムのないDebian)に適しています。

したがって、問題は、同じ標準ユーザーを使用して別のXセッションを正常に開始する方法です。


アップデート1:ジャイエンヌのヒントを適用

  • X :1「うまく」動作しているようですが、黒い画面のみが表示されます。
  • xinit -- :1「うまく」動作し、黒い画面にウィンドウなしのxtermが表示され、マウスカーソルを移動できるようになりました。

しかし。/var/log/Xorg.1.logsystemd-logind

アップデート2:これは実際には主にシステムの問題です。いつものように

以下を行う必要があります。

  1. 初期KMSの有効化i915ファイル/etc/initramfs-tools/modulesと終了行文字(単純な空の新しい行)に追加します(たとえば、初期KMSをサポートしている場合はGPUドライバ)。これを保存し、それを使用してupdate-initramfs -uinitramfsを更新します。

  2. ファイルを作成し/etc/modprobe.d/i915-kms.confoptions i915 modeset=1一般的な行末文字を追加して変更を保存します。

  3. コンピュータを再起動します。

次のコマンドを実行すると、次のようになります。 (すぐに更新中、今テスト中)

ただし、経験的にDebianで問題が発生した場合は、AntiXを使用してシステムの問題であることを確認してください。

i915 modeset=1アップデート2.1:何らかの理由でupdate-initramfs -u

  • update-initramfs -u -k all、その後
  • grub-customizer>General settingsタブ>ボックスを使用して編集内容をkernal parameters追加してi915.modesetting=1保存します。
  • 再起動、
  • 起動するカーネルを選択し、を押してeカーネルパラメータを編集します。
  • 再配置してからi915.modeset=1(そこにいることを確認してください)
  • 開始するにはF10を押します。
  • 確認してcat /sys/module/i915/parameters/modeset返品しましたが、1本当にそうでした。

ベストアンサー1

この既知のエラーを解決するために少し異なるアプローチを見つけたかもしれません。https://gitlab.freedesktop.org/xorg/xserver/-/issues/1021

デフォルトでは、デバイスを開く最初のプロセスは自動的にDRM「マスター」機能を付与され、ルートなしdrmSetInterfaceVersion()drmGetBusId()前者の後者の前提条件)などの操作を実行できます。しかし、その他同じ操作を実行するプロセスには、DRMマスター機能またはCAP_SYS_ADMIN(通常はCAP_SYS_ADMINと同じroot)がすでに存在している必要があります。これは、Xサーバーハードウェア検索ルーチンの作成者が予期しなかったことです。

このバグにより、次の2つが修正されました。

しかし、これらの修正はDebian 10には(少なくともまだ)出てこないようです。あなたの場合、最初の修正は重要です。

おそらく修正する必要がある3番目の修正があるかもしれませんdrmSetInterfaceVersion()。最初に変更しないと、実際のバスIDが利用できないという事実です。

おすすめ記事