1 / 38

PowerShell dla każdego

PowerShell dla każdego. Paweł Zdziarski pzdziarski@cts.com.pl www.cts.com.pl. AGENDA. Wprowadzenie do PowerShell Podstawowe możliwości i sposoby rozwiazywania problemów PsProviders i PSDrives Przetwarzanie potokowe Filtrowanie Zdalny dostęp Skrypty i bezpieczeństwo

bailey
Download Presentation

PowerShell dla każdego

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. PowerShell dla każdego Paweł Zdziarski pzdziarski@cts.com.pl www.cts.com.pl

  2. AGENDA Wprowadzenie do PowerShell Podstawowe możliwości i sposoby rozwiazywania problemów PsProviders i PSDrives Przetwarzanie potokowe Filtrowanie Zdalny dostęp Skrypty i bezpieczeństwo Co nowego w PowerShell3.0?

  3. Wprowadzenie do PowerShell • Pierwsza wersja 2006 rok • Obecnie wersja 3.0 (dostępna od Visty w górę) • Dostęp przez konsolę • Komendy – Cmdlets • Główny sposób dostępu • Integrated Scripting Environement • Edytor skryptów • Coraz fajniejszy

  4. Jak zacząć zabawę z PowerShell • PowerShell szanuje przyzwyczajenia użytkowników (ale trzeba uważać) • Polecenie Get-Help (-ShowWindow, -Example, -Online) • Konwencja poleceń jest spójna, przewidywalna czasownik – rzeczownik Get-Process • Znajdowanie poleceń Get-Command, help about* • Interpretacja wyników polecenia Get-Help • Aktualizacja pomocy Update-Help Save-Help

  5. Uruchamia poleceń • Polecenia mają swoje skrócone nazwy, aliasy • Polecenia posiadają parametry • Polecenie Show-Command • Przełączniki –Confirm i –Whatif ratują życie • Zestawy poleceń są łączone w moduły • Moduły są dynamicznie ładowane (tylko w wersji 3.0) • Get-Module, Import-Module

  6. PSProviders i PSDrives • Mechanizmy pozwalające na spójny, przewidywalny dostęp do zasobów systemu i aplikacji • Dane składowane są na odpowiednio nazwanych dyskach (PSDrives) • Get-PSProviders • Get-PSDrive • New-PSDrive

  7. Polecenia do zarządzania zasobami

  8. Przetwarzanie potokowe (pipeline) • Przetwarzanie potokowe pozwala na przekazywanie wyników jednego polecenia jako parametrów do drugie polecenia • Get-service | out-file services.txt • Polecenia PowerShell generują obiekty • Obiekty mają właściwości, metody, i zdarzenia • Polecenie Get-Member i już jestem specjalistą od PowerShella

  9. Konwertowanie, Eksportowanie i Importowanie obiektów • Konwertowanie do formatów CSV, HTML, XML (ConvertTo, Export) • Importowanie danych (Import-CSV, Import-CliXML) – próba rekonstrukcji obiektów • Polecenie Get-Content tylko czyta zawartość bez rekonstrukcji obiektów • ConvertFrom stara się zrekonstruować obiekty

  10. Filtrowanie obiektów • Polecenie Where-Object • Get-Service | Where-Object Status –eq Running – proste filtrownie • Get-SMBShare | Where Name –like '*$*' • Get-PhysicalDisk | Where-Object –FilterScript { $PSItem.HealthStatus –eq 'Healthy' } • Get-Volume | Where { $PSItem.DriveType –eq 'Fixed' –and $PSItem.FileSystem –eq 'NTFS' } • Pamiętajmy o wydajności – filtrujmy jak najwcześniej

  11. Formatowanie wyników • Format-List, Format-Table, Format-Wide • Domyślne zasady formatowania • Grupowanie wynikow –GroupBy • Przekierowanie wyników Out-Host (ekran), Out-File (plik tekstowy), Out-Printer (drukarka) • Polecenie Out-GridView ułatwia filtrowanie i wysukiwanie

  12. Zmienne • Zmienne posiadają własny PSDrive VARIABLE: • Nazwa rozpoczyna się od symbolu $ • $serv = get-services, $liczba = 5, $nazwa = „jakiś tekst” • Zmienne mają swoje zakresy

  13. Zdalny dostęp • Protokół WS-MAN, domyślnie HTTP (może być HTTPS) • Zarządzany przez usługę WinRM • Domyślnie włączony w Windows Server 2012 • Dostępny na dowolnym systemie z PowerShell 2.0 lub 3.0 • Musi być włączony na każdym komputerze którym chcemy zarządzać zdalnie

  14. Włączenie zdalnego dostępu • Ręcznie: polecenie Enable-PSRemoting z uprawnieniami administrator • Centralnie: za pomocą Group Policy • Problem z komputerami mającymi ustawiony profil „public” na interfejsie sieciowym • Windows 2012 domyślnie włączony

  15. Dostęp zdalny: Jeden do jednego • Rozpoczęcie Enable-PSSession –computername • Praca w zdalnej sesji • Wyjście z sesji Exit-PSSession

  16. Zdalny dostęp: Jeden do wielu • Polecenie Invoke-Command wysyła polecenie, skrypt do wielu systemów • Rezultat zawiera właściwość PSComputerName

  17. Tworzenie stałych sesji • PSSession – nawiązanie stałej sesji • W sesji można wykonywać polecenia, skrypty, można się od niej odłączyć, podłączyć, zamknąć • Tworzenie sesji New-PSSesion (można utworzyć zmienną) • Wejście do sesji Enter-PSSession • Uruchomienie polecenia w sesji przełącznik –Session w poleceniu Invoke-Command • Disconnect-PSSession (odłączenie), Get-PSSession (wyświetlenie sesji) Connect-PSSesion (ponowne podłączenie się do sesji)

  18. Skrypty i bezpieczeństwo • Skrypt ma rozszerzenie .ps1 • Domyślnie nie można skryptu uruchomić • Skrypt może zrobić krzywdę • Poziomy polityk wykonywania skryptów m.in.: Restricted, AllSigned, RemoteSigned, Unrestricted • Polecenie Set-ExecutionPolicy • Paramentr do PowerShell.exe –executionPolicy • Można zarządzać przez GroupPolicy

  19. Profile • Profil to skrypt, który uruchamia się automatycznie przy otwarciu nowej konsoli PowerShell • Fajne, ale trzeba uważać bo może boleć • Zmienna $profile • Konsola i ISE oraz użytkownicy mogą mieć różne profile

  20. Zadania w tle • Uruchomienie poleceń w tle(konsola dostępna w tym czasie) • Lokalna zadania – Start-Job –ScriptBlock {Dir} • Zdalne zadania Invoke-Command – ScriptBlock {Get-Service} –ComputerName LON-DC1 –AsJob • Zadania WMI Get-WmiObject – Class Win32_BIOS –computername LON-DC1 –AsJob • Wyświetlanie zadań Get-Job • Stopowanie, usuwanie zawieszanie • Receive-Job wyciąganie wyników zadań

  21. Co nowego w PowerShell 3.0 Paweł Zdziarski pzdziarski@cts.com.pl

  22. Agenda Historia Zarządzanie Windows 2012 i Windows 8 Ułatwienia w pracy z poleceniami Sesje zdalne PowerShell Web Access Zaplanowane zadania w tle Nowości w Integrated Scripting Environment (ISE) Workflow Podsumowanie

  23. Historia Wersja 1.0 - 2006 rok Wersja 2.0 – 2009 rok wiele nowości (PowerShell Remoting, Background Jobs, Modules, Windows PowerShell Integrated Scripting Environment (ISE) Wersja 3.0 – 2012 rok

  24. Zarządzanie Windows 2012 i Windows 8 Ok 2 500 poleceń Nowe moduły Możliwość zarządzania rolami, cechami, ustawieniami (no prawie wszystkim )

  25. Ułatwienia w pracy z poleceniami Automatyczne ładowanie modułów Uproszczona składniav2.0 – get-service | where {$_.status -eq 'running'}v3.0 - get-service | where status -eq 'running’v2.0 - Get-Process Notepad |foreach {$_.Kill()} v3.0 - Get-process Notepad |foreach kill

  26. Ułatwienia w pracy z poleceniami Nowe parametry Get-ChildItem (Directory, File, Hidden, ReadOnly,System Polecenie Show-Command Możliwość aktualizacji Pomocy(Update-Help, Save-Help)

  27. Sesje zdalne Możliwość podłączenia się do wcześniej stworzonej sesji Zostają zachowane dane w sesji nawet jeśli mamy kłopoty z połączeniem sieciowym Możliwość połączenia się z innego komputera Disconnect-PSSession, Connect-PSSession, Receive-PSSession

  28. PowerShell Web Access Dostęp do konsoli PowerShell za pomocą przeglądarki (nie tylko IE, nie tylko Windows) Windows PowerShell Web Access Gateway – cecha Windows 2012 Dostęp do poprzez bramkę do innych systemów z Powershell i dostępem zdalnym

  29. PowerShell Web Access - wdrożenie Instalacja cechy PowerShell Web Access(GUI, PowerShell - Install-WindowsFeature –NameWindowsPowerShellWebAccess) Konfiguracja bramki (Install-PswaWebApplication) Konfiguracja reguł autoryzacyjnych (m.in. Add-PswaAuthorizationRule) Dostęp PowerShell Web Access (https://nazwahosta/pswa

  30. Zaplanowane zadania w tle Możliwość wywołania operacji w tle w danym czasie lub po danej akcji (New-JobTrigger) Rejestracja zaplanowanych zadań (Register-ScheduledJob) Wyświetlanie zaplanowanych zadań (Get-ScheduledJob)

  31. Nowości w Integrated Scripting Environment (ISE) InteliSense Snippets (wzorce poleceń, składni, możliwość tworzenia własnych – New-IseSnippet) Okno Show Command Możliwość pobrania i załadowania dodatków

  32. Workflow Pozwala na automatyzację skomplikowanych operacji wymagających czasu Pozwala zarządzać wieloma komputerami Zaplonowane, uruchamiane w określonym czasie, po danych operacjach np. logowanie

  33. Certyfikacja MTA - Microsoft Technology Associate

  34. Certyfikacja MTA - Microsoft Technology Associate

  35. Oferta dla uczestników • Promocja na szkolenie 10961 - Automating Administration with Windows PowerShell. • Termin 26 – 30 sierpnia 2013 • Miejsce CTS Warszawa Filipinki 20 • Cena z rabatem 1990 netto PLN

  36. Warsztaty online • Dostęp do na stronie http://cts.com.pl/Warsztaty.html – za darmo, wymagana tylko rejestracja. • Nowości i archiwum • Aktualne nowości

  37. Podsumowanie wpisz tekst (wstaw obrazek)

  38. Pytanie i odpowiedzi Pzdziarski@cts.com.pl

More Related