Используйте эту команду, чтобы открыть Aptana, используя openjdk вместо sun jre AptanaStudio -vm /usr/lib/jvm/java-6-openjdk/bin.
Openjdk является стандартным jdk в Ubuntu. В качестве опции вы можете установить jdk Oracle, если вы загрузите его с веб-сайта Oracle.
Получите клиент VNC для Android, запустите новый сеанс сервера VNC на своем компьютере (не просто обменивайтесь текущим дисплеем - используйте vnc4server, а не x11vnc), подключитесь к нему с клиентом Android VNC и (умный бит ) совместно используйте клавиатуру и мышь ПК между двумя сеансами, используя синергию.
Все необходимое программное обеспечение для этого доступно в стандартных репозиториях для Ubuntu, и есть несколько бесплатных VNC-клиентов, доступных для Android в рынок.
Вы не сможете перетаскивать окна через дисплеи с помощью этого метода. Для этого я думаю, вам нужно будет использовать Xdmx для соединения двух сеансов.
Также имейте в виду, что synergy и vnc не используют шифрование по умолчанию, поэтому вам нужно туннелировать соединения, если вы не пользуетесь надежным сеть.
Получите клиент VNC для Android, запустите новый сеанс сервера VNC на своем компьютере (не просто обменивайтесь текущим дисплеем - используйте vnc4server, а не x11vnc), подключитесь к нему с клиентом Android VNC и (умный бит ) совместно используйте клавиатуру и мышь ПК между двумя сеансами, используя синергию.
Все необходимое программное обеспечение для этого доступно в стандартных репозиториях для Ubuntu, и есть несколько бесплатных VNC-клиентов, доступных для Android в рынок.
Вы не сможете перетаскивать окна через дисплеи с помощью этого метода. Для этого я думаю, вам нужно будет использовать Xdmx для соединения двух сеансов.
Также имейте в виду, что synergy и vnc не используют шифрование по умолчанию, поэтому вам нужно туннелировать соединения, если вы не пользуетесь надежным сеть.
Получите клиент VNC для Android, запустите новый сеанс сервера VNC на своем компьютере (не просто обменивайтесь текущим дисплеем - используйте vnc4server, а не x11vnc), подключитесь к нему с клиентом Android VNC и (умный бит ) совместно используйте клавиатуру и мышь ПК между двумя сеансами, используя синергию.
Все необходимое программное обеспечение для этого доступно в стандартных репозиториях для Ubuntu, и есть несколько бесплатных VNC-клиентов, доступных для Android в рынок.
Вы не сможете перетаскивать окна через дисплеи с помощью этого метода. Для этого я думаю, вам нужно будет использовать Xdmx для соединения двух сеансов.
Также имейте в виду, что synergy и vnc не используют шифрование по умолчанию, поэтому вам нужно туннелировать соединения, если вы не пользуетесь надежным сеть.
Получите клиент VNC для Android, запустите новый сеанс сервера VNC на своем компьютере (не просто обменивайтесь текущим дисплеем - используйте vnc4server, а не x11vnc), подключитесь к нему с клиентом Android VNC и (умный бит ) совместно используйте клавиатуру и мышь ПК между двумя сеансами, используя синергию.
Все необходимое программное обеспечение для этого доступно в стандартных репозиториях для Ubuntu, и есть несколько бесплатных VNC-клиентов, доступных для Android в рынок.
Вы не сможете перетаскивать окна через дисплеи с помощью этого метода. Для этого я думаю, вам нужно будет использовать Xdmx для соединения двух сеансов.
Также имейте в виду, что synergy и vnc не используют шифрование по умолчанию, поэтому вам нужно туннелировать соединения, если вы не пользуетесь надежным сеть.
Получите клиент VNC для Android, запустите новый сеанс сервера VNC на своем компьютере (не просто обменивайтесь текущим дисплеем - используйте vnc4server, а не x11vnc), подключитесь к нему с клиентом Android VNC и (умный бит ) совместно используйте клавиатуру и мышь ПК между двумя сеансами, используя синергию.
Все необходимое программное обеспечение для этого доступно в стандартных репозиториях для Ubuntu, и есть несколько бесплатных VNC-клиентов, доступных для Android в рынок.
Вы не сможете перетаскивать окна через дисплеи с помощью этого метода. Для этого я думаю, вам нужно будет использовать Xdmx для соединения двух сеансов.
Также имейте в виду, что synergy и vnc не используют шифрование по умолчанию, поэтому вам нужно туннелировать соединения, если вы не пользуетесь надежным сеть.
Получите клиент VNC для Android, запустите новый сеанс сервера VNC на своем компьютере (не просто обменивайтесь текущим дисплеем - используйте vnc4server, а не x11vnc), подключитесь к нему с клиентом Android VNC и (умный бит ) совместно используйте клавиатуру и мышь ПК между двумя сеансами, используя синергию.
Все необходимое программное обеспечение для этого доступно в стандартных репозиториях для Ubuntu, и есть несколько бесплатных VNC-клиентов, доступных для Android в рынок.
Вы не сможете перетаскивать окна через дисплеи с помощью этого метода. Для этого я думаю, вам нужно будет использовать Xdmx для соединения двух сеансов.
Также имейте в виду, что synergy и vnc не используют шифрование по умолчанию, поэтому вам нужно туннелировать соединения, если вы не пользуетесь надежным сеть.
Получите клиент VNC для Android, запустите новый сеанс сервера VNC на своем компьютере (не просто обменивайтесь текущим дисплеем - используйте vnc4server, а не x11vnc), подключитесь к нему с клиентом Android VNC и (умный бит ) совместно используйте клавиатуру и мышь ПК между двумя сеансами, используя синергию.
Все необходимое программное обеспечение для этого доступно в стандартных репозиториях для Ubuntu, и есть несколько бесплатных VNC-клиентов, доступных для Android в рынок.
Вы не сможете перетаскивать окна через дисплеи с помощью этого метода. Для этого я думаю, вам нужно будет использовать Xdmx для соединения двух сеансов.
Также имейте в виду, что synergy и vnc не используют шифрование по умолчанию, поэтому вам нужно туннелировать соединения, если вы не пользуетесь надежным сеть.
TL; DR:
$ sudo apt-get install x11vnc
$ WINDOW_ID=$(xwininfo | awk '/Window.id/{print $4}') && x11vnc -viewonly -nopw -avahi -id $WINDOW_ID >/dev/null 2>&1 &
Теперь просто щелкните в окне, которое вы хотите разделить.
TL; DR [ ! d1]:
У меня есть iPad и Chromebook, и я бы хотел использовать их в качестве своих мониторов, просто для некоторых команд терминала htop, iptstate, nmon и т. д. Итак, я ленивый парень и сделал это, используя:
Установка пакета: sudo apt-get install x11vnc Откройте какой-нибудь терминал и положите xwininfo | awk '/Window.id/{print $4}' и щелкните в окне, которое хотите разделить. Результат будет выглядеть примерно так:$ xwininfo | awk '/Window.id/{print $4}'
0x4402f34
Теперь вы можете начать свой x11vnc сеанс: $ x11vnc -viewonly -nopw -avahi -id 0x4402f34 >/dev/null 2>&1 &
Изменить размер окна (0x4402f34), чтобы получить наилучшее изображение. Обратите внимание на соответствующий порт вашей сессии: 5900 -> :0, 5901 -:1, 5902 -> :2 ...
Кроме того, отлично работает с приложениями X11: Firefox, OpenOffice и т. д.
Я сделал простой сценарий bash, чтобы сделать планшет вторым. Копировать ipad_monitor.sh (не волнуйтесь, он также работает с Android) в моем сообщении в блоге.
Чем отличается от другого сообщения, вы можете легко установить положение второго экрана с дополнительным аргументом.
Изменить: здесь был включен оригинальный ipad_monitor.sh. выполните следующую команду:
./ipad_monitor.sh --right или ./ipad_monitor.sh --left ./ipad_monitor.sh --right --portrait ./ipad_monitor.sh --right --portrait --hidpiОсновная идея этого скрипта такая же, как и у других, запуск xrandr и x11vnc, но я включил опции, например, какую сторону вы хотели бы прикрепить к экрану.
#!/bin/sh
# ----------------------------------------------------------------------------
# "THE BEER-WARE LICENSE" (Revision 42):
# <k.bumsik@gmail.com> wrote this file. As long as you retain this notice you
# can do whatever you want with this stuff. If we meet some day, and you think
# this stuff is worth it, you can buy me a beer in return. - Bumsik Kim
# ----------------------------------------------------------------------------
# Configuration
WIDTH=1024 # 1368 for iPad Pro
HEIGHT=768 # 1024 for iPad Pro
MODE_NAME="mode_ipad" # Set whatever name you like, you may need to change
# this when you change resolution, or just reboot.
DIS_NAME="VIRTUAL1" # Don't change it unless you know what it is
RANDR_POS="--right-of" # Default position setting for xrandr command
# Parse arguments
while [ "$#" -gt 0 ]; do
case $1 in
-l|--left) RANDR_POS="--left-of" ;;
-r|--right) RANDR_POS="--right-of" ;;
-a|--above) RANDR_POS="--above" ;;
-b|--below) RANDR_POS="--below" ;;
-p|--portrait) TMP=$WIDTH; WIDTH=$HEIGHT; HEIGHT=$TMP
MODE_NAME="$MODE_NAME""_port" ;;
-h|--hidpi) WIDTH=$(($WIDTH * 2)); HEIGHT=$(($HEIGHT * 2))
MODE_NAME="$MODE_NAME""_hidpi" ;;
*) echo "'$1' cannot be a monitor position"; exit 1 ;;
esac
shift
done
# Detect primary display
PRIMARY_DISPLAY=$(xrandr | perl -ne 'print "$1" if /(\w*)\s*connected\s*primary/')
# Add display mode
RANDR_MODE=$(cvt "$WIDTH" "$HEIGHT" 60 | sed '2s/^.*Modeline\s*\".*\"//;2q;d')
xrandr --addmode $DIS_NAME $MODE_NAME 2>/dev/null
# If the mode doesn't exist then make mode and retry
if ! [ $? -eq 0 ]; then
xrandr --newmode $MODE_NAME $RANDR_MODE
xrandr --addmode $DIS_NAME $MODE_NAME
fi
# Show display first
xrandr --output $DIS_NAME --mode $MODE_NAME
# Then move display
sleep 5 # A short delay is needed. Otherwise sometimes the below command is ignored.
xrandr --output $DIS_NAME $RANDR_POS $PRIMARY_DISPLAY
# Cleanup before exit
function finish {
xrandr --output $DIS_NAME --off
xrandr --delmode $DIS_NAME $MODE_NAME
echo "Second monitor disabled."
}
trap finish EXIT
# Get the display's position
CLIP_POS=$(xrandr | perl -ne 'print "$1" if /'$DIS_NAME'\s*connected\s*(\d*x\d*\+\d*\+\d*)/')
echo $CLIP_POS
# Share screen
x11vnc -multiptr -repeat -clip $CLIP_POS
# Possible alternative is x0vncserver but it does not show the mouse cursor.
# x0vncserver -display :0 -geometry $DIS_NAME -overlaymode -passwordfile ~/.vnc/passwd
if ! [ $? -eq 0 ]; then
echo x11vnc failed, did you \'apt-get install x11vnc\'?
fi
Нить, связанная с распознаванием, имеет действительно интересную идею, не уверен, имел ли он в виду это, потому что я не мог найти автора, которого он указал а также потому, что я следил за ним на форуме, я опубликую его отдельно, а не как редактирование:
Во-первых, предположим, что основная машина имеет разрешение экрана 1280x800 и вторичную машину, которую вы хотите расширить свой рабочий стол до более VNC, имеет разрешение экрана 1280x1024 и вы хотите, чтобы расширенный экран был прав вашего основного экрана. Виртуальный экран должен быть 1280x800 + 1280x1024 = 2560x1024. (растяните его горизонтально и сделайте вертикальное разрешение больше из двух). Запустите xrandr --fb 2560x1024. Теперь, когда экран больше, чем ваш основной монитор, вы должны убедиться, что нет панорамирования или какой-либо другой нежелательной «функции», а также, что координаты верхнего левого угла вашего основного монитора равны 0x0. x11vnc -clip 1280x1024+1281+0 плюс добавить любые другие опции x11vnc по вкусу :)Это должно быть так.
Для тех, кто все еще интересуется этой темой: клип xrandr и x11vnc работает; чтобы позволить мыши перемещаться там, вам нужно использовать аргумент панорамирования для установки области отслеживания мыши:
xrandr --fb 2560x1024 --output LVDS1 --panning 1280x1024+0+0/2560x1024+0+0
Затем при запуске xvnc используйте:
x11vnc -clip 1280x1024+1281+0 -nocursorshape -nocursorpos
Это останавливается VNC пытается использовать собственное отслеживание курсора и рисует курсор как часть изображения на экране.
Я сделал заметки здесь http://mikescodeoddities.blogspot.ae/2015/04/android-tablet-as -Втора-убунт-screen.html
Использовать vnc_virtual_display_linker
Инструмент настраивает второй виртуальный монитор для подключения к VNC, как описано во многих предыдущих ответах. Он даже поддерживает соединения с Android-устройствами с помощью USB-кабеля.
Это в принципе возможно с помощью xdmx (распределенного multihead X), который позволяет вам создать один рабочий стол с использованием двух X-серверов, работающих на разных машинах.
в принципе возможны три сценария, но ни один из них не является так же как iDisplay, потому что все они требуют перезапуска X-сессии по крайней мере. Мне не удалось нормально работать, но я запускаю Ubuntu 10.10 и не могу обновляться по разным причинам. Три из них:
1: запустите X-сервер на Android (теперь есть два доступных в магазине приложений) и используйте xdmx для объединения с дисплеем вашего рабочего стола или ноутбука. - не работал для меня, потому что xdmx разбился, когда указатель переместился на планшетную часть рабочего стола.
2: запустите второй X-сервер с vnc-файлом на вашем компьютере, используйте xdmx, чтобы объединить это в один рабочий стол с экраном вашего компьютера, а затем посмотрите на виртуальную часть с помощью vnc viewer на планшете - не работал для меня, потому что xdmx требует, чтобы все x-серверы имели одинаковые цветные изображения, что не относится к vncserver и реальный дисплей, и мне не удалось убедить vncserver изменить.
3: запустите два vncservers, по одному для каждого экрана, затем подключите их к xdmx и посмотрите на каждую часть с помощью vncviewer на соответствующем машина. - Это было ближе всего к работе для меня, к сожалению inpout был испорчен. он также был довольно медленным в истинном цвете по Wi-Fi. Я использовал этот скрипт для запуска xdmx и vncs:
#!/bin/sh
vncserver :2 -geometry 1024x768 -depth 24 && \
vncserver :3 -geometry 1920x1120 -depth 24 && \
startx -- \
/usr/bin/X11/Xdmx :1 \
-input :2 \
-display :2 \
-display :3 \
-ignorebadfontpaths \
-norender \
-noglxproxy \
+xinerama \
-nomulticursor
vncserver -kill :2
vncserver -kill :3
YMMV
Я использую драйвер xorg dummy и x11vnc -clip.
sudo apt-get install xserver-xorg-video-dummy
На втором экране есть /etc/X11/xorg.conf для фиктивного драйвера:
Section "Device" Identifier "Configured Video Device" Driver "radeon" #CHANGE THIS EndSection Section "Monitor" Identifier "Configured Monitor" EndSection Section "Screen" Identifier "Default Screen" Monitor "Configured Monitor" Device "Configured Video Device" EndSection ##Xdummy:## Section "Device" Identifier "Videocard0" Driver "dummy" #VideoRam 4096000 VideoRam 256000 EndSection ##Xdummy:## Section "Monitor" Identifier "Monitor0" # HorizSync 10.0 - 300.0 # VertRefresh 10.0 - 200.0 # DisplaySize 4335 1084 EndSection ##Xdummy:## Section "Screen" Identifier "Screen0" Device "Videocard0" Monitor "Monitor0" EndSection Section "ServerLayout" Identifier "dummy_layout" Screen 0 "Default Screen" Screen 1 "screen0" rightof "Default Screen" Option "Xinerama" "1" EndSectionЗатем войдите в X сеанс и запустите :
x11vnc -clip 1024x768+1280+0
Эти инструкции предназначены для создания «дополнительного» экрана для вашей Linux-машины с помощью планшета или любого компьютера через клиент VNC.
Я сделал эти шаги в Mageia3 32Bit (не пробовал 64-битную), но должен Аналогично для других дистрибутивов (например, Ubuntu).
Убедитесь, что у вас есть все необходимые пакеты со следующей командой терминала:
sudo apt-get install gcc autoconf automake x11-font-util libtool libxi-devel ibopenssl-devel libxfont1-devel libpam-devel x11-util-macros x11-xtrans-devel x11-server-xvfb x11-server-xdmx x11-server-devel x11-server-source
После того, как вы приобрели все вышеуказанные пакеты , выполните следующие команды:
cd /usr/share/x11-server-sources/
./autogen.sh
./configure --with-fontrootdir=/usr/share/fonts --with-xkb-path=/usr/share/X11/xkb --with-xkb-output=/usr/share/X11/xkb/compiled --enable-dmx
make
Если вы не получите никаких ошибок, исправьте Xdmx (просто положите, он был «сломан» в течение некоторого времени):
open /usr/share/x11-server-sources/hw/dmx/input/dmxevents.c и изменить строку 730: измените это:
POINTER_ABSOLUTE | POINTER_SCREEN, &mask);
на следующее:
POINTER_RELATIVE | POINTER_DESKTOP, &mask);
IF линия 730 отличается от этого раздела, чтобы найти правильную строку: Orginal section - строка для изменения, отмеченная *
case ButtonPress:
case ButtonRelease:
detail = dmxGetButtonMapping(dmxLocal, detail);
valuator_mask_zero(&mask);
QueuePointerEvents(p, type, detail,
* POINTER_RELATIVE | POINTER_DESKTOP, &mask);
return;
Проверьте свою версию Xdmx, запустив ./configure --version в /usr/share/x11-server-source/, для Xdmx 1.13 и старше вам также придется внести эти изменения (для версии 1.14 и новее вы можете перейдите к шагу «make» ниже):
откройте /usr/share/x11-server-sources/dix/getevents.c, строка 1395: измените это:
if (flags & POINTER_SCREEN ) { /* valuators are in screen coords */
К этому: [!d 11] if (flags & ( POINTER_SCREEN | POINTER_DESKTOP) ) { /* valuators are in screen coords */
(Исходный раздел - строка для изменения отмечена *)
/* valuators are in driver-native format (rel or abs) */
if (flags & POINTER_ABSOLUTE) {
* if (flags & POINTER_SCREEN ) { /* valuators are in screen coords */
sx = valuator_mask_get(&mask, 0);
sy = valuator_mask_get(&mask, 1);
открыть /usr/share/x11-server-sources/Xext/xtest.c, строка 311: изменить это:
flags = POINTER_ABSOLUTE | POINTER_SCREEN;
к этому:
flags = POINTER_ABSOLUTE | POINTER_DESKTOP;
(исходный раздел - строка для изменения отмечена *)
case MotionNotify:
dev = PickPointer(client);
valuators[0] = ev->u.keyButtonPointer.rootX;
valuators[1] = ev->u.keyButtonPointer.rootY;
numValuators = 2;
firstValuator = 0;
if (ev->u.u.detail == xFalse)
* flags = POINTER_ABSOLUTE | POINTER_DESKTOP;
break;
/usr/share/x11-server-sources/include/input.h, строка 73: добавьте эту строку после строки, начинающейся с #define POINTER_EMULATED:
#define POINTER_DESKTOP (1 << 7)
После выполнения вышеуказанных изменений повторите выполнение (в /usr/share/x11-server-sources/):
make
В /usr/share/x11-server-sources/hw/dmx/ вы должны иметь новый файл Xdmx, , Нам нужно установить это глобально для удобства, поэтому я рекомендую переименовать существующий:
sudo mv /bin/Xdmx /bin/Xdmx-old
и скопировать новый вместо него:
cp /usr/share/x11-server-sources/hw/dmx/Xdmx /bin
вы готовы выполнить первую пробную версию, следующие команды позволяют сохранить ваш основной / существующий дисплей (:0) и открыть новый дисплей с поддержкой нескольких мониторов. Я использую icewm с этими командами, чтобы сделать его немного более легким (я использую KDE на моем основном дисплее :0 и открываю любое приложение с большим количеством мониторов на новом многоголовом дисплее). Вы можете наиболее определенно скомпоновать эти команды для удобства использования (это то, что я сделал). Любая из этих команд может быть выполнена в окне консоли и / или терминала любого дисплея, единственное требование состоит в том, чтобы они выполнялись в порядке.
Эта команда создает ваш новый дисплей в качестве буфера кадров для вашего VNC-дисплея :2 (при необходимости отрегулируйте размер экрана):
Xvfb :2 +xinerama -screen 0 1024x1280x24 -ac &
Это запускает новый легкий сеанс X на вашем физическом отображается как дисплей :1 (существуют разные способы сделать это):
startx 'icewm' -- :1
Эта команда запускает мультидисплей между вашим физическим экраном и виртуальным экраном и запускает icewm для оконного менеджера:
Xdmx :3 +xinerama -display :1 -display :2 -norender -noglxproxy -ac & DISPLAY=:3 starticewm
Теперь откройте окно терминала и запустите сервер vnc (смените пароль по желанию):
x11vnc -display :3 -passwd test -clip xinerama1 -noshm -forever -nowireframe &
Осталось только заблокировать ваш клиент VNC и подключитесь к VNC - Xdmx 1.13 к порту 5900, чтобы вы могли подключиться к нему. Другое дело иметь в виду, что некоторые клиенты VNC не отображают позицию удаленного курсора, я подтверждаю, что «Mocha VNC» для iOS отлично работает, если вы отключите опцию «локальная мышь».
Enjoy перетаскивая окна между вашим основным монитором и вашим новым виртуальным вторым монитором (в то же время имея возможность использовать планшет, чтобы щелкнуть / набрать что-то на втором мониторе).
Чтобы закрыть Xdmx, дважды нажмите Ctrl + Alt + Backspace .
Автоматизация:
Я использую этот скрипт bash для запуска всего процесса (также убивает Xvfb при выходе):
Xvfb :2 +xinerama -screen 0 1024x1280x24 -ac &
xinit dual -- :1
ps | grep Xvfb | awk '{print $1}' | xargs kill
Тогда у меня есть пользовательский ~/.xinitrc с этим:
#!/bin/sh
#
# ~/.xinitrc
#
# Executed by startx (run your window manager from here)
if [[ $1 == "" ]]
then
exec startkde
elif [[ $1 == "xterm" ]]
then
exec xterm
elif [[ $1 == "dual" ]]
then
exec Xdmx :3 +xinerama -display :1 -display :2 -norender -noglxproxy -ac & DISPLAY=:3 starticewm & x11vnc -display :3 -passwd test -clip xinerama1 -noshm -forever -nowireframe
else
exec $1
fi
Устранение неполадок:
При запуске Xdmx, если вы получили сообщение об ошибке sh: /usr/local/bin/xkbcomp: No such file or directory, вам может потребоваться выполнить: cd /usr/local/bin" and "ln -s /bin/xkbcomp, затем снова попробуйте Xdmx. Ctrl + Alt + F1-F7 должен работать в Xdmx для переключения на другие консоли / xsessions, но по какой-то причине он не работает, то, что я делаю, просто выполняется sudo chvt X (где X - это номер консоли / xsession), чтобы переключитесь на мой основной дисплей. Также, когда вы переключаетесь обратно на Xdmx, вы можете получить некоторые проблемы с рисунком в любых открытых окнах, я просто нажимаю на панель задач, чтобы скрыть / показать окно, снова заставляя перерисовать.Спасибо за ребята, я расскажу, что сработало для меня на Ubuntu 14.04
Получите AndroidVNC для вашего планшета
Получите x11vnc для своего компьютера Ubuntu, запустив
sudo apt-get install x11vnc
Мне пришлось использовать метод драйвера Dummy Xorg. Вот как выглядит мой файл /etc/X11/xorg.conf:
Section "ServerLayout"
Identifier "X.org Configured"
Screen 0 "Screen0" 0 0
**Screen 1 "Screen1" rightof "Screen0"**
InputDevice "Mouse0" "CorePointer"
InputDevice "Keyboard0" "CoreKeyboard"
**Option "Xinerama" "1"**
EndSection
Section "Files"
ModulePath "/usr/lib/xorg/modules"
FontPath "/usr/share/fonts/X11/misc"
FontPath "/usr/share/fonts/X11/cyrillic"
FontPath "/usr/share/fonts/X11/100dpi/:unscaled"
FontPath "/usr/share/fonts/X11/75dpi/:unscaled"
FontPath "/usr/share/fonts/X11/Type1"
FontPath "/usr/share/fonts/X11/100dpi"
FontPath "/usr/share/fonts/X11/75dpi"
FontPath "built-ins"
EndSection
Section "Module"
Load "glx"
EndSection
Section "InputDevice"
Identifier "Keyboard0"
Driver "kbd"
EndSection
Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/input/mice"
Option "ZAxisMapping" "4 5 6 7"
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "Monitor Model"
DisplaySize 1680 1050
EndSection
**Section "Monitor"
Identifier "Monitor1"
VendorName "Dummy"
ModelName "Dummy"
DisplaySize 2704 1050
EndSection**
Section "Device"
### Available Driver options are:-
### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
### <percent>: "<f>%"
### [arg]: arg optional
#Option "NoAccel" # [<bool>]
#Option "SWcursor" # [<bool>]
#Option "EnablePageFlip" # [<bool>]
#Option "ColorTiling" # [<bool>]
#Option "ColorTiling2D" # [<bool>]
#Option "RenderAccel" # [<bool>]
#Option "SubPixelOrder" # [<str>]
#Option "AccelMethod" # <str>
#Option "EXAVSync" # [<bool>]
#Option "EXAPixmaps" # [<bool>]
#Option "ZaphodHeads" # <str>
#Option "EnablePageFlip" # [<bool>]
#Option "SwapbuffersWait" # [<bool>]
Identifier "Card0"
Driver "radeon"
BusID "PCI:1:0:0"
EndSection
**Section "Device"
Identifier "Dummy"
Driver "dummy"
EndSection**
Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "Monitor0"
SubSection "Display"
Viewport 0 0
Depth 1
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 4
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 8
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 15
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 16
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 24
EndSubSection
EndSection
**Section "Screen"
Identifier "Screen1"
Device "Dummy"
Monitor "Monitor1
EndSection**
Вам, вероятно, не понадобится все, просто запустите X -configure, чтобы получить системный autoconfig и добавьте фиктивные разделы (материал между звездочками) в файл. Разрешение для фиктивного экрана в xorg.conf должно быть вашей основной шириной монитора + шириной разрешения вашего планшета, в моем случае 1680 + 1024 = 2704 сохранить основную высоту монитора, 1050 в моем случае. Перезапустить X-сервер / перезагрузить / вытащить вилку питания, что угодно вам нужно больше:).
Запустить x11vnc, выполнив
x11vnc -rfbauth ~/.vnc/passwd -clip 1024x550+1680+0
Здесь разрешение должно быть вашей ширины планшета x высота планшета + ширина основного экрана + 0
] Подключитесь к своему ПК с помощью клиента androidVNC, убедитесь, что включена опция localmouse. Это должно быть, теперь чувствуйте странность того, что Linux запускается через android:)
#!/bin/sh
# Uncomment the following two lines for normal desktop:
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
# exec /etc/X11/xinit/xinitrc
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
#vncconfig -iconic &
#x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
#x-window-manager &
exec gnome-session
Он запускает gnome-fallback desktop (я не знаю, как сделать запуск gnome 3 в vnc). Чтобы запустить vnc-сервер, используйте команду vnc4server -geometry 800x480. Конечно, вместо 800x480 вам нужно установить разрешение планшета. Запуск x2x -east -to :1. Эта команда говорит, что ваш компьютер действует как дисплей: 1 был справа от экрана (используйте параметр -west, если хотите, чтобы он находился слева). Вы не сможете перемещать приложения с одного дисплея на другой, но вы можете использовать одну мышь и одну клавиатуру для управления ими обоими. Подключитесь к дисплею, созданному с помощью vnc4server с вашего планшета (номер порта - 5900 + номер дисплея (например, для отображения: 1 номер порта будет 5901) (номер дисплея отображается на выходе vnc4server)). Для выхода из x2x нажмите Ctrl-C. Кроме того, вы можете запустить его в фоновом режиме (x2x -east -to :1 &). Затем вам сначала нужно перенести его на передний план (fg) или убить его с помощью kill $! (будьте осторожны, он убивает последний процесс, запущенный в фоновом режиме). Чтобы удалить созданный экран, вызовите vnc4server -kill :1, где вместо :1 вы можете установить номер своего нового дисплея. Не удалось заставить другие ответы работать, кроме этого, которые работали безупречно. Вот пошаговое руководство, запрошенное комментариями.
(Обратите внимание: измените настройку разрешения по умолчанию 1280x1024 по умолчанию 1280 и 1024. Возможно, вам потребуется изменить LVDS1, если имя монитора по умолчанию отличается).
Запустить в терминале:
$ gtf 1280 1024 60.На выходе есть строка, аналогичная Modeline "1280x1024_60.00" 108.88 1280 1360 1496 1712 1024 1025 1028 1060 -HSync +Vsync. Скопируйте все после слова Modeline (исключить его) в следующую команду.
$ gtf 1280 1024 60. xrandr --addmode VIRTUAL1 1280x1024_60.00 xrandr --output VIRTUAL1 --mode 1280x1024_60.00 --left-of LVDS1xrandr --addmode VIRTUAL1 1280x1024_60.00
xrandr --output VIRTUAL1 --mode 1280x1024_60.00 --left-of LVDS1Найдите IP-адрес вашего компьютера с помощью ifconfig (при подключении к локальной сети).
#!/bin/bash
W=1280
H=800
O=VIRTUAL1
if [ "$1" == "create" ]; then
gtf $W $H 60 | sed '3q;d' | sed 's/Modeline//g' | xargs xrandr --newmode
# sed: get third line, delete 'Modeline', get first word, remove first and last characters
gtf $W $H 60 | sed '3q;d' | sed 's/Modeline//g' | awk '{print $1;}' | sed 's/^.\(.*\).$/\1/' | xargs xrandr --addmode $O
gtf $W $H 60 | sed '3q;d' | sed 's/Modeline//g' | awk '{print $1;}' | sed 's/^.\(.*\).$/\1/' | xargs xrandr --output $O --left-of LVDS1 --mode
elif [ "$1" == "on" ]; then
x11vnc -listen 192.168.42.149 -clip ${W}x${H}+0+0
# For use in Wi-Fi LAN.
#x11vnc -clip ${W}x${H}+0+0 #**WARNING** Unencrypted stream. VNC accessible without password through port 5900 in all internet interfaces.
else
echo "missing argument: [create | on]"
fi
У меня было много проблем с другими методами, перечисленными здесь. Мне хотелось бы, чтобы у меня было лучшее решение, но мое медленное и простое решение - хорошее стартовое место.
Для сервера VNC я попробовал пакет vncserver, но экран стал черным, и у меня было бы для перезапуска gdm, чтобы все снова работало. Я переключился на tightvncserver, и он работал в первый раз без конфигурации.
Чтобы поделиться мышью / клавиатурой между экранами, я использовал x2vnc. Это можно также использовать с win2vnc для совместного использования мыши / клавиатуры с ПК с ОС Windows рядом с вашим Linux-ПК.
Конечные команды:
sudo apt-get install tightvncserver
tightvncserver
sudo apt-get install x2vnc
x2vnc -east localhost:1
На этом этапе вы должны быть способны чтобы открыть второй экран в программе VNC, подключившись к YOUR_IP_ADDRESS:1. Чтобы запустить программу на экране VNC, откройте терминал, установите DISPLAY, а затем запустите команду. Например, чтобы открыть xterm на экране VNC, запустите:
export DISPLAY=:1
xterm
Используя этот подход, второй экран довольно медленный. Тем не менее, многие другие варианты, которые я пробовал, оказались в тупиках, и эта работа вообще не имела конфигурации.
TL; DR:
$ sudo apt-get install x11vnc
$ WINDOW_ID=$(xwininfo | awk '/Window.id/{print $4}') && x11vnc -viewonly -nopw -avahi -id $WINDOW_ID >/dev/null 2>&1 &
Теперь просто щелкните в окне, которое вы хотите разделить.
TL; DR [ ! d1]:
У меня есть iPad и Chromebook, и я бы хотел использовать их в качестве своих мониторов, просто для некоторых команд терминала htop, iptstate, nmon и т. д. Итак, я ленивый парень и сделал это, используя:
Установка пакета: sudo apt-get install x11vnc Откройте какой-нибудь терминал и положите xwininfo | awk '/Window.id/{print $4}' и щелкните в окне, которое хотите разделить. Результат будет выглядеть примерно так:$ xwininfo | awk '/Window.id/{print $4}'
0x4402f34
Теперь вы можете начать свой x11vnc сеанс: $ x11vnc -viewonly -nopw -avahi -id 0x4402f34 >/dev/null 2>&1 &
Изменить размер окна (0x4402f34), чтобы получить наилучшее изображение. Обратите внимание на соответствующий порт вашей сессии: 5900 -> :0, 5901 -:1, 5902 -> :2 ...
Кроме того, отлично работает с приложениями X11: Firefox, OpenOffice и т. д.
Я сделал простой сценарий bash, чтобы сделать планшет вторым. Копировать ipad_monitor.sh (не волнуйтесь, он также работает с Android) в моем сообщении в блоге.
Чем отличается от другого сообщения, вы можете легко установить положение второго экрана с дополнительным аргументом.
Изменить: здесь был включен оригинальный ipad_monitor.sh. выполните следующую команду:
./ipad_monitor.sh --right или ./ipad_monitor.sh --left ./ipad_monitor.sh --right --portrait ./ipad_monitor.sh --right --portrait --hidpiОсновная идея этого скрипта такая же, как и у других, запуск xrandr и x11vnc, но я включил опции, например, какую сторону вы хотели бы прикрепить к экрану.
#!/bin/sh
# ----------------------------------------------------------------------------
# "THE BEER-WARE LICENSE" (Revision 42):
# <k.bumsik@gmail.com> wrote this file. As long as you retain this notice you
# can do whatever you want with this stuff. If we meet some day, and you think
# this stuff is worth it, you can buy me a beer in return. - Bumsik Kim
# ----------------------------------------------------------------------------
# Configuration
WIDTH=1024 # 1368 for iPad Pro
HEIGHT=768 # 1024 for iPad Pro
MODE_NAME="mode_ipad" # Set whatever name you like, you may need to change
# this when you change resolution, or just reboot.
DIS_NAME="VIRTUAL1" # Don't change it unless you know what it is
RANDR_POS="--right-of" # Default position setting for xrandr command
# Parse arguments
while [ "$#" -gt 0 ]; do
case $1 in
-l|--left) RANDR_POS="--left-of" ;;
-r|--right) RANDR_POS="--right-of" ;;
-a|--above) RANDR_POS="--above" ;;
-b|--below) RANDR_POS="--below" ;;
-p|--portrait) TMP=$WIDTH; WIDTH=$HEIGHT; HEIGHT=$TMP
MODE_NAME="$MODE_NAME""_port" ;;
-h|--hidpi) WIDTH=$(($WIDTH * 2)); HEIGHT=$(($HEIGHT * 2))
MODE_NAME="$MODE_NAME""_hidpi" ;;
*) echo "'$1' cannot be a monitor position"; exit 1 ;;
esac
shift
done
# Detect primary display
PRIMARY_DISPLAY=$(xrandr | perl -ne 'print "$1" if /(\w*)\s*connected\s*primary/')
# Add display mode
RANDR_MODE=$(cvt "$WIDTH" "$HEIGHT" 60 | sed '2s/^.*Modeline\s*\".*\"//;2q;d')
xrandr --addmode $DIS_NAME $MODE_NAME 2>/dev/null
# If the mode doesn't exist then make mode and retry
if ! [ $? -eq 0 ]; then
xrandr --newmode $MODE_NAME $RANDR_MODE
xrandr --addmode $DIS_NAME $MODE_NAME
fi
# Show display first
xrandr --output $DIS_NAME --mode $MODE_NAME
# Then move display
sleep 5 # A short delay is needed. Otherwise sometimes the below command is ignored.
xrandr --output $DIS_NAME $RANDR_POS $PRIMARY_DISPLAY
# Cleanup before exit
function finish {
xrandr --output $DIS_NAME --off
xrandr --delmode $DIS_NAME $MODE_NAME
echo "Second monitor disabled."
}
trap finish EXIT
# Get the display's position
CLIP_POS=$(xrandr | perl -ne 'print "$1" if /'$DIS_NAME'\s*connected\s*(\d*x\d*\+\d*\+\d*)/')
echo $CLIP_POS
# Share screen
x11vnc -multiptr -repeat -clip $CLIP_POS
# Possible alternative is x0vncserver but it does not show the mouse cursor.
# x0vncserver -display :0 -geometry $DIS_NAME -overlaymode -passwordfile ~/.vnc/passwd
if ! [ $? -eq 0 ]; then
echo x11vnc failed, did you \'apt-get install x11vnc\'?
fi
Нить, связанная с распознаванием, имеет действительно интересную идею, не уверен, имел ли он в виду это, потому что я не мог найти автора, которого он указал а также потому, что я следил за ним на форуме, я опубликую его отдельно, а не как редактирование:
Во-первых, предположим, что основная машина имеет разрешение экрана 1280x800 и вторичную машину, которую вы хотите расширить свой рабочий стол до более VNC, имеет разрешение экрана 1280x1024 и вы хотите, чтобы расширенный экран был прав вашего основного экрана. Виртуальный экран должен быть 1280x800 + 1280x1024 = 2560x1024. (растяните его горизонтально и сделайте вертикальное разрешение больше из двух). Запустите xrandr --fb 2560x1024. Теперь, когда экран больше, чем ваш основной монитор, вы должны убедиться, что нет панорамирования или какой-либо другой нежелательной «функции», а также, что координаты верхнего левого угла вашего основного монитора равны 0x0. x11vnc -clip 1280x1024+1281+0 плюс добавить любые другие опции x11vnc по вкусу :)Это должно быть так.
Для тех, кто все еще интересуется этой темой: клип xrandr и x11vnc работает; чтобы позволить мыши перемещаться там, вам нужно использовать аргумент панорамирования для установки области отслеживания мыши:
xrandr --fb 2560x1024 --output LVDS1 --panning 1280x1024+0+0/2560x1024+0+0
Затем при запуске xvnc используйте:
x11vnc -clip 1280x1024+1281+0 -nocursorshape -nocursorpos
Это останавливается VNC пытается использовать собственное отслеживание курсора и рисует курсор как часть изображения на экране.
Я сделал заметки здесь http://mikescodeoddities.blogspot.ae/2015/04/android-tablet-as -Втора-убунт-screen.html
Использовать vnc_virtual_display_linker
Инструмент настраивает второй виртуальный монитор для подключения к VNC, как описано во многих предыдущих ответах. Он даже поддерживает соединения с Android-устройствами с помощью USB-кабеля.
Это в принципе возможно с помощью xdmx (распределенного multihead X), который позволяет вам создать один рабочий стол с использованием двух X-серверов, работающих на разных машинах.
в принципе возможны три сценария, но ни один из них не является так же как iDisplay, потому что все они требуют перезапуска X-сессии по крайней мере. Мне не удалось нормально работать, но я запускаю Ubuntu 10.10 и не могу обновляться по разным причинам. Три из них:
1: запустите X-сервер на Android (теперь есть два доступных в магазине приложений) и используйте xdmx для объединения с дисплеем вашего рабочего стола или ноутбука. - не работал для меня, потому что xdmx разбился, когда указатель переместился на планшетную часть рабочего стола.
2: запустите второй X-сервер с vnc-файлом на вашем компьютере, используйте xdmx, чтобы объединить это в один рабочий стол с экраном вашего компьютера, а затем посмотрите на виртуальную часть с помощью vnc viewer на планшете - не работал для меня, потому что xdmx требует, чтобы все x-серверы имели одинаковые цветные изображения, что не относится к vncserver и реальный дисплей, и мне не удалось убедить vncserver изменить.
3: запустите два vncservers, по одному для каждого экрана, затем подключите их к xdmx и посмотрите на каждую часть с помощью vncviewer на соответствующем машина. - Это было ближе всего к работе для меня, к сожалению inpout был испорчен. он также был довольно медленным в истинном цвете по Wi-Fi. Я использовал этот скрипт для запуска xdmx и vncs:
#!/bin/sh
vncserver :2 -geometry 1024x768 -depth 24 && \
vncserver :3 -geometry 1920x1120 -depth 24 && \
startx -- \
/usr/bin/X11/Xdmx :1 \
-input :2 \
-display :2 \
-display :3 \
-ignorebadfontpaths \
-norender \
-noglxproxy \
+xinerama \
-nomulticursor
vncserver -kill :2
vncserver -kill :3
YMMV
Я использую драйвер xorg dummy и x11vnc -clip.
sudo apt-get install xserver-xorg-video-dummy
На втором экране есть /etc/X11/xorg.conf для фиктивного драйвера:
Section "Device" Identifier "Configured Video Device" Driver "radeon" #CHANGE THIS EndSection Section "Monitor" Identifier "Configured Monitor" EndSection Section "Screen" Identifier "Default Screen" Monitor "Configured Monitor" Device "Configured Video Device" EndSection ##Xdummy:## Section "Device" Identifier "Videocard0" Driver "dummy" #VideoRam 4096000 VideoRam 256000 EndSection ##Xdummy:## Section "Monitor" Identifier "Monitor0" # HorizSync 10.0 - 300.0 # VertRefresh 10.0 - 200.0 # DisplaySize 4335 1084 EndSection ##Xdummy:## Section "Screen" Identifier "Screen0" Device "Videocard0" Monitor "Monitor0" EndSection Section "ServerLayout" Identifier "dummy_layout" Screen 0 "Default Screen" Screen 1 "screen0" rightof "Default Screen" Option "Xinerama" "1" EndSectionЗатем войдите в X сеанс и запустите :
x11vnc -clip 1024x768+1280+0
Эти инструкции предназначены для создания «дополнительного» экрана для вашей Linux-машины с помощью планшета или любого компьютера через клиент VNC.
Я сделал эти шаги в Mageia3 32Bit (не пробовал 64-битную), но должен Аналогично для других дистрибутивов (например, Ubuntu).
Убедитесь, что у вас есть все необходимые пакеты со следующей командой терминала:
sudo apt-get install gcc autoconf automake x11-font-util libtool libxi-devel ibopenssl-devel libxfont1-devel libpam-devel x11-util-macros x11-xtrans-devel x11-server-xvfb x11-server-xdmx x11-server-devel x11-server-source
После того, как вы приобрели все вышеуказанные пакеты , выполните следующие команды:
cd /usr/share/x11-server-sources/
./autogen.sh
./configure --with-fontrootdir=/usr/share/fonts --with-xkb-path=/usr/share/X11/xkb --with-xkb-output=/usr/share/X11/xkb/compiled --enable-dmx
make
Если вы не получите никаких ошибок, исправьте Xdmx (просто положите, он был «сломан» в течение некоторого времени):
open /usr/share/x11-server-sources/hw/dmx/input/dmxevents.c и изменить строку 730: измените это:
POINTER_ABSOLUTE | POINTER_SCREEN, &mask);
на следующее:
POINTER_RELATIVE | POINTER_DESKTOP, &mask);
IF линия 730 отличается от этого раздела, чтобы найти правильную строку: Orginal section - строка для изменения, отмеченная *
case ButtonPress:
case ButtonRelease:
detail = dmxGetButtonMapping(dmxLocal, detail);
valuator_mask_zero(&mask);
QueuePointerEvents(p, type, detail,
* POINTER_RELATIVE | POINTER_DESKTOP, &mask);
return;
Проверьте свою версию Xdmx, запустив ./configure --version в /usr/share/x11-server-source/, для Xdmx 1.13 и старше вам также придется внести эти изменения (для версии 1.14 и новее вы можете перейдите к шагу «make» ниже):
откройте /usr/share/x11-server-sources/dix/getevents.c, строка 1395: измените это:
if (flags & POINTER_SCREEN ) { /* valuators are in screen coords */
К этому: [!d 11] if (flags & ( POINTER_SCREEN | POINTER_DESKTOP) ) { /* valuators are in screen coords */
(Исходный раздел - строка для изменения отмечена *)
/* valuators are in driver-native format (rel or abs) */
if (flags & POINTER_ABSOLUTE) {
* if (flags & POINTER_SCREEN ) { /* valuators are in screen coords */
sx = valuator_mask_get(&mask, 0);
sy = valuator_mask_get(&mask, 1);
открыть /usr/share/x11-server-sources/Xext/xtest.c, строка 311: изменить это:
flags = POINTER_ABSOLUTE | POINTER_SCREEN;
к этому:
flags = POINTER_ABSOLUTE | POINTER_DESKTOP;
(исходный раздел - строка для изменения отмечена *)
case MotionNotify:
dev = PickPointer(client);
valuators[0] = ev->u.keyButtonPointer.rootX;
valuators[1] = ev->u.keyButtonPointer.rootY;
numValuators = 2;
firstValuator = 0;
if (ev->u.u.detail == xFalse)
* flags = POINTER_ABSOLUTE | POINTER_DESKTOP;
break;
/usr/share/x11-server-sources/include/input.h, строка 73: добавьте эту строку после строки, начинающейся с #define POINTER_EMULATED:
#define POINTER_DESKTOP (1 << 7)
После выполнения вышеуказанных изменений повторите выполнение (в /usr/share/x11-server-sources/):
make
В /usr/share/x11-server-sources/hw/dmx/ вы должны иметь новый файл Xdmx, , Нам нужно установить это глобально для удобства, поэтому я рекомендую переименовать существующий:
sudo mv /bin/Xdmx /bin/Xdmx-old
и скопировать новый вместо него:
cp /usr/share/x11-server-sources/hw/dmx/Xdmx /bin
вы готовы выполнить первую пробную версию, следующие команды позволяют сохранить ваш основной / существующий дисплей (:0) и открыть новый дисплей с поддержкой нескольких мониторов. Я использую icewm с этими командами, чтобы сделать его немного более легким (я использую KDE на моем основном дисплее :0 и открываю любое приложение с большим количеством мониторов на новом многоголовом дисплее). Вы можете наиболее определенно скомпоновать эти команды для удобства использования (это то, что я сделал). Любая из этих команд может быть выполнена в окне консоли и / или терминала любого дисплея, единственное требование состоит в том, чтобы они выполнялись в порядке.
Эта команда создает ваш новый дисплей в качестве буфера кадров для вашего VNC-дисплея :2 (при необходимости отрегулируйте размер экрана):
Xvfb :2 +xinerama -screen 0 1024x1280x24 -ac &
Это запускает новый легкий сеанс X на вашем физическом отображается как дисплей :1 (существуют разные способы сделать это):
startx 'icewm' -- :1
Эта команда запускает мультидисплей между вашим физическим экраном и виртуальным экраном и запускает icewm для оконного менеджера:
Xdmx :3 +xinerama -display :1 -display :2 -norender -noglxproxy -ac & DISPLAY=:3 starticewm
Теперь откройте окно терминала и запустите сервер vnc (смените пароль по желанию):
x11vnc -display :3 -passwd test -clip xinerama1 -noshm -forever -nowireframe &
Осталось только заблокировать ваш клиент VNC и подключитесь к VNC - Xdmx 1.13 к порту 5900, чтобы вы могли подключиться к нему. Другое дело иметь в виду, что некоторые клиенты VNC не отображают позицию удаленного курсора, я подтверждаю, что «Mocha VNC» для iOS отлично работает, если вы отключите опцию «локальная мышь».
Enjoy перетаскивая окна между вашим основным монитором и вашим новым виртуальным вторым монитором (в то же время имея возможность использовать планшет, чтобы щелкнуть / набрать что-то на втором мониторе).
Чтобы закрыть Xdmx, дважды нажмите Ctrl + Alt + Backspace .
Автоматизация:
Я использую этот скрипт bash для запуска всего процесса (также убивает Xvfb при выходе):
Xvfb :2 +xinerama -screen 0 1024x1280x24 -ac &
xinit dual -- :1
ps | grep Xvfb | awk '{print $1}' | xargs kill
Тогда у меня есть пользовательский ~/.xinitrc с этим:
#!/bin/sh
#
# ~/.xinitrc
#
# Executed by startx (run your window manager from here)
if [[ $1 == "" ]]
then
exec startkde
elif [[ $1 == "xterm" ]]
then
exec xterm
elif [[ $1 == "dual" ]]
then
exec Xdmx :3 +xinerama -display :1 -display :2 -norender -noglxproxy -ac & DISPLAY=:3 starticewm & x11vnc -display :3 -passwd test -clip xinerama1 -noshm -forever -nowireframe
else
exec $1
fi
Устранение неполадок:
При запуске Xdmx, если вы получили сообщение об ошибке sh: /usr/local/bin/xkbcomp: No such file or directory, вам может потребоваться выполнить: cd /usr/local/bin" and "ln -s /bin/xkbcomp, затем снова попробуйте Xdmx. Ctrl + Alt + F1-F7 должен работать в Xdmx для переключения на другие консоли / xsessions, но по какой-то причине он не работает, то, что я делаю, просто выполняется sudo chvt X (где X - это номер консоли / xsession), чтобы переключитесь на мой основной дисплей. Также, когда вы переключаетесь обратно на Xdmx, вы можете получить некоторые проблемы с рисунком в любых открытых окнах, я просто нажимаю на панель задач, чтобы скрыть / показать окно, снова заставляя перерисовать.Спасибо за ребята, я расскажу, что сработало для меня на Ubuntu 14.04
Получите AndroidVNC для вашего планшета
Получите x11vnc для своего компьютера Ubuntu, запустив
sudo apt-get install x11vnc
Мне пришлось использовать метод драйвера Dummy Xorg. Вот как выглядит мой файл /etc/X11/xorg.conf:
Section "ServerLayout"
Identifier "X.org Configured"
Screen 0 "Screen0" 0 0
**Screen 1 "Screen1" rightof "Screen0"**
InputDevice "Mouse0" "CorePointer"
InputDevice "Keyboard0" "CoreKeyboard"
**Option "Xinerama" "1"**
EndSection
Section "Files"
ModulePath "/usr/lib/xorg/modules"
FontPath "/usr/share/fonts/X11/misc"
FontPath "/usr/share/fonts/X11/cyrillic"
FontPath "/usr/share/fonts/X11/100dpi/:unscaled"
FontPath "/usr/share/fonts/X11/75dpi/:unscaled"
FontPath "/usr/share/fonts/X11/Type1"
FontPath "/usr/share/fonts/X11/100dpi"
FontPath "/usr/share/fonts/X11/75dpi"
FontPath "built-ins"
EndSection
Section "Module"
Load "glx"
EndSection
Section "InputDevice"
Identifier "Keyboard0"
Driver "kbd"
EndSection
Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/input/mice"
Option "ZAxisMapping" "4 5 6 7"
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "Monitor Model"
DisplaySize 1680 1050
EndSection
**Section "Monitor"
Identifier "Monitor1"
VendorName "Dummy"
ModelName "Dummy"
DisplaySize 2704 1050
EndSection**
Section "Device"
### Available Driver options are:-
### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
### <percent>: "<f>%"
### [arg]: arg optional
#Option "NoAccel" # [<bool>]
#Option "SWcursor" # [<bool>]
#Option "EnablePageFlip" # [<bool>]
#Option "ColorTiling" # [<bool>]
#Option "ColorTiling2D" # [<bool>]
#Option "RenderAccel" # [<bool>]
#Option "SubPixelOrder" # [<str>]
#Option "AccelMethod" # <str>
#Option "EXAVSync" # [<bool>]
#Option "EXAPixmaps" # [<bool>]
#Option "ZaphodHeads" # <str>
#Option "EnablePageFlip" # [<bool>]
#Option "SwapbuffersWait" # [<bool>]
Identifier "Card0"
Driver "radeon"
BusID "PCI:1:0:0"
EndSection
**Section "Device"
Identifier "Dummy"
Driver "dummy"
EndSection**
Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "Monitor0"
SubSection "Display"
Viewport 0 0
Depth 1
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 4
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 8
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 15
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 16
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 24
EndSubSection
EndSection
**Section "Screen"
Identifier "Screen1"
Device "Dummy"
Monitor "Monitor1
EndSection**
Вам, вероятно, не понадобится все, просто запустите X -configure, чтобы получить системный autoconfig и добавьте фиктивные разделы (материал между звездочками) в файл. Разрешение для фиктивного экрана в xorg.conf должно быть вашей основной шириной монитора + шириной разрешения вашего планшета, в моем случае 1680 + 1024 = 2704 сохранить основную высоту монитора, 1050 в моем случае. Перезапустить X-сервер / перезагрузить / вытащить вилку питания, что угодно вам нужно больше:).
Запустить x11vnc, выполнив
x11vnc -rfbauth ~/.vnc/passwd -clip 1024x550+1680+0
Здесь разрешение должно быть вашей ширины планшета x высота планшета + ширина основного экрана + 0
] Подключитесь к своему ПК с помощью клиента androidVNC, убедитесь, что включена опция localmouse. Это должно быть, теперь чувствуйте странность того, что Linux запускается через android:)
#!/bin/sh
# Uncomment the following two lines for normal desktop:
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
# exec /etc/X11/xinit/xinitrc
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
#vncconfig -iconic &
#x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
#x-window-manager &
exec gnome-session
Он запускает gnome-fallback desktop (я не знаю, как сделать запуск gnome 3 в vnc). Чтобы запустить vnc-сервер, используйте команду vnc4server -geometry 800x480. Конечно, вместо 800x480 вам нужно установить разрешение планшета. Запуск x2x -east -to :1. Эта команда говорит, что ваш компьютер действует как дисплей: 1 был справа от экрана (используйте параметр -west, если хотите, чтобы он находился слева). Вы не сможете перемещать приложения с одного дисплея на другой, но вы можете использовать одну мышь и одну клавиатуру для управления ими обоими. Подключитесь к дисплею, созданному с помощью vnc4server с вашего планшета (номер порта - 5900 + номер дисплея (например, для отображения: 1 номер порта будет 5901) (номер дисплея отображается на выходе vnc4server)). Для выхода из x2x нажмите Ctrl-C. Кроме того, вы можете запустить его в фоновом режиме (x2x -east -to :1 &). Затем вам сначала нужно перенести его на передний план (fg) или убить его с помощью kill $! (будьте осторожны, он убивает последний процесс, запущенный в фоновом режиме). Чтобы удалить созданный экран, вызовите vnc4server -kill :1, где вместо :1 вы можете установить номер своего нового дисплея. Не удалось заставить другие ответы работать, кроме этого, которые работали безупречно. Вот пошаговое руководство, запрошенное комментариями.
(Обратите внимание: измените настройку разрешения по умолчанию 1280x1024 по умолчанию 1280 и 1024. Возможно, вам потребуется изменить LVDS1, если имя монитора по умолчанию отличается).
Запустить в терминале:
$ gtf 1280 1024 60.На выходе есть строка, аналогичная Modeline "1280x1024_60.00" 108.88 1280 1360 1496 1712 1024 1025 1028 1060 -HSync +Vsync. Скопируйте все после слова Modeline (исключить его) в следующую команду.
$ gtf 1280 1024 60. xrandr --addmode VIRTUAL1 1280x1024_60.00 xrandr --output VIRTUAL1 --mode 1280x1024_60.00 --left-of LVDS1xrandr --addmode VIRTUAL1 1280x1024_60.00
xrandr --output VIRTUAL1 --mode 1280x1024_60.00 --left-of LVDS1Найдите IP-адрес вашего компьютера с помощью ifconfig (при подключении к локальной сети).
#!/bin/bash
W=1280
H=800
O=VIRTUAL1
if [ "$1" == "create" ]; then
gtf $W $H 60 | sed '3q;d' | sed 's/Modeline//g' | xargs xrandr --newmode
# sed: get third line, delete 'Modeline', get first word, remove first and last characters
gtf $W $H 60 | sed '3q;d' | sed 's/Modeline//g' | awk '{print $1;}' | sed 's/^.\(.*\).$/\1/' | xargs xrandr --addmode $O
gtf $W $H 60 | sed '3q;d' | sed 's/Modeline//g' | awk '{print $1;}' | sed 's/^.\(.*\).$/\1/' | xargs xrandr --output $O --left-of LVDS1 --mode
elif [ "$1" == "on" ]; then
x11vnc -listen 192.168.42.149 -clip ${W}x${H}+0+0
# For use in Wi-Fi LAN.
#x11vnc -clip ${W}x${H}+0+0 #**WARNING** Unencrypted stream. VNC accessible without password through port 5900 in all internet interfaces.
else
echo "missing argument: [create | on]"
fi