Я запускаю Ubuntu 12.04 на MacBook 4,1 (чипсет графики Intel GMA X3100) на внешнем мониторе, но могу только получить разрешение 1024 x 768 (я получаю 1280 x 1024 в OS X).
Я могу вызвать разрешение к использованию 1280 x 1024 xrandr
команда согласно этим инструкциям, но теперь существует две проблемы:
Экран от центра на, возможно, пару дюжины пикселей и налево.
Инструкции для 10,04, и направления для внесения постоянного изменения не работают в 12,04.
Какой-либо способ зафиксировать это?
ОБНОВЛЕНИЕ: Я полагаю, что драйвер является корнем проблемы. Ubuntu перечислила графическое устройство как "Неизвестное", пока я не установил mesa-utils
. Я также получаю сообщение на начальной загрузке перед настольными загрузками, которая говорит что-то вроде 00:02.0: i915 Invalid ROM contents
.
Вот соответствующий вывод lspci -v
:
00:02.0 VGA compatible controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (primary) (rev 03) (prog-if 00 [VGA controller])
Subsystem: Apple Inc. Device 00a1
Flags: bus master, fast devsel, latency 0, IRQ 45
Memory at d0100000 (64-bit, non-prefetchable) [size=1M]
Memory at c0000000 (64-bit, prefetchable) [size=256M]
I/O ports at 6110 [size=8]
Expansion ROM at <unassigned> [disabled]
Capabilities: <access denied>
Kernel driver in use: i915
Kernel modules: intelfb, i915
00:02.1 Display controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (secondary) (rev 03)
Subsystem: Apple Inc. Device 00a1
Flags: fast devsel
Memory at d0200000 (64-bit, non-prefetchable) [disabled] [size=1M]
Capabilities: <access denied>
Я пытался использовать xrandr --output VGA1 --pos 10x10
видеть, изменило ли это местоположение экрана, но ничего не произошло.
Я исправил (1).
Я подозревал, что номера моделинов, которые я вводил в xrandr, неточны, поэтому я скачал SwitchResX для OS X, в котором есть возможность экспортировать модельные модели. Итак, я получил модельную линию для режима 1280 x 1024, который я использую в OS X, поместил его в xrandr в Ubuntu, и теперь экран больше не смещен!
Теперь мне просто нужно знать, как сделать это изменение постоянным.
Вы пытались редактировать файл /etc/lightdm/lightdm.conf?
Как заставить несколько мониторов корректировать разрешение для LightDM?
Например, добавив
display-setup-script=/usr/share/lightdmxrandr.sh
запускает вышеуказанный скрипт на экране входа в систему.
И добавление
session-setup-script=/usr/share/lightdmxrandr.sh
запускает вышеуказанный скрипт во время сеанса.
В моем случае этот сценарий говорит следующее:
#!/bin/bash
# connected external output
XCOM0=`xrandr -q | egrep '(HDMI1|VGA1|DP1) connected' | egrep -o '(HDMI1|VGA1|DP1)'`
# command to set external desktop
XCOM1=`xrandr --output LVDS1 --primary --auto --output $XCOM0 --auto --right-of LVDS1`
# command to set normal desktop
XCOM2=`xrandr --output LVDS1 --primary --auto`
# if the external monitor is connected, then we tell XRANDR to set up an extended desktop
if [ -n "$XCOM0" ] || [ ! "$XCOM0" = "" ]; then echo $XCOM1
# if the external monitor is disconnected, then we tell XRANDR to output only to the laptop screen
else echo $XCOM2
fi
exit 0;
# ERASE THESE COMMENTS:
# Forces multiple monitors correct resolutions for LightDM
# Tested with Ubuntu 12.04 LTS.
# Save this file as lightdmxrand.sh
# Set as an executable file like this:
# $ sudo chmod +x lightdmxrand.sh
# Move it to /usr/share/ directory like this:
# $ sudo mv lightdmxrand.sh /usr/share/lightdmxrandr.sh
# Edit /etc/lightdm/lightdm.conf adding the given line to it: display-setup-script=/usr/share/lightdmxrandr.sh
# If you want this script to also run after the login, add: session-setup-script=/usr/share/lightdmxrandr.sh
Надеюсь, что это работает!