AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题 / 476396
Accepted
zjeffer
zjeffer
Asked: 2018-10-19 10:11:44 +0800 CST2018-10-19 10:11:44 +0800 CST 2018-10-19 10:11:44 +0800 CST

Nvidia Optimus 笔记本电脑:startX 和 xinit 不起作用(Arch)

  • 772

我无法启动我的电脑,因为 Xserver 没有启动。奇怪的是,当我使用 SDDM 时,它启动得很好。几个月前我也尝试使用 Lightdm,但它不想启动,我猜是因为这个问题。

我遇到这个问题已经有一年了,但它从来没有真正困扰过我,因为我一直使用 SDDM。我想停止使用它,所以我需要修复它。

系统信息

新取:

OS: Arch Linux x86_64 
Host: 80WK Lenovo Y520-15IKBN 
Kernel: 4.18.14-arch1-1-ARCH 
Uptime: 10 mins 
Packages: 1554 (pacman) 
Shell: zsh 5.6.2 
Resolution: 1920x1080, 1920x1080 
DE: KDE 
WM: KWin 
WM Theme: Breezemite 
Theme: Breeze [KDE], Adwaita [GTK2], X-Arc-Plus [GTK3] 
Icons: Papirus-Light [KDE], Adwaita [GTK2], Papirus [GTK3] 
Terminal: konsole 
Terminal Font: DejaVu Sans Mono 10 
CPU: Intel i7-7700HQ (8) @ 3.800GHz 
GPU: Intel Device 591b 
Memory: 1758MiB / 7851MiB

我正在使用专有的 Nvidia 驱动程序。不是 Bumblebee 或 nouveau,因为它们的性能受到打击。

uname -a: Linux ArchLinux 4.18.14-arch1-1-ARCH #1 SMP PREEMPT 2018 年 10 月 13 日星期六 13:42:37 UTC x86_64 GNU/Linux

pacman -Q nvidia: 英伟达 410.57-6

我启用了KMS以消除屏幕撕裂,但禁用它并没有帮助。我没有 xorg.conf 文件,因为当我这样做时,即使 SDDM 也不会启动。nvidia-xconfig从来没有为我工作过。

日志:

/var/log/Xorg.0.log:

这些都是在禁用 SDDM 的情况下执行的,所以我只登录到第一个 tty:

执行时startx:https ://hastebin.com/zadepawiwo

执行时xinit:https ://hastebin.com/muredinume

启用 SDDM 后,正常启动: https ://hastebin.com/anatocavur

(hastebin 是正确的地方还是我应该将它们上传到其他地方?)


编辑:这是我执行时在终端中看到的内容:

sudo startx:(须藤启动那个 d-bus 的东西可能很有趣,但我不知道它是什么意思)。

startx:开始

这是我的 .xinitrc:

#!/bin/sh

userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/etc/X11/xinit/.Xresources
sysmodmap=/etc/X11/xinit/.Xmodmap

xsetroot -cursor_name left_ptr
xrandr --output eDP-1 --primary
xrandr --output HDMI-1 --above eDP-1
xrandr --dpi 96


# merge in defaults and keymaps

if [ -f $sysresources ]; then
    xrdb -merge $sysresources
fi

if [ -f $sysmodmap ]; then
    xmodmap $sysmodmap
fi

if [ -f "$userresources" ]; then
    xrdb -merge "$userresources"
fi

if [ -f "$usermodmap" ]; then
    xmodmap "$usermodmap"
fi

# start some nice programs


if [ -d /etc/X11/xinit/xinitrc.d ] ; then
 for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do
  [ -x "$f" ] && . "$f"
 done
 unset f
fi

sxhkd &
statnot &
feh --bg-fill ~/Pictures/DnA7hZgU8AAxfxC.jpg:large.jpg
exec bspwm

至于此处的“可能重复” ,我尝试了他们的解决方案,但没有奏效。对我来说,SDDM 可以在我启用它时启动,但我想在没有 DM 的情况下使用 bspwm。


在我的 BIOS 设置中禁用 NVIDIA GPU 可以startx正常工作,这表明问题出在 NVIDIA 上。我的司机有问题吗?是别的吗?

xorg nvidia
  • 1 1 个回答
  • 1792 Views

1 个回答

  • Voted
  1. Best Answer
    zjeffer
    2018-10-21T06:47:34+08:002018-10-21T06:47:34+08:00

    添加

    xrandr --setprovideroutputsource modesetting NVIDIA-0
    xrandr --auto
    

    到我的~/.xinitrc文件,这使我能够在 BIOS 中启用我的 NVIDIA GPU 启动,而无需 SDDM。

    尚未添加的原因是因为在使用 SDDM 时,我必须将其添加到/usr/share/sddm/scripts/Xsetup而不是 to ~/.xinitrc。我完全忘记了我没有像这里所说的那样将它添加到我的文件~/.xinitrc中。

    • 2

相关问题

  • 无法设置正确的显示分辨率

  • Arch Linux:在没有窗口管理器的情况下运行 VirtualBox (VM)

  • “错误:无法打开显示::0” - 以其他用户身份运行 GUI 应用程序

  • 如何在 Linux 中禁用硬件加速?

  • base 和 evdev xkb 规则有什么区别?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    ssh 无法协商:“找不到匹配的密码”,正在拒绝 cbc

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    如何卸载内核模块“nvidia-drm”?

    • 13 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Wong Jia Hau ssh-add 返回:“连接代理时出错:没有这样的文件或目录” 2018-08-24 23:28:13 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST
  • Martin Hope
    Bagas Sanjaya 为什么 Linux 使用 LF 作为换行符? 2017-12-20 05:48:21 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve