Tôi vừa lấy một máy tính để bàn Gateway P4 hoạt động và nâng cấp nó từ 16.04LTS lên 17.10 mà không gặp vấn đề gì. Ngay khi tôi cố gắng cài đặt 18.04LTS, tôi đã gặp sự cố khi khởi động.
Tôi đã cài đặt lại theo nhiều cách khác nhau, không có sự cải thiện nào trong vấn đề khởi động. Logo Ubuntu xuất hiện và các dấu chấm nhấp nháy vài lần, sau đó con trỏ chuột đóng băng và hệ thống hoàn toàn không phản hồi. Nếu tôi khởi động với "giật gân yên tĩnh" được xóa khỏi dòng kernel trong grub, tôi có thể thấy rằng nó chỉ dừng lại ngay sau khi bắt đầu tài khoản người dùng đầu tiên 120.
Đây là một manh mối ... Nếu tôi thay thế "giật gân yên tĩnh" bằng nomodeset
, nó khởi động hoàn toàn, nhưng nó chỉ ở chế độ 640x480.
Đây là thông tin video của i915 ...
*-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
Tôi nghi ngờ rằng tôi cần thêm một tham số hạt nhân của bộ điều khiển video i915 đặc biệt vào lưới để làm cho video hoạt động chính xác. Bất kỳ ý tưởng về tham số nào có thể là ... hoặc bất kỳ ý tưởng nào khác?
Cập nhật # 1: Tôi vừa phát hiện ra rằng nếu tôi khởi động vào "Chế độ khôi phục", sau đó chọn "Tiếp tục khởi động bình thường", nó sẽ khởi động hoàn toàn, lên màn hình 1024x768 4: 3 (nên là 16: 9).
Cập nhật # 2: Nâng cấp từ 17.10 đến 18.04, khởi động không thành công. Cài đặt lại 18.04, khởi động thất bại. Xóa phân vùng đĩa và dọn dẹp 18.04, khởi động thất bại. Cài đặt phần mềm "đề xuất" 18.04, khởi động vẫn không thành công. Ubuntu Live DVD hoạt động tốt.
Cập nhật # 3: Tôi tìm thấy danh sách các tham số 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<N>/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)
Cập nhật # 4: Tôi hiện đang chạy với i915.modeset=0
dòng kernel grub của mình, nó đang khởi động và tôi đang nhận được 1024x768 (4: 3).
Cập nhật # 5: Cập nhật lên kernel 4.16.9 không khắc phục được sự cố.
Cập nhật # 6: Một phần câu trả lời của @ karel cung cấp một cách giải quyết đủ tốt. Chuyển từ trình quản lý hiển thị gdm3 sang trình quản lý hiển thị lightdm hoạt động. Sau đó tôi cũng có thể loại bỏ i915.modeset=0
khỏi dòng kernel grub của mình.
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
Cập nhật số 7:
Hóa ra vấn đề không phải là vấn đề gdm3 vs lightdm. Đó là sự cố gdm3 / wayland với GPU Intel cũ hơn. Sửa chữa...
Trong terminal
...
cd /etc/gdm3
# thay đổi thư mụcsudo pico custom.conf
# chỉnh sửa tệp này
Tìm và thay đổi:
#WaylandEnable=false
Về điều này:
WaylandEnable=false
Lưu các tập tin.
sudo dpkg-reconfigure gdm3
# chọn gdm3 DM
Chọn gdm3 và OK.
reboot
# khởi động lại máy tính
Ghi chú:
https://feed.cloud.geek.nz/posts/linux-kernel-module-options-on-debian/
Làm cách nào để sửa lỗi trình điều khiển i915 bị hỏng cho GPU Intel?