17.10到18.04升级在启动期间冻结

我刚刚使用了一台工作的Gateway P4桌面计算机,并将其从16.04LTS一直升级到17.10,没有任何问题。 一旦我尝试安装18.04LTS,我就无法启动。

我以许多不同的方式重新安装,没有改进启动问题。 出现Ubuntu徽标并且点闪烁几次,然后鼠标指针冻结,系统完全没有响应。 如果我使用从grub中的内核行中删除的“quiet splash”启动,我可以看到它在启动第一个用户帐户120后不久就停止了。

这是一个线索……如果我用nomodeset替换“quiet splash”,它会完全启动,但它只能在640×480模式下启动。

这是i915video信息……

  *-display UNCLAIMED description: VGA compatible controller product: 82945G/GZ Integrated Graphics Controller vendor: Intel Corporation physical id: 2 bus info: pci@0000:00:02.0 version: 02 width: 32 bits clock: 33MHz capabilities: msi pm vga_controller bus_master cap_list configuration: latency=0 resources: memory:e0300000-e037ffff ioport:20e0(size=8) memory:d0000000-dfffffff memory:e0380000-e03bffff memory:c0000-dffff 

我怀疑我需要在grub中添加一个特殊的i915video控制器内核参数,以使video正常工作。 关于什么参数可能是……或任何其他想法的任何想法?

更新#1:我刚刚发现如果我启动进入“恢复模式”,然后选择“恢复正常启动”,它会完全启动,到1024×768 4:3(应该是16:9)桌面。

更新#2:从17.10升级到18.04,启动失败。 重新安装18.04,启动失败。 磁盘分区删除并清理18.04,启动失败。 安装18.04“建议”软件,启动仍然失败。 Ubuntu Live DVD工作正常。

更新#3:我找到了i915参数列表……

 ~$ modinfo -p i915 modeset:Use kernel modesetting [KMS] (0=disable, 1=on, -1=force vga console preference [default]) (int) panel_ignore_lid:Override lid status (0=autodetect, 1=autodetect disabled [default], -1=force lid closed, -2=force lid open) (int) semaphores:Use semaphores for inter-ring sync (default: -1 (use per-chip defaults)) (int) enable_rc6:Enable power-saving render C-state 6. Different stages can be selected via bitmask values (0 = disable; 1 = enable rc6; 2 = enable deep rc6; 4 = enable deepest rc6). For example, 3 would enable rc6 and deep rc6, and 7 would enable everything. default: -1 (use per-chip default) (int) enable_dc:Enable power-saving display C-states. (-1=auto [default]; 0=disable; 1=up to DC5; 2=up to DC6) (int) enable_fbc:Enable frame buffer compression for power savings (default: -1 (use per-chip default)) (int) lvds_channel_mode:Specify LVDS channel mode (0=probe BIOS [default], 1=single-channel, 2=dual-channel) (int) lvds_use_ssc:Use Spread Spectrum Clock with panels [LVDS/eDP] (default: auto from VBT) (int) vbt_sdvo_panel_type:Override/Ignore selection of SDVO panel mode in the VBT (-2=ignore, -1=auto [default], index in VBT BIOS table) (int) reset:Attempt GPU resets (default: true) (bool) error_capture:Record the GPU state following a hang. This information in /sys/class/drm/card/error is vital for triaging and debugging hangs. (bool) enable_hangcheck:Periodically check GPU activity for detecting hangs. WARNING: Disabling this can cause system wide hangs. (default: true) (bool) enable_ppgtt:Override PPGTT usage. (-1=auto [default], 0=disabled, 1=aliasing, 2=full, 3=full with extended address space) (int) enable_execlists:Override execlists usage. (-1=auto [default], 0=disabled, 1=enabled) (int) enable_psr:Enable PSR (0=disabled, 1=enabled - link mode chosen per-platform, 2=force link-standby mode, 3=force link-off mode) Default: -1 (use per-chip default) (int) alpha_support:Enable alpha quality driver support for latest hardware. See also CONFIG_DRM_I915_ALPHA_SUPPORT. (bool) disable_power_well:Disable display power wells when possible (-1=auto [default], 0=power wells always on, 1=power wells disabled when possible) (int) enable_ips:Enable IPS (default: true) (int) fastboot:Try to skip unnecessary mode sets at boot time (default: false) (bool) prefault_disable:Disable page prefaulting for pread/pwrite/reloc (default:false). For developers only. (bool) load_detect_test:Force-enable the VGA load detect code for testing (default:false). For developers only. (bool) force_reset_modeset_test:Force a modeset during gpu reset for testing (default:false). For developers only. (bool) invert_brightness:Invert backlight brightness (-1 force normal, 0 machine defaults, 1 force inversion), please report PCI device ID, subsystem vendor and subsystem device ID to dri-devel@lists.freedesktop.org, if your machine needs it. It will then be included in an upcoming module version. (int) disable_display:Disable display (default: false) (bool) enable_cmd_parser:Enable command parsing (true=enabled [default], false=disabled) (bool) use_mmio_flip:use MMIO flips (-1=never, 0=driver discretion [default], 1=always) (int) mmio_debug:Enable the MMIO debug code for the first N failures (default: off). This may negatively affect performance. (int) verbose_state_checks:Enable verbose logs (ie. WARN_ON()) in case of unexpected hw state conditions. (bool) nuclear_pageflip:Force enable atomic functionality on platforms that don't have full support yet. (bool) edp_vswing:Ignore/Override vswing pre-emph table selection from VBT (0=use value from vbt [default], 1=low power swing(200mV),2=default swing(400mV)) (int) enable_guc_loading:Enable GuC firmware loading (-1=auto, 0=never [default], 1=if available, 2=required) (int) enable_guc_submission:Enable GuC submission (-1=auto, 0=never [default], 1=if available, 2=required) (int) guc_log_level:GuC firmware logging level (-1:disabled (default), 0-3:enabled) (int) guc_firmware_path:GuC firmware path to use instead of the default one (charp) huc_firmware_path:HuC firmware path to use instead of the default one (charp) enable_dp_mst:Enable multi-stream transport (MST) for new DisplayPort sinks. (default: true) (bool) inject_load_failure:Force an error after a number of failure check points (0:disabled (default), N:force failure at the Nth failure check point) (uint) enable_dpcd_backlight:Enable support for DPCD backlight control (default:false) (bool) enable_gvt:Enable support for Intel GVT-g graphics virtualization host support(default:false) (bool) 

