์ผ์๊ฐ ์๋ํ์ง ์๋ ํ๋ฒํ ํ๋ธ๋ฆฟ(ํฐ ์๋ค์ด ์ต์ ์ ๋คํ์ต๋๋ค)์ ์์ ์์์ ์๊ฒ ๋ ์ ๋ ์ด๋ฅผ ์ด๋์ ์ ์ฉํ ์ง ์ค๋ซ๋์ ๊ณ ๋ฏผํ์ต๋๋ค. ๊ตฌ๊ธ๋ง, ๊ตฌ๊ธ๋ง ๋ฐ ๊ตฌ๊ธ๋(
๋ด ๋ฐฉ๋ฒ์ ์ปท ์๋์ ์์ต๋๋ค.
๋น์ ์ด ํ์ํฉ๋๋ค :
์ค์น๋ Linux:
- x11vnc (์์งํ ๋ชจ๋ ์ข ๋ฅ์ TigerVNC์ ๋ค๋ฅธ ๊ฒ์ ์ข์ํ์ง ์์ต๋๋ค)
- ADB ์๋๋ก์ด๋ ๋๊ตฌ ํคํธ์์
๋๋ฒ๊น ๋ชจ๋๊ฐ ํ์ฑํ๋๊ณ ๋ค์์ผ๋ก ์ค์ ๋ ํ๋ธ๋ฆฟ/์ค๋งํธ:
- ์๋๋ก์ด๋NVC (๊ด๊ณ ๊ฐ ์์ด์ ์ด๊ฑธ ๊ฐ์ง๊ณ ์์ด์)
- ์ผ์ข ์ ํ๋ฉด ๋ธ๋ญํน ์ฐจ๋จ๊ธฐ(๊ด๊ณ ์์ด๋ ์ฐพ์ ์ ์์์ต๋๋ค)
- ๋ชจ๋ ์๋ ๋ก๋(VNC ๋ฐ ์ฐจ๋จ๊ธฐ ์คํ)๋ ์ ํ ์ฌํญ์ ๋๋ค(์์ธํ ๋ด์ฉ์ ์๋ ์ฐธ์กฐ).
๊ทธ๋ ์์ํ์.
1. xorg.conf์ฉ Modeline ๋ฐ๊ธฐ
$ cvt 1024 768 25 # ะะพะถะฝะพ ะธ gtf, ะฝะพ ะพะฝ ะฝะต ะฒัะตะณะดะฐ ะดะฐะตั ะบะพััะตะบัะฝัะน modeline.
2. ํธ์ง
xorg.conf
Section "ServerLayout"
Identifier "Xorg Configured"
Screen 0 "Monitor" 0 0
Screen 2 "Screen2" rightof "Screen0" # "ะัััััะบะฐ ะดะปั VNC"
Option "Xinerama" "1"
EndSection
#>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
# ะทะดะตัั ะฒัะต ะฝะฐัััะพะนะบะธ ะพะฑะพััะดะพะฒะฐะฝะธั, ะบะพะปะธ ัะฐะบะพะฒัะต ะตััั
#>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
#Dummy ะฒะธะดะตะพะบะฐััะฐ
Section "Device"
Identifier "Device2"
Driver "dummy"
VideoRam 8000
EndSection
#Dummy ะผะพะฝะธัะพั
Section "Monitor"
Identifier "Monitor2"
Modeline "1024x768@25" 23.77 1024 1056 1144 1176 768 785 789 807 # ัะผ. ะฟ. 1
EndSection
#Dummy ัะบัะฐะฝ
Section "Screen"
Identifier "Screen2"
Device "Device2"
Monitor "Monitor2"
DefaultDepth 24
SubSection "Display"
#ัะฐะทัะตัะตะฝะธะต ะฟะปะฐัะตัะฐ
Modes "1024x768"
Virtual 1024 748
EndSubSection
EndSection
X-sys๋ฅผ ๋ค์ ์์ํ๊ณ arandr์ ํตํด ํ์ธํฉ๋๋ค. ์์น์ ๋ฐฉํฅ์ ์ค์ ํ์ญ์์ค. ๋ค์๊ณผ ๊ฐ์์ผ ํฉ๋๋ค.
์ฐ๋ฆฌ๋ ๊ทธ๊ฒ์ ํ์ผ์ ์ ์ฅํฉ๋๋ค. ๊ทธ๊ฒ์ ์ฐ๋ฆฌ์๊ฒ ์ ์ฉํ ๊ฒ์
๋๋ค.
3. WM/DE์์ ์๋ ๋ก๋ฉํ ํ์ผ์ ์์ฑํฉ๋๋ค(planshet.sh๊ฐ ์์ต๋๋ค).
x11vnc -rfbport 5900 -display :0 -dontdisconnect -noxfixes -xdamage -shared -forever -clip 1024x768+1600+0 -scale 1024x768 -bg -cursor X -o /home/$USER/x11vnc.log -repeat
xrandr --addmode VIRTUAL1 1024x768 # ะฝะตะพะฑัะทะฐัะตะปัะฝะพ
xrandr --output VIRTUAL1 --mode 1024x768 # ะฝะตะพะฑัะทะฐัะตะปัะฝะพ
xrandr --output VIRTUAL2 --off --output HDMI1 --off --output VIRTUAL1 --mode 1024x768 --pos 1602x0 --rotate normal --output DP1 --off --output VGA1 --mode 1600x900 --pos 0x0 --rotate normal #ะฒะพั ััะฐ ัััะพะบะฐ ะทะฐะธะผััะฒะพะฒะฐะฝะฐ ะธะท ัะพั
ัะฐะฝะตะฝะฝะพะณะพ ัะฐะนะปะฐ arandr
๊ฒ์ฌ:
$ xrandr |grep VIRTUAL1
VIRTUAL1 connected 1024x768+1600+0 (normal left inverted right x axis y axis) 0mm x 0mm
IceWM์๋ ์๋ ์์ ๋๋ ํฐ๋ฆฌ๊ฐ ์์ง๋ง ~/.icewm/startup ํ์ผ(์คํ ๊ฐ๋ฅํด์ผ ํจ)์ด ์์ผ๋ฏ๋ก ๋ค์์ ์ถ๊ฐํฉ๋๋ค.
sh -c /path/to/planshet.sh
4. ๋ชจ๋ํฐ ๋ธ๋ญํน์ ๋นํ์ฑํํฉ๋๋ค.
xset s off
xset s noblank
xset -dpms
์ด์ ์ฌ๋ฏธ์๋ ๋ถ๋ถ์ด ๋์ต๋๋ค! ์ฝ์์์ ํค๋ณด๋๋ฅผ ๊ณ ๋ฌธํ์ฌ "์ํ ์ฐฉ์ค" ์์ด ์ฅ์น์ "ํญ" ์ขํ๋ฅผ ์ป๋ ๋ฐฉ๋ฒ์ ๋ฌด์์ ๋๊น?!
๊ทธ๋ฐ ๊ฒ์ ์ํด์ ๋๋ ์กฐ๊ฐ์ ํ์ด
6. ์ด ๋ชจ๋ ๊ฒ์ planshet.sh์ ์ถ๊ฐํด ๋ณด๊ฒ ์ต๋๋ค.
์ ์ ๋ฒ์
#!/bin/bash
x11vnc -rfbport 5900 -display :0 -dontdisconnect -noxfixes -xdamage -shared -forever -clip 1024x768+1600+0 -scale 1024x768 -bg -cursor X -o /home/$USER/x11vnc.log -repeat
xrandr --addmode VIRTUAL1 1024x768 # ะฝะตะพะฑัะทะฐัะตะปัะฝะพ
xrandr --output VIRTUAL1 --mode 1024x768 # ะฝะตะพะฑัะทะฐัะตะปัะฝะพ
xrandr --output VIRTUAL2 --off --output HDMI1 --off --output VIRTUAL1 --mode 1024x768 --pos 1602x0 --rotate normal --output DP1 --off --output VGA1 --mode 1600x900 --pos 0x0 --rotate normal #ะฒะพั ััะฐ ัััะพะบะฐ ะทะฐะธะผััะฒะพะฒะฐะฝะฐ ะธะท ัะพั
ัะฐะฝะตะฝะฝะพะณะพ ัะฐะนะปะฐ arandr
xset s off
xset s noblank
xset -dpms
adb tcpip 5555
adb connect 192.168.0.14:5555
sudo adb devices
adb shell input tap 1000 20 # ัะฐะฟะฐะตะผ ะฟะพ "ะบะฒะฐะดัะฐัะธะบะฐะผ" ะฒ ะฟัะฐะฒะพะผ ะฒะตัั
ะฝะตะผ ัะณะปั (ะฝะต ะทะฝะฐั, ะบะฐะบ ะฝัะทะฐะฒะตััั) - ัะบัะธะฝ 3
adb shell input tap 392 138 # ัะฐะฟะฐะตะผ ะฟะพ AndroidVNC
adb shell input tap 20 65 # ะทะฐะฟััะบะฐะตะผ VNC ะฟัะตะดะฒะฐัะธัะตะปัะฝะพ ะฟัะพะฟะธัะฐะฒ ะฐะดัะตั ะธ ะฟะพัั
๊ทธ๋ฆฌ๊ณ ์ฐ๋ฆฌ๋ ๊ทธ๊ฒ์ ํ ๊ฒ์ ๋๋ค
chmod +x /path/to/planshet.sh
์ค์ ๋ก ๊ทธ๊ฒ ์ ๋ถ์ ๋๋ค. X ์๋ฒ๋ฅผ ์ฌ๋ถํ ํ๊ณ ๋ฉํฐ์คํฌ๋ฆฐ์ ์ป์ผ์ธ์.
๋๋ ๋์ "์์" ํ๋์ conky ์คํ์ ๊ฐ์ง๊ณ ์์ต๋๋ค.
์ด์ค ํ๋ฉด์ ์คํฌ๋ฆฐ์ท์ ์ฒจ๋ถํฉ๋๋ค.
๋๋ ๋ํ ๋ฌด์ธ๊ฐ๋ฅผ ๋ชจ๋ธ๋งํ ๋ ๋ฐ์ดํฐ์ํธ๋ฅผ ๊ทธ ์์ ๋์ง๋๋ค.
์ถ์ฒ : habr.com