Основываясь на инструкциях meuh, вот как была сделана эта "экранная заставка":
#!/bin/bash
evemu-record /dev/input/event2 |
stdbuf -oL egrep 'EV_KEY|REL_WHEEL' |
(
./network_saver.sh
)
Где сеть _saver.sh это:
#!/bin/bash
WAIT=5
while [ 1 ]
do
echo Waiting for $WAIT seconds of mouse button inactivity
while read -t $WAIT line
do
echo -n.
done
echo; echo Disabling networking
nmcli n off
echo Waiting for a mouse button press
while read line
do
echo -n.
break;
done
echo; echo Enabling networking
nmcli n on
# Connect the main nic as soon as possible
nmcli conn up "Ethernet connection 1" >/dev/null
done
Если на удаленной машине есть прокси-сервер HTTP (, такой как squid
, или определенные конфигурации httpd apache ), вы можете отправить запрос через него.env http_proxy=http://server:3128/ wget http://xxxxx/file.zip
Если на удаленной машине есть прокси-сервер SOCKS или SOCKS5, вы можете отправить запрос через него, но может потребоваться что-то другое, кроме wget
.
Если ваш логин SSH чист, вы можете сделать что-то вроде:
ssh -n user@server wget -O- http://xxxxx/file.zip >~/Desktop/file.zip
Лично я обычно делал удаленный wget
, а затем передавал файл с помощью rsync
.
ssh обеспечивает удобный режим прокси-сервера TCP SOCKS5 с опцией-D / DynamicForward (давайте использовать порт SOCKS по умолчанию :1080, вы можете использовать любой порт, если на него есть ссылка в более поздних настройках):
ssh -D 1080 someuser@server
Вместо этого вы можете запустить команду ssh в фоновом режиме, чтобы она оставалась доступной без необходимости оставлять ее в терминале на потом:
ssh -f -o ExitOnForwardFailure=yes -D 1080 someuser@server
К сожалению, сам wget
не поддерживает протокол SOCKS. curl
подходит либо с:
export http_proxy=socks5h://localhost:1080/ https_proxy=socks5h://localhost:1080/
curl -o ~/Desktop/file.zip http://xxxxx/file.zip
или просто:
curl --socks5-hostname localhost:1080 -o ~/Desktop/file.zip http://xxxxx/file.zip
Если вам действительно нужно wget
, вы должны использовать оболочку. Например, есть proxychains
, который опирается наLD_PRELOAD
перехват (, есть и другие, такие как dante клиентская оболочка socksify
, работающая аналогичным образом, или redsocks
, которая сама полагается на специальный настройка брандмауэра для перехвата ).
mkdir ~/.proxychains
(echo strict_chain; echo proxy_dns; echo '[ProxyList]'; echo socks5 127.0.0.1 1080) > ~/.proxychains/proxychains.conf
proxychains wget http://xxxxx/file.zip ~/Desktop/