Pokazywanie postów oznaczonych etykietą admin. Pokaż wszystkie posty
Pokazywanie postów oznaczonych etykietą admin. Pokaż wszystkie posty

piątek, 31 lipca 2015

Sposób na przeglądanie folderów w powolnej sieci

Jeżeli zdarzyło Ci się, że musiałeś poznać strukturę folderów w sieci, a połączenie było super wolne to, to rozwiązanie spodoba Ci się.
Wpadłem na nie dopiero pod koniec mojego poprzedniego projektu. Potrzebowałem informacji jak wygląda struktura folderów, nie potrzebowałem informacji o plikach, a połączenie było tak powolne, że krew mnie zalewała :)

Z pomocą przyszło do mnie polecenie xcopy:

xcopy /t /e  \\Shared\ c:\toCheck\

To polecenie kopiuje foldery z \\Shared\ do c:\toCheck\.
Działa bardzo szybko bo nie musi przetwarzać plików, a tylko info. o strukturze folderów.

środa, 22 lipca 2015

Zmapowane dyski sieciowe

Na komputerach zdalnych mam zmapowane dyski sieciowy i czasami muszę przesłać ścieżkę.
Poniższa funkcja w PS zwróci Ci wszystkie zmapowane dyski:

function Get-NetworkDrive([string]$ln = "Z", [switch]$all, [string[]]$computername='.') {
if($all) {
    gwmi  -Class Win32_NetworkConnection  -computername  $computername 
    }
else {
    gwmi  -Class Win32_NetworkConnection  -Filter "LocalName like `'$ln%`'"  -computername $computername 
    }
}

Przykład działania funkcji na komputerze lokalnym wygląda tak:
Get-NetworkDrive P

wtorek, 14 lipca 2015

Zabijanie zawieszonego serwisu

Zawieszony serwis to zły serwis. Nie można go stopować ani zrestartować.
Jedyne co nam pozostało to ubicie serwisu.

To rozwiązanie znalazłem z tej strony
Właśnie takiego prostego rozwiązania szukałem.

Najpierw wyświetlasz informację o serwisie, który zawiesił się:
sc queryex $service_name$
Zapisujesz identyfikator procesu (PID)

A później wywołujesz komendę do ubijania procesu:
taskkill /f /pid $pid$

niedziela, 4 maja 2014

Pobranie ról użytkownika w PS

Kiedy pracujesz zdalnie przez konsole PS i nie możesz uruchomić polecenia PS to być może nie masz uprawnień. Aby sprawdzić z jakimi uprawnieniami pracujesz na konsoli wystarczy uruchomić poleceni Get-Role. Implementacja tej funkcji jest poniżej:
function Get-Role
{
param(
$user =  
$([Security.Principal.WindowsIdentity]::GetCurrent()),

[Security.Principal.WindowsBuiltinRole[]]$role= 
$([Security.Principal.WindowsBuiltinRole].GetEnumValues())
)
 $userPrincipal = New-Object Security.Principal.WindowsPrincipal $user
 $role | %{
    return New-Object PSOBJECT  | 
Add-Member -MemberType NoteProperty 
-Name "Role" -Value $_  
-PassThru |
               
Add-Member -MemberType NoteProperty 
-Name "IsIn" -Value ($userPrincipal.IsInRole($_)) 
-PassThru
 }
}

Jak widać użytkownik nie ma praw administratora.
Gdy tą samą funkcję uruchomisz na konsoli z prawami admina to twój użytkownik też jest w roli administratora.