เชฆเชฐเซเชเชจเซ เชจเชฎเชธเซเชเชพเชฐ,
x11vnc เชฆเซเชตเชพเชฐเชพ เชนเชพเชฒเชจเชพ Xorg เชธเชคเซเชฐเชฎเชพเช เชฐเชฟเชฎเซเช เชเชจเซเชเซเชถเชจ เชเซเชตเซ เชฐเซเชคเซ เชธเซเช เชเชฐเชตเซเช เชคเซ เชตเชฟเชทเชฏ เชชเชฐ เชเชจเซเชเชฐเชจเซเช เชชเชฐ เชเชฃเชพ เชฒเซเชเซ เชเซ, เชชเชฐเชเชคเซ เชฎเชจเซ เชเซเชฏเชพเชเชฏ เชฎเชณเซเชฏเซเช เชจเชฅเซ เชเซ เชธเซเชฅเชพเชจเชฟเช เชฎเซเชจเชฟเชเชฐ เช
เชจเซ เชเชจเชชเซเชเชจเซ เชเซเชตเซ เชฐเซเชคเซ เชฆเชฌเชพเชตเชตเซเช เชเซเชฅเซ เชฐเชฟเชฎเซเช เชเชฎเซเชชเซเชฏเซเชเชฐเชจเซ เชฌเชพเชเซเชฎเชพเช เชฌเซเช เซเชฒเชพ เชเซเชเชชเชฃ เชคเชฎเซ เชถเซเช เชเชฐเซ เชฐเชนเซเชฏเชพ เชเซ เชคเซ เชเซเชคเชพ เชจเชฅเซ เช
เชจเซ เชคเชฎเชพเชฐเชพ เชธเชคเซเชฐเชฎเชพเช เชฌเชเชจเซ เชฆเชฌเชพเชตเชคเชพ เชจเชฅเซ. เชเช เชจเซเชเซ x11vnc เชจเซ RDP เชฎเชพเชฐเชซเชค เชตเชฟเชจเซเชกเซเช เชธเชพเชฅเซ เชเชจเซเชเซเช เชเชฐเชตเชพ เชธเชฎเชพเชจ เชฌเชจเชพเชตเชตเชพ เชฎเชพเชเซเชจเซ เชฎเชพเชฐเซ เชชเชฆเซเชงเชคเชฟ เชเซ.
เชคเซเชฅเซ, เชเชพเชฒเซ เชเชนเซเช เชเซ เชคเชฎเซ x11vnc เชจเซ เชเชชเชฏเซเช เชเซเชตเซ เชฐเซเชคเซ เชเชฐเชตเซ เชคเซ เชชเชนเซเชฒเชพเชฅเซ เช เชเชพเชฃเซ เชเซ, เชเซ เชจเชนเซเช, เชคเซ เชคเชฎเซ เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ เชเซเชเชฒ เช
เชฅเชตเชพ เชตเชพเชเชเซ เชถเชเซ เชเซ
เชเชชเซเชฒ: เช เชฎเซ x11nvc เชฒเซเชจเซเช เชเชฐเซเช เชเซเช, เชคเซเชจเซ เชเซเชฒเชพเชฏเชเช เชธเชพเชฅเซ เชเชจเซเชเซเช เชเชฐเซเช เชเซเช, เชฌเชงเซเช เชเชพเชฎ เชเชฐเซ เชเซ, เชชเชฐเชเชคเซ เชเชฎเซเชชเซเชฏเซเชเชฐเชจเซเช เชธเซเชฅเชพเชจเชฟเช เชเชจเซเชธเซเชฒ เชเซเชตเชพ เช เชจเซ เชเชจเชชเซเช เชฎเชพเชเซ เชชเชฃ เชเชชเชฒเชฌเซเชง เชเซ.
เช เชฎเซ เชเชเซเชเซเช เชเซเช: เชฒเซเชเชฒ เชเชจเซเชธเซเชฒ (เชฎเซเชจเชฟเชเชฐ + เชเซเชฌเซเชฐเซเชก + เชฎเชพเชเชธ) เชฌเชเชง เชเชฐเซ เชเซเชฅเซ เชเชฐเซเชจเซ เชเชถเซเช เชเซเช เชเซ เชฆเชพเชเชฒ เชจ เชฅเช เชถเชเซ.
เชฎเซเชจเชฟเชเชฐเซเชธ เชฌเชเชง เชเชฐเซ เชฐเชนเซเชฏเชพ เชเซเช
เชชเซเชฐเชฅเชฎ เชตเชธเซเชคเซ เชเซ เชงเซเชฏเชพเชจเชฎเชพเช เชเชตเซ เชคเซ เชซเชเซเชค xrandr เชฆเซเชตเชพเชฐเชพ เชฎเซเชจเชฟเชเชฐเชจเซ เชฌเชเชง เชเชฐเชตเชพเชจเซเช เชนเชคเซเช, เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ เชเชจเชพ เชเซเชตเซเช:
$ xrandr --output CRT1 --off
เชชเชฐเชเชคเซ เชคเซ เช เชธเชฎเชฏเซ, เชตเชฟเชจเซเชกเซเชเชเช เชเชจเซเชตเชพเชฏเชฐเซเชจเชฎเซเชจเซเช (เชฎเชพเชฐเซ เชชเชพเชธเซ KDE เชเซ) เชเชตเซเช เชตเชฟเชเชพเชฐเชตเชพเชจเซเช เชถเชฐเซ เชเชฐเซ เชเซ เชเซ เชฎเซเชจเชฟเชเชฐ เชเชฐเซเชเชฐ เชฌเชเชง เชเซ เช
เชจเซ เชตเชฟเชจเซเชกเซ เช
เชจเซ เชชเซเชจเชฒ เชซเซเชเชเชตเชพเชจเซเช เชถเชฐเซ เชเชฐเซ เชเซ, เชฌเชงเซเช เชฌเชนเชพเชฐ เชจเซเชเชณเซ เชเชพเชฏ เชเซ เช
เชจเซ เชเชฆเชพเชธเซ เชฌเชจเซ เชเชพเชฏ เชเซ.
เชคเซเชฏเชพเช เชเช เชตเชงเซ เชฐเชธเชชเซเชฐเชฆ เชฐเซเชค เชเซ, เชเซ เชฎเซเชจเชฟเชเชฐเชจเซ เชนเชพเชเชฌเชฐเชจเซเชถเชจเชฎเชพเช เชฎเซเชเชฒเชตเชพเชจเซ เชเซ, เชคเชฎเซ เช เชเชฐเซ เชถเชเซ เชเซ เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ เชเชจเชพ เชเซเชตเซเช:
$ xset dpms force off
เชชเชฐเชเชคเซ เช เชนเซเช เชชเชฃ, เชฌเชงเซเช เชธเชฐเชณ เชจเชฅเซ. เชธเชฟเชธเซเชเชฎ เชชเซเชฐเชฅเชฎ เชเชตเซเชจเซเชเชฎเชพเช เชฎเซเชจเชฟเชเชฐเชจเซ เชเชพเชเซเชค เชเชฐเซ เชเซ. เชเชเซเชฐเชจเชพ เชฐเซเชชเชฎเชพเช เชธเซเชฅเซ เชธเชฐเชณ เชเซเชฐเช เชฎเชฆเชฆ เชเชฐเซ เชเซ:
while :
do
xset dpms force off
sleep .5
done
เชฎเซเช เชเชเชณ เชตเชฟเชเชพเชฐเซเชฏเซเช เชจ เชนเชคเซเช - เชนเซเช เชเชณเชธเซ เชนเชคเซ, เชคเซ เชคเซเชจเชพ เชนเซเชคเซเชจเซ เชชเซเชฐเซเชฃ เชเชฐเซ เชเซ - เชฎเซเชจเชฟเชเชฐ เชเชเชเชชเชฃ เชฌเชคเชพเชตเชคเชพ เชจเชฅเซ, เชญเชฒเซ เชนเซเช เชฌเชเชจเซ เชฆเชฌเชพเชตเซเช, เชฎเชพเชเชธ เชเชธเซเชกเซเช, เชตเชเซเชฐเซ.
เชฏเซเชชเซเชกเซ:
ะกะฟะฐัะธะฑะพ
$ xrandr --output CRT1 --brightness 0
เชเชจเชชเซเช เชเชพเชชเซ เชฐเชนเซเชฏเชพ เชเซเช
เชเชจเชชเซเชเชจเซ เช เชเซเชทเชฎ เชเชฐเชตเชพ เชฎเชพเชเซ เชฎเซเช xinput เชจเซ เชเชชเชฏเซเช เชเชฐเซเชฏเซ. เชเซเชฏเชพเชฐเซ เชชเชฐเชฟเชฎเชพเชฃเซ เชตเชฟเชจเชพ เชฒเซเชจเซเช เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ, เชคเซเชฏเชพเชฐเซ เชคเซ เชเชชเชเชฐเชฃเซเชจเซ เชธเซเชเชฟ เชฆเชฐเซเชถเชพเชตเซ เชเซ:
$ xinput
โก Virtual core pointer id=2 [master pointer (3)]
โ โณ Virtual core XTEST pointer id=4 [slave pointer (2)]
โ โณ Logitech USB Laser Mouse id=9 [slave pointer (2)]
โฃ Virtual core keyboard id=3 [master keyboard (2)]
โณ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
โณ Power Button id=6 [slave keyboard (3)]
โณ Power Button id=7 [slave keyboard (3)]
โณ Sleep Button id=8 [slave keyboard (3)]
โณ USB 2.0 Camera: HD 720P Webcam id=10 [slave keyboard (3)]
โณ HID 041e:30d3 id=11 [slave keyboard (3)]
โณ AT Translated Set 2 keyboard id=12 [slave keyboard (3)]
เชเชชเชเชฐเชฃเซ เชตเชฐเซเชเซเชฏเซเช เชฒ เชเซเชฐ... เชคเชฎเซ เชคเซเชจเซ เช เชเซเชทเชฎ เชเชฐเซ เชถเชเชคเชพ เชจเชฅเซ - เชเช เชญเซเชฒ เชชเซเชฐเชฆเชฐเซเชถเชฟเชค เชฅเชพเชฏ เชเซ, เชชเชฐเชเชคเซ เชฌเชพเชเซเชจเชพเชจเซ เชเชพเชฒเซ เช เชจเซ เชฌเชเชง เชเชฐเซ เชถเชเชพเชฏ เชเซ, เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ, เช เชฐเซเชคเซ เชคเชฎเซ เชเช เชฎเชฟเชจเชฟเช เชฎเชพเชเซ เชฎเชพเชเชธ เชตเชฟเชจเชพ เชเซเชกเซ เชถเชเซ เชเซ:
xinput disable 9; sleep 60; xinput enable 9
เชเชฐเซเชจเชเซ เชธเซเชฒเซเชฏเซเชถเชจ
เชฎเชพเชฐเชพ เชเซเชธ เชฎเชพเชเซ, เชฎเซเช เชเช เชธเซเชเซเชฐเชฟเชชเซเช เชฌเชจเชพเชตเซ เชเซ เชเซ เชนเซเช ssh เชธเชคเซเชฐเชฎเชพเช เชเชฒเชพเชตเซเช เชเซเช. เชคเซ เชธเซเชฅเชพเชจเชฟเช เชเชจเชชเซเชเชจเซ เชฆเชฌเชพเชตเซ เชฆเซ เชเซ เช เชจเซ x11vnc เชธเชฐเซเชตเชฐเชจเซ เชตเชงเชพเชฐเซ เชเซ, เช เชจเซ เชธเซเชเซเชฐเชฟเชชเซเช เชชเซเชฐเซเชฃ เชฅเชฏเชพ เชชเชเซ เชฌเชงเซเช เชเซเชตเซเช เชนเชคเซเช เชคเซเชตเซเช เชชเชพเชเซเช เชเชตเซ เชเซ. เชชเชฐเชฟเชฃเชพเชฎเซ, เช เชฎเชจเซ เชคเซเชฐเชฃ เชธเซเชเซเชฐเชฟเชชเซเชเซ เชฎเชณเซ, เชคเซ เช เชนเซเช เชเซ (เช เชชเชกเซเช เชเชฐเซเชฒเซ).
switch_local_console:
#!/bin/sh
case $1 in
1|on)
desired=1
;;
0|off)
desired=0
;;
*)
echo "USAGE: $0 0|1|on|off"
exit 1
;;
esac
keyboards=`xinput | grep -v "XTEST" | grep "slave keyboard" | sed -re 's/^.*sid=([0-9]+)s.*$/1/'`
mouses=`xinput | grep -v "XTEST" | grep "slave pointer" | sed -re 's/^.*sid=([0-9]+)s.*$/1/'`
monitors=`xrandr | grep " connected" | sed -re 's/^(.+) connected.*$/1/'`
for device in $mouses
do
xinput --set-prop $device "Device Enabled" $desired
done
for device in $keyboards
do
xinput --set-prop $device "Device Enabled" $desired
done
for device in $monitors
do
xrandr --output $device --brightness $desired
done
เช เชเซเชทเชฎ_เชธเซเชฅเชพเชจเชฟเช_เชเชจเซเชธเซเชฒ:
#!/bin/sh
trap "switch_local_console 1" EXIT
while :
do
switch_local_console 0
sleep 1
done
เชเชฐเซเชเชฐ, เชฎเซเชเซเชฏ เชธเซเชเซเชฐเชฟเชชเซเช (เชฎเชพเชฐเซ เชชเชพเชธเซ เชฌเซ เชฎเซเชจเชฟเชเชฐ เชเซ, เชฎเซเช เชฆเชฐเซเช เชฎเซเชจเชฟเชเชฐ เชฎเชพเชเซ เชเช เชธเชพเชฎเชพเชจเซเชฏ เชธเชฐเซเชตเชฐ เช เชจเซ เชเช เชธเซเชเช เชช เชเชฐเซเชฏเซเช เชเซ).
vnc_server:
#!/bin/bash
[[ ":0" == "$DISPLAY" ]] && echo "Should be run under ssh session" && exit 1
export DISPLAY=:0
killall x11vnc
rm -r /tmp/x11vnc
mkdir -p /tmp/x11vnc/{5900,5901,5902}
params="-fixscreen V=5 -forever -usepw -noxkb -noxdamage -repeat -nevershared"
echo "Starting VNC servers"
x11vnc -rfbport 5900 $params 2>&1 | tinylog -k 2 -r /tmp/x11vnc/5900 &
x11vnc -rfbport 5901 $params -clip 1920x1080+0+0 2>&1 | tinylog -k 2 -r /tmp/x11vnc/5901 &
x11vnc -rfbport 5902 $params -clip 1920x1080+1920+0 2>&1 | tinylog -k 2 -r /tmp/x11vnc/5902 &
echo "Waiting VNC servers"
while [ `ps afx | grep -c "x11vnc -rfbport"` -ne "4" ]
do
sleep .5
done
echo "Disabling local console"
disable_local_console
echo "Killing VNC servers"
killall x11vnc
เชฌเชธ เชเชเชฒเซเช เช. ssh เชฆเซเชตเชพเชฐเชพ เชฒเซเชเชฟเชจ เชเชฐเซ เช เชจเซ เชฒเซเชจเซเช เชเชฐเซ vnc_server, เชเซเชฏเชพเชฐเซ เชคเซ เชเซเชตเชคเซ เชนเซเชฏ, เชคเซเชฏเชพเชฐเซ เช เชฎเชพเชฐเซ เชชเชพเชธเซ vnc เชฆเซเชตเชพเชฐเชพ เชเชเซเชธเซเชธ เชนเซเชฏ เชเซ เช เชจเซ เชธเซเชฅเชพเชจเชฟเช เชเชจเซเชธเซเชฒ เชฌเซเชเชพเช เชเชพเชฏ เชเซ.
เชคเชฎเชพเชฐเชพ เชงเซเชฏเชพเชจ เชฌเชฆเชฒ เชเชญเชพเชฐ, เชเชฎเซเชฐเชพเช เช
เชจเซ เชธเซเชงเชพเชฐเชพเช เชเชตเชเชพเชฐเซเชฏ เชเซ.
เชธเซเชฐเซเชธ: www.habr.com