как заставить ssh tunnel открыть RDP на другом конце через альтернативный IP


как заставить ssh tunnel открыть RDP на другом конце через альтернативный IP

Любой процесс в Unix имеет три открытых файла по умолчанию, (но он может их потом закрыть/переоткрыть, например перенаправляя вывод в log file):

  • 0 (stdin)

  • 1 (stdout)

  • 2 (stderr)

примечание: stderr, отличается от stdout тем, что он не использует буфер для вывода.

Процессы unix могут выполняться асинхронно, как параллельно, так и последовательно, например:

$ cmd1 & cmd2;(cmd3 && cmd4) & (cmd5 || cmd6)

Разберем приведенную вязь команд по косточкам:

cmd1 & cmd2; — вначале параллельно запустятся cmd1 и cmd2

(cmd3 && cmd4) & (cmd5 || cmd6) — после завершения cmd1,параллельно запустятся условные цепочки cmd3,cmd4 и cmd5,cmd6. При этом:

cmd4 запуститься если cmd3 завершиться успешно, то есть ее код возврата будет 0,

cmd6, только в том случае, если cmd5 вернёт ненулевой код возврата.

 

 

 

 

 

 

 

 

## пример пробрасывания канала с одного host на другой из разных сессий
## префикс приглашения показывает hostname сервера
## на котором запускается команда
host2$ nc -l -p 44665|tar xvf -
host1$ tar cvf - /home/mydata | nc host2 44665

Прокомментирую последний пример: Тут используется команда netcat (или nc), которая открывает сетевой канал для проброса канала tar/untar.

При копировании больших объёмов, это может дать в разы большую скорость, чем стандартное scp. Например, у меня при копировании 1500G backup database c одной VM на другую, скорость выросла в пять раз без сильной нагрузки на CPU.