Powershell: Мониторинг принтеров (Часть 1). В первой части мы сохранили имена принтеров в файл. В 2-ой части попробуем данный контент отправить на линукс сервер. Итак, приступим.
Powershell: Мониторинг принтеров (Часть 2)
Создадим коннект к линукс-серверу, для этого будем использовать протокол SCP (Secure Copy Protocol). Открываем Powershell, вбиваем командлет: ‘Get-SCPFolder’, если модуль Posh-SSH установлен, то будет окно вида:
Если нет, то увидим предупреждение, что имя командлета не распознано:
Не расстраиваемся, вводим: ‘Install-Module -Name Posh-SSH’ (Предварительно открыв Powershell от имени админа). Модуль установится, и можно будет снова ввести команду, которая была выше указана. Если не установится в автоматическом режиме, то можно в ручном, всё описание тут. Дальше будет необходимо в переменную положить нашу учётную запись, при помощи которой мы и будем коннектиться к линукс-серверу, и передавать файлы. Я выбрал командлет: ‘Get-SCPFolder’, так как он более подошёл к моей задаче. Есть ещё командлет ‘Get-SCPFile’, он переносит только файл на сервер, а ‘Get-SCPFolder’ копирует всё содержимое папки, которую вы укажете.
Кладём переменную, введя $credential = Get-Credential, нажимаем ‘Enter’, и видим такое окно:
В данном запросе необходимо указать учётные данные. Синтаксис ‘Set-SCPFolder’, довольно простой, получить его можно введя команду: ‘Get-Help Set-SCPFolder’.
Итак, попробуем:
1 |
Set-SCPFolder -ComputerName '....' -Credential $credential -LocalFolder "D:\temp" -RemoteFolder "/home/local/mynewfolder/printercontent" |
В ‘ComputerName’ указываем куда хотим подключиться, например IP-адрес сервера, в переменной $credential уже лежит учётная запись, которую мы выше вводили.
‘LocalFolder’ — локальная директория, папка на нашем компьютере, откуда мы хотим перенести данные. ‘RemoteFolder’ — куда хотим перенести данные.
После выполнения данной команды, файлы, которые были в данной папке, в ‘LocalFolder’, были перенесены в ‘RemoteFolder’. Вы спросите, как проверить не выходя из консоли powershell? Отвечаем, вводим команду: ‘ssh наша_учётная_запись@IP-адрес сервера куда подключаемся’, после нажатия ‘Enter’ вводим пароль. Тут уже мы попали на линукс-сервер, и в зависимости от места расположения, выводим содержимое наших директории, кстати, у нас есть отличная статья по командам в линукс-среде. Я, например попал в свой репозиторий сразу же как подключился, и вижу свежие данные:
1 2 3 |
[aman@remote_test_server ~]$ ll printercontent/ total 24 -rw-r--r--. 1 aman domain_users 21906 Feb 7 16:12 printers_data |
Очень рад, что у нас это получилось, надеюсь вы разделяете со мной это чувство. Далее можно по разному оперировать этими данными. Был рад помочь вам.Не забывайте подписываться на нашу группу в ВК, канал на ютубе и залетайте в наш телеграм канал! Если у вас остались вопросы, пишите их в комментариях!