Здесь вы пытаетесь достичь нескольких целей:
в 1:
Лучше всего сгенерировать пару ключей ssh с помощью ssh-keygen
и сохранить открытый ключ на вашем хост-компьютере. Сгенерируйте его без использования пароля, тогда ssh
не будет запрашивать пароль при подключении. Используйте
client$ ssh -i <keyfile>
для подключения к вашему хосту, используя сгенерированные вами ключи. См. Также ssh (1) и sshd (8) в разделе AUTHORIZED_KEYS ФОРМАТ ФАЙЛА о том, как добавить свой открытый ключ на хост для распознавания, что в основном:
host$ cat <keyfile>.pub >> ~/.ssh/authorized_keys
(Это должно быть сделано на хосте!)
Примечание: закрытый ключ эквивалентен паролю! Убедитесь, что вы храните его в безопасности, чтобы его могло использовать только задание cron.Посмотрите на sshd (8) раздел AUTHORIZED_KEYS FILE FORMAT, поскольку он показывает вам, как вы можете ограничить использование вашей сгенерированной пары ключей, чтобы она могла запускать только ваш скрипт!
Кому 2:
Вы можете запустить ssh
с командой оболочки в качестве аргумента, включая перенаправление ввода-вывода. Просто запустите, например, /home/target/Script.sh 2> & 1
и сохраните вывод. Полная команда выглядит так:
client$ ssh -i <keyfile> user@host '/home/target/Script.sh 2>&1' >>test.txt
test.txt
находится на вашем собственном компьютере, сценарий запускается на хосте.
Примечание: сценарий направляет свой вывод на стандартный вывод. Никакой специальной обработки на хосте не требуется (за исключением перенаправления '2> & 1', чтобы также записывать вывод в стандартную ошибку.)
См. /usr/include/X11/keysymdef.h
для доступных имен клавиш:
xmodmap -e 'keycode 112=Up'
xmodmap -e 'keycode 117=Down'
(префиксы нужно убрать ).