我最近注意到有一个内核警告,说 nvidia 驱动程序与启动到视频模式终端不兼容,所以我编辑了 /etc/default/grub,使其启动到纯文本终端。这几天都运行良好,但现在突然当我进入 tty 时,我只会看到黑屏和闪烁的光标。分辨率也很低。我实际上能够登录并运行命令,但我没有得到任何输出,只是光标移动。我尝试过:
- 将其设置为重新启动到视频模式 - 与 tty 相同,只是这次有垂直的蓝线向下延伸
- echo
FRAMEBUFFER=y > /etc/initramfs-tools/conf.d/splash
- 没有区别,尽管 plymouth 在启动时确实启动得更早。这两个都没有起作用,你建议我接下来尝试什么? - 在 grub 中添加 nomodeset - 没有变化
[编辑] 根据 lsmod 的要求输出
$ lsmod
Module Size Used by
nls_iso8859_1 12713 1
nls_cp437 16991 1
vfat 17585 1
fat 61512 1 vfat
pci_stub 12622 1
vboxpci 23237 0
vboxnetadp 13382 0
vboxnetflt 23478 0
vboxdrv 287082 3 vboxpci,vboxnetadp,vboxnetflt
kvm_amd 55848 0
kvm 415550 1 kvm_amd
parport_pc 32866 0
ppdev 17113 0
bnep 18281 2
rfcomm 47604 0
bluetooth 180153 10 bnep,rfcomm
binfmt_misc 17540 1
snd_hda_codec_realtek 224173 1
ip6t_LOG 16974 4
xt_hl 12521 6
ip6t_rt 12558 3
nf_conntrack_ipv6 13906 7
nf_defrag_ipv6 13412 1 nf_conntrack_ipv6
ipt_REJECT 12576 1
ipt_LOG 12919 5
xt_limit 12711 12
xt_tcpudp 12603 42
xt_addrtype 12713 4
xt_state 12578 14
nvidia 11300349 40
ip6table_filter 12815 1
ip6_tables 27864 3 ip6t_LOG,ip6t_rt,ip6table_filter
nf_conntrack_netbios_ns 12665 0
nf_conntrack_broadcast 12589 1 nf_conntrack_netbios_ns
nf_nat_ftp 12704 0
nf_nat 25891 1 nf_nat_ftp
nf_conntrack_ipv4 19716 9 nf_nat
nf_defrag_ipv4 12729 1 nf_conntrack_ipv4
nf_conntrack_ftp 13452 1 nf_nat_ftp
nf_conntrack 81926 8 nf_conntrack_ipv6,xt_state,nf_conntrack_netbios_ns,nf_conntrack_broadcast,nf_nat_ftp,nf_nat,nf_conntrack_ipv4,nf_conntrack_ftp
iptable_filter 12810 1
snd_hda_intel 33719 3
snd_hda_codec 127706 2 snd_hda_codec_realtek,snd_hda_intel
snd_hwdep 17764 1 snd_hda_codec
ip_tables 27473 1 iptable_filter
x_tables 29891 13 ip6t_LOG,xt_hl,ip6t_rt,ipt_REJECT,ipt_LOG,xt_limit,xt_tcpudp,xt_addrtype,xt_state,ip6table_filter,ip6_tables,iptable_filter,ip_tables
snd_pcm 97275 2 snd_hda_intel,snd_hda_codec
snd_seq_midi 13324 0
arc4 12529 2
snd_rawmidi 30748 1 snd_seq_midi
rt2800pci 18715 0
rt2800lib 58967 1 rt2800pci
crc_ccitt 12707 1 rt2800lib
k10temp 13166 0
rt2x00pci 14620 1 rt2800pci
rt2x00lib 55326 3 rt2800pci,rt2800lib,rt2x00pci
mac80211 506862 3 rt2800lib,rt2x00pci,rt2x00lib
edac_core 53746 0
psmouse 97485 0
edac_mce_amd 23709 0
serio_raw 13211 0
cfg80211 205774 2 rt2x00lib,mac80211
eeprom_93cx6 12767 1 rt2800pci
snd_seq_midi_event 14899 1 snd_seq_midi
snd_seq 61929 2 snd_seq_midi,snd_seq_midi_event
snd_timer 29990 2 snd_pcm,snd_seq
snd_seq_device 14540 3 snd_seq_midi,snd_rawmidi,snd_seq
snd 79041 15 snd_hda_codec_realtek,snd_hda_intel,snd_hda_codec,snd_hwdep,snd_pcm,snd_rawmidi,snd_seq,snd_timer,snd_seq_device
soundcore 15091 1 snd
snd_page_alloc 18529 2 snd_hda_intel,snd_pcm
mac_hid 13253 0
i2c_nforce2 13058 0
lp 17799 0
parport 46562 3 parport_pc,ppdev,lp
usbhid 47238 0
hid 99636 1 usbhid
ums_realtek 18248 0
usb_storage 49243 2 ums_realtek
forcedeth 63460 0
sata_nv 32286 2
lspci-v:
$ lspci -v
00:00.0 RAM memory: NVIDIA Corporation MCP61 Memory Controller (rev a1)
Subsystem: Hewlett-Packard Company Device 2a99
Flags: bus master, 66MHz, fast devsel, latency 0
Capabilities: <access denied>
00:01.0 ISA bridge: NVIDIA Corporation MCP61 LPC Bridge (rev a2)
Subsystem: Hewlett-Packard Company Device 2a99
Flags: bus master, 66MHz, fast devsel, latency 0
I/O ports at 4f00 [size=256]
00:01.1 SMBus: NVIDIA Corporation MCP61 SMBus (rev a2)
Subsystem: Hewlett-Packard Company Device 2a99
Flags: 66MHz, fast devsel, IRQ 11
I/O ports at 4900 [size=64]
I/O ports at 4d00 [size=64]
I/O ports at 4e00 [size=64]
Capabilities: <access denied>
Kernel driver in use: nForce2_smbus
Kernel modules: i2c-nforce2
00:01.2 RAM memory: NVIDIA Corporation MCP61 Memory Controller (rev a2)
Subsystem: Hewlett-Packard Company Device 2a99
Flags: 66MHz, fast devsel
00:02.0 USB controller: NVIDIA Corporation MCP61 USB 1.1 Controller (rev a3) (prog-if 10 [OHCI])
Subsystem: Hewlett-Packard Company Device 2a99
Flags: bus master, 66MHz, fast devsel, latency 0, IRQ 23
Memory at fbeff000 (32-bit, non-prefetchable) [size=4K]
Capabilities: <access denied>
Kernel driver in use: ohci_hcd
00:02.1 USB controller: NVIDIA Corporation MCP61 USB 2.0 Controller (rev a3) (prog-if 20 [EHCI])
Subsystem: Hewlett-Packard Company Device 2a99
Flags: bus master, 66MHz, fast devsel, latency 0, IRQ 22
Memory at fbefec00 (32-bit, non-prefetchable) [size=256]
Capabilities: <access denied>
Kernel driver in use: ehci_hcd
00:04.0 PCI bridge: NVIDIA Corporation MCP61 PCI bridge (rev a1) (prog-if 01 [Subtractive decode])
Flags: bus master, 66MHz, fast devsel, latency 0
Bus: primary=00, secondary=01, subordinate=01, sec-latency=64
Capabilities: <access denied>
00:05.0 Audio device: NVIDIA Corporation MCP61 High Definition Audio (rev a2)
Subsystem: Hewlett-Packard Company Device 2a99
Flags: bus master, 66MHz, fast devsel, latency 0, IRQ 22
Memory at fbef8000 (32-bit, non-prefetchable) [size=16K]
Capabilities: <access denied>
Kernel driver in use: snd_hda_intel
Kernel modules: snd-hda-intel
00:07.0 Bridge: NVIDIA Corporation MCP61 Ethernet (rev a2)
Subsystem: Hewlett-Packard Company Device 2a99
Flags: bus master, 66MHz, fast devsel, latency 0, IRQ 43
Memory at fbefd000 (32-bit, non-prefetchable) [size=4K]
I/O ports at e480 [size=8]
Capabilities: <access denied>
Kernel driver in use: forcedeth
Kernel modules: forcedeth
00:08.0 IDE interface: NVIDIA Corporation MCP61 SATA Controller (rev a2) (prog-if 85 [Master SecO PriO])
Subsystem: Hewlett-Packard Company Device 2a99
Flags: bus master, 66MHz, fast devsel, latency 0, IRQ 21
I/O ports at e400 [size=8]
I/O ports at e080 [size=4]
I/O ports at e000 [size=8]
I/O ports at dc00 [size=4]
I/O ports at d880 [size=16]
Memory at fbefc000 (32-bit, non-prefetchable) [size=4K]
Capabilities: <access denied>
Kernel driver in use: sata_nv
Kernel modules: sata_nv
00:08.1 IDE interface: NVIDIA Corporation MCP61 SATA Controller (rev a2) (prog-if 85 [Master SecO PriO])
Subsystem: Hewlett-Packard Company Device 2a99
Flags: bus master, 66MHz, fast devsel, latency 0, IRQ 20
I/O ports at d800 [size=8]
I/O ports at d480 [size=4]
I/O ports at d400 [size=8]
I/O ports at d080 [size=4]
I/O ports at d000 [size=16]
Memory at fbef3000 (32-bit, non-prefetchable) [size=4K]
Capabilities: <access denied>
Kernel driver in use: sata_nv
Kernel modules: sata_nv
00:09.0 PCI bridge: NVIDIA Corporation MCP61 PCI Express bridge (rev a2) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=02, subordinate=02, sec-latency=0
Capabilities: <access denied>
Kernel driver in use: pcieport
Kernel modules: shpchp
00:0b.0 PCI bridge: NVIDIA Corporation MCP61 PCI Express bridge (rev a2) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=03, subordinate=03, sec-latency=0
Capabilities: <access denied>
Kernel driver in use: pcieport
Kernel modules: shpchp
00:0c.0 PCI bridge: NVIDIA Corporation MCP61 PCI Express bridge (rev a2) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=04, subordinate=04, sec-latency=0
Memory behind bridge: fbf00000-fbffffff
Capabilities: <access denied>
Kernel driver in use: pcieport
Kernel modules: shpchp
00:0d.0 VGA compatible controller: NVIDIA Corporation C61 [GeForce 6150SE nForce 430] (rev a2) (prog-if 00 [VGA controller])
Subsystem: Hewlett-Packard Company Device 2a99
Flags: bus master, 66MHz, fast devsel, latency 0, IRQ 21
Memory at fa000000 (32-bit, non-prefetchable) [size=16M]
Memory at e0000000 (64-bit, prefetchable) [size=256M]
Memory at f9000000 (64-bit, non-prefetchable) [size=16M]
[virtual] Expansion ROM at fbec0000 [disabled] [size=128K]
Capabilities: <access denied>
Kernel driver in use: nvidia
Kernel modules: nvidia_current, nouveau, nvidiafb
00:18.0 Host bridge: Advanced Micro Devices [AMD] Family 10h Processor HyperTransport Configuration
Flags: fast devsel
Capabilities: <access denied>
00:18.1 Host bridge: Advanced Micro Devices [AMD] Family 10h Processor Address Map
Flags: fast devsel
00:18.2 Host bridge: Advanced Micro Devices [AMD] Family 10h Processor DRAM Controller
Flags: fast devsel
Kernel modules: amd64_edac_mod
00:18.3 Host bridge: Advanced Micro Devices [AMD] Family 10h Processor Miscellaneous Control
Flags: fast devsel
Capabilities: <access denied>
Kernel driver in use: k10temp
Kernel modules: k10temp
00:18.4 Host bridge: Advanced Micro Devices [AMD] Family 10h Processor Link Control
Flags: fast devsel
04:00.0 Network controller: Ralink corp. RT3090 Wireless 802.11n 1T/1R PCIe
Subsystem: Lite-On Communications Inc Device 7602
Flags: bus master, fast devsel, latency 0, IRQ 19
Memory at fbff0000 (32-bit, non-prefetchable) [size=64K]
Capabilities: <access denied>
Kernel driver in use: rt2800pci
Kernel modules: rt2800pci
取消名称 -a:
Linux ********* 3.2.0-39-generic #62-Ubuntu SMP Thu Feb 28 00:28:53 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
答案1
好的,我找到了一个解决办法,我把它留在这里以防其他有同样问题的人也发现这个问题。首先运行sudo apt-get install v86d
然后运行cat /sys/bus/platform/drivers/uvesafb/uvesafb.0/vbe_modes
,并记住它输出的最高模式。(如果这没有输出任何内容,您可能需要在安装 v86d 后重新启动计算机,我记不太清楚了)。然后运行gksudo gedit /etc/default/grub
,并使 grub_cmdline_linux_default 看起来像这样:GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset video=uvesafb:mode_option=1024x768-32,mtrr=3,scroll=ywrap"
,还要检查此文件是否包含该GRUB_GFXPAYLOAD_LINUX=something or other
行。如果包含,则将其删除。但将 1024x768-32 替换为第二步中列出的最高分辨率。然后运行gksudo gedit /etc/initramfs-tools/modules
,并将其添加到底部:uvesafb mode_option=1024x768-32 mtrr=3 scroll=ywrap
再次用您找到的模式替换 1024x768-32。然后运行gksudo gedit /etc/grub.d/10_linux
,并找到如下所示的部分:
function gfxmode {
set gfxpayload="${1}"
if [ "${1}" = "keep" ]; then
set vt_handoff=7
else
set vt_handoff=
fi
}
并使其看起来像这样:
function gfxmode {
set gfxpayload="${1}"
if [ "${1}" = "keep" ]; then
set vt_handoff=
else
set vt_handoff=
fi
}
然后运行sudo update-grub; sudo update-initramfs -u
。重启后问题就解决了:)
答案2
对我来说,我需要做的就是nomodeset
添加
GRUB_CMDLINE_LINUX_DEFAULT=
GRUB_CMDLINE_LINUX=
在文件中/etc/默认/grub然后运行sudo update-grub
。
我建议在完成所有那些复杂的步骤之前先尝试一下,因为这可能是不必要的:)