Форум программистов, компьютерный форум, киберфорум
PowerShell
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.68/22: Рейтинг темы: голосов - 22, средняя оценка - 4.68
0 / 0 / 0
Регистрация: 02.06.2014
Сообщений: 22
1

Копирование логов в сетевую шару

14.08.2014, 11:50. Показов 4507. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Столкнулся я с таким странным (для PowerShell) багом, или даже не знаю, баг или не баг.
Данный баг проявляется только при работе в сессии. Для начала покажу как выполняется команда локально.
Тест 1. Подключаемся к удаленной машине по RDP запускаем PowerShell и копируем файл в сетевую папку удаленной машины
Код
PS C:\> Copy-Item "c:\intel\2.txt" "\\e-milkov-sa\log"
PS C:\>
Файл копируется, НО мы это делаем не в сессии!

Тест 2. Открываем сессию, копируем текстовый файл из каталога c:\intel\2.txt в c:\wmpub\, кароче в пределах диска!
Код
PS C:\Windows\system32> $env:COMPUTERNAME, $env:USERNAME # Это я так показываю, где я нахожусь и под кем
E-MILKOV-SA
milkov-adm
PS C:\Windows\system32> Enter-PSSession milkov-adm-test # Открываем сессию
[milkov-adm-test]: PS C:\Documents and Settings\milkov-adm\Мои документы> $env:COMPUTERNAME, $env:USERNAME
MILKOV-ADM-TEST
milkov-adm
# Копируем файл в пределах диска на удаленной машине
[milkov-adm-test]: PS C:\Documents and Settings\milkov-adm\Мои документы> Copy-Item "c:\intel\2.txt" "c:\wmpub\"
[milkov-adm-test]: PS C:\Documents and Settings\milkov-adm\Мои документы>
В пределах диска В СЕССИИ все отлично копируется!

Тест 3. Открываем сессию, копируем текстовый файл из C:\intel\2.txt в сетевую шару \\e-milkov-sa\log
Код
PS C:\Windows\system32> $env:COMPUTERNAME, $env:USERNAME
E-MILKOV-SA
milkov-adm
PS C:\Windows\system32> Enter-PSSession milkov-adm-test
[milkov-adm-test]: PS C:\Documents and Settings\milkov-adm\Мои документы> cd c:\
[milkov-adm-test]: PS C:\> Copy-Item "c:\intel\2.txt" "\\e-milkov-sa\log"
Copy-Item : Access to the path '\\e-milkov-sa\log' is denied.
    + CategoryInfo          : PermissionDenied: (C:\intel\2.txt:FileInfo) [Copy-Item], UnauthorizedAccessException
    + FullyQualifiedErrorId : CopyFileInfoItemUnauthorizedAccessError,Microsoft.PowerShell.Commands.CopyItemCommand
[milkov-adm-test]: PS C:\>
НЕ КОПИРУЕТСЯ в сессии! Пишут что вроде как это баг, неужели разработчики его упустили, почему я в сессии не могу скопировать файл на удаленную шару? И дело тут не в правах, все права даны.

Более того, я сдуру хотел перехитрить PowerShell... скопировать файл в сессии запустив в PowerShell cmd.exe
Тест 4. Открыл сессию с удаленной машиной, и пытаюсь через cmd.exe скопировать файл в сетевую шару:
Код
[milkov-adm-test]: PS C:\> Start-Process cmd.exe "/c copy c:\intel\2.txt \\e-milkov-sa\log\"
[milkov-adm-test]: PS C:\>
Ошибок нет, файла в сессии В СЕТЕВУЮ ШАРУ не скопировался!

Тест 5. Открываю сессию с удаленной машиной, и пытаюсь через cmd.exe скопировать файл c:\intel\2.txt в c:\wmpub\ (в пределах диска удаленной машины:
Код
[milkov-adm-test]: PS C:\> Start-Process cmd.exe "/c copy c:\intel\2.txt c:\wmpub\"
[milkov-adm-test]: PS C:\>
Файл КОПИРУЕТСЯ.

Свой первый скрипт, который я пытаюсь написать, он ищет на удаленных машинах (500 машин) определенный файл, если файл существует то на удаленной машине выполняется комманда:
PowerShell
Invoke-Command -ComputerName $List -FilePath c:\log\script.ps1
script.ps1:
PowerShell
1
2
Start-Process "C:\Program Files (x86)\Kaspersky Lab\NetworkAgent\klnagchk.exe" -ArgumentList "-logfile $env:temp\$env:computername.log" -Wait
Copy-Item "$((ls env:\Temp).value)\$((ls env:\COMPUTERNAME).value).log" "\\e-milkov-sa\share$\error-log"
скрипт запускает его, и создается лог. Далее скрипт должен этот лог скопировать на сетевую шару, в итоге я получу 500 файликов (ну не 500 все зависит от наличия програмки).

Invoke-Command тоже запускает сессию, и запара в копировании из сессии...
Какие есть варианты?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.08.2014, 11:50
Ответы с готовыми решениями:

Не могу войти в сетевую шару
3 компа в локальной сети При попытке доступа со 2-го ПК (XP) к 1-му (Win7): ...

Копирование в сетевую папку
доброго дня! Подскажите, как дописать, чтобы он авторизовался при копирование на сетевую папку ?...

[Домен] Не заходит на сетевую шару
Имеется 2 леса aaa.com и bbb.com между ними доверительные отношения пользователь Вася из домена...

Настройка сканирования в сетевую шару FS-6525MFP
Всем доброго времени суток! Пытаюсь настроить сканирование в сетевую шару по указаниям в статье...

3
88 / 88 / 37
Регистрация: 28.11.2012
Сообщений: 309
14.08.2014, 12:40 2
Как вариант сменить логику: запускать на своей машине скрипт который выполняет на удаленных компах скрипт2, который формирует лог. Получаем кучу логов на удаленных компах. Далее с первой машины собирать эти логи самостоятельно. Что-то вроде
PowerShell
$List|%{copy-item "\\$_\C$\logs\log.log" 'c:\logs\'}
0
0 / 0 / 0
Регистрация: 02.06.2014
Сообщений: 22
14.08.2014, 12:51  [ТС] 3
Ааахаха капец, ща попробую, так то вариант...
0
0 / 0 / 0
Регистрация: 22.07.2015
Сообщений: 2
29.12.2015, 13:31 4
Кажись это не баг, а то, что гуглится по "winrm second hop".
Powershell работает через WinRM, а winrm по умолчанию не передает учётные данные для дальнейших сетевых аутентификаций. Можно настроить через ГПО, но нужно ли..
0
29.12.2015, 13:31
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.12.2015, 13:31
Помогаю со студенческими работами здесь

В сетевую шару не копируются файлы определенного типа (dll)
Здравствуйте. Windows server 2008 R2. Есть сетевая файловая шара. Доступ- всем на всё. При...

Копирование с FTP на шару
Приветствую! Необходимо написать батник. Суть такова, есть FTP сервер, на него ежедневно...

Копирование старых файлов на шару
Всем привет! Теоретически понимаю что задача простая, но я запнулся и не могу её никак решить. ...

Копирование с шары на другую шару и удаление старых копий
Доброго времени суток народ! Столкнулся с задачей такой @echo off robocopy "\\share1\backup"...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru