As versões mais recentes do driver Intel incluem um programa chamado intel-virtual-output
que simplifica bastante a instalação de monitores duplos e triplos em um W520.
o intel-virtual-output
comando fornece uma maneira para um servidor X na placa Intel duplicar telas em outro servidor X. Ele examina as telas disponíveis no visor remoto e as apresenta no servidor Intel X como VIRTUAL1, VIRTUAL2, etc.
O script a seguir (executado como root) funciona para mim, mas provavelmente você precisará ajustar as coisas:
#!/bin/sh
# Power on the nvidia card with bumblebee.
modprobe bbswitch
echo ON > /proc/acpi/bbswitch
# Run X display :8 on the nvidia card.
optirun true
# Tell the intel card to create virtual screens on :0 and
# copy whatever they're displaying to equivalent screens on :8
intel-virtual-output
# Configure my monitors the way I like them.
xrandr --output VIRTUAL3 --auto
xrandr --output VIRTUAL1 --auto --right-of VIRTUAL3
xrandr --output LVDS1 --off
Essa configuração ativa meu cabo DisplayPort para DVI (VIRTUAL3) à esquerda e o VGA (VIRTUAL1) à direita. Também desativa a tela do laptop.
Observe que, como essas são apenas telas virtuais do driver, em teoria, a ferramenta de configuração de exibição da sua GUI deve ser capaz de descobrir isso depois que você executar intel-virtual-output
.
Na prática, a ferramenta de configuração de exibição no xubuntu realmente não fez coisas coerentes. É por isso que esses xrandr
comandos estão lá. Se você estiver executando o gnome ou o kde, pode valer a pena tentar a ferramenta GUI antes de mexer xrandr
. Caso contrário, antes de executar isso, você provavelmente desejará ajustar algumas coisas para qualquer configuração que esteja realmente usando. A execução apenas xrandr
informa quais monitores estão conectados no momento. Você pode conectar e desconectar seus monitores para ver qual plugue se conecta a qual monitor VIRTUAL [0-9]. A tela do laptop é LVDS1. Então é só uma questão de fazer os xrandr
comandos com --right-of
, --left-of
, --below
, etc, para fazer as coisas no seu devido lugar.
Quando quiser se tornar móvel novamente, você pode executar isso (novamente, como root):
#!/bin/sh
# Turn on the laptop screen.
xrandr --output LVDS1 --auto
# Turn off my the other screens.
xrandr --output VIRTUAL1 --off
xrandr --output VIRTUAL3 --off
# Kill the xorg server running on the nvidia card.
kill $(ps ax | grep Xorg | grep :8 | awk '{print $1}')
# Wait plenty of time for it to die.
sleep 5
# Remove the nvidia kernel module so we can shut down the card.
# If you're running another driver this might be something different.
rmmod nvidia
# Use bumblebee to turn off the nvidia card and save power.
echo OFF > /proc/acpi/bbswitch
Estou executando o xubuntu 14.04 usando o driver proprietário da nvidia versão 337.25. Eu também tenho pacotes de bumblebee em https://launchpad.net/~bumblebee/+archive/ubuntu/stable .
Curiosamente, esta configuração é o inverso da configuração usual da Optimus. Normalmente, você está executando seletivamente programas na placa nvidia e copiando buffers da placa nvidia para a placa intel, que realmente conversam com os monitores. Nesse caso, você está executando tudo no cartão intel e copiando os buffers de tela relevantes para o cartão nvidia.
Se você está se perguntando, sim, isso dificulta a execução de aplicativos acelerados pela nvidia. Ainda não descobri uma maneira de fazer com que os jogos funcionem bem, e mesmo com o vídeo em HD, ele diminui com o tempo. Parece até que não é um buffer duplo, porque você fica visível de cima para baixo após ver vídeos de alta resolução por um tempo. Dito isto, a maioria dos projetores provavelmente ficará bem.