更新#4:我正在运行我的grub内核行中的i915.modeset=0 ,它正在启动,我得到的是1024×768(4:3)。

更新#5:更新到内核4.16.9无法解决问题。

更新#6: @ karel答案的一部分提供了足够好的解决方法。 从gdm3显示管理器切换到lightdm显示管理器工作。 然后我也可以从我的grub内核行中删除i915.modeset=0

 sudo apt-get update sudo apt-get install lightdm # if lightdm wasn't already installed, it'll ask which dm you want # if lightdm was already installed, then you need to: sudo dpkg-reconfigure lightdm # and choose lightdm over gdm3 reboot 

更新#7:

事实certificate问题不是gdm3 vs lightdm问题。 这是旧版Intel GPU的gdm3 / wayland问题。 修理…

terminal ……

  • cd /etc/gdm3目录
  • sudo pico custom.conf #编辑此文件

查找并更改:

#WaylandEnable=false

对此:

WaylandEnable=false

保存文件。

  • sudo dpkg-reconfigure gdm3 #select gdm3 DM

选择gdm3然后单击确定。

  • reboot #重启计算机

笔记:

https://feeding.cloud.geek.nz/posts/linux-kernel-module-options-on-debian/

设置i915的内核选项

如何为英特尔GPU修复损坏的i915驱动程序?

尝试从tty虚拟控制台登录到默认桌面环境。 在启动计算机卡住后,按键盘组合Ctrl + Alt + F3可以访问虚拟控制台。 使用您的用户名和密码登录虚拟控制台,然后运行以下命令。

 sudo systemctl start graphical.target 

如果这不起作用,请将登录显示管理器从gdm3切换到lightdm。 LightDM是比gdm3更轻量级的登录显示管理器。

 sudo apt install lightdm sudo dpkg-reconfigure lightdm sudo reboot 

sudo dpkg-reconfigure lightdm将打开一个新窗口,允许您选择lightdm作为默认登录显示管理器。 使用箭头键选择lightdm,然后按Tab键将焦点置于并按Enter键 。 然后通过运行此命令sudo rebootsudo reboot

如果这不起作用,或者看看你是否至少可以切换到文本模式(用于故障排除)而没有像X服务器一样运行的GUI。

 sudo systemctl start multi-user.target