1

у нас есть много компьютеров с Ubuntu в нашей локальной сети, я создал скрипт для его удаленного запуска с моего компьютера с Windows на список компьютеров Linux с использованием putty и параметра m

проблема в том, что в конце сценария происходит перезагрузка, поэтому окна сеанса замазки не исчезают, потому что компьютер linux перезагружается до того, как сценарий будет завершен, при запуске моего сценария windows на более чем 100 компьютерах linux получится 100 открытых окон замазки!

я попытался "shutdown -r +1" вместо "перезагрузки", но результат тот же

я ищу способ перезагрузить компьютер linux, но эта команда должна быть выполнена и прервана без ожидания обратного отсчета, команда выключения сохраняется после его выполнения, поэтому сценарий не будет завершен!

Спасибо

3 ответа3

0

Быстро и грязно: разветвите команду выключения, добавив амперсанд & после команды, затем выйдите из сеанса терминала в сценарии. Смотрите, например, 1, 2 или любой учебник по синтаксису сценария оболочки.

Менее хакерские: ищите решения, которые позволяют вам администрировать несколько хостов одновременно, кроме запуска одного процесса PuTTY для подключения к каждому из них. Смотрите, например, Linux - Запуск одной и той же команды на нескольких машинах одновременно.

0

ansible - это еще один способ сделать это и многое другое.

https://support.ansible.com/hc/en-us/articles/201958037-Reboot-a-server-and-wait-for-it-to-come-back

0

Вы пробовали использовать plink и pscp вместо PuTTy? Вот более старый поток StackOverflow, который предлагает использовать их для удаленного выполнения команд:

https://stackoverflow.com/questions/11001508/to-run-shell-script-with-parameters-on-windows-command-line-via-putty-exe

Вы знакомы с Cygwin? Он предоставляет вам разумную эмуляцию настоящей среды Linux с большинством стандартных инструментов Linux. Домашняя страница: https://www.cygwin.com/.

Может быть, вы могли бы запустить дистрибутив Linux на виртуальной машине на вашем ПК? Таким образом, у вас будет доступ ко всем инструментам, упомянутым в теме, связанной Даниэлем И так как это похоже на CLI, вам не нужно резервировать для него огромное количество оперативной памяти или места на жестком диске.

РЕДАКТИРОВАТЬ:

Еще одно возможное решение - иметь полный арсенал Linux: получить RasPi. После того, как он установлен, вы можете просто оставить его запущенным где-нибудь в сети и использовать ssh для выполнения подобных административных задач. Домашняя страница: http://www.raspberrypi.org/

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .