-- ustawienie bazy w tryb SINGLE_USER, wszystkie transakcje użytkowników zostaną wycofane a sesje zakończone ALTER DATABASE [AdventureWorks2014backup] SET SINGLE_USER WITH ROLLBACK IMMIDIATE DBCC CHECKDB ([AdventureWorks2014backup], REPAIR_ALLOW_DATA_LOSS) -- przywrócenie bazy w tryb MULTI_USER (UWAGA - należy zamknąć wszystkie uprzednio otwarte skrypty, okna, sesje itp.) ALTER DATABASE [AdventureWorks2014backup] SET MULTI_USER;
Category Archives: Microsoft
Powershell – Wyświetlenie plików oraz folderów których ścieżka dostępu przekracza x znaków
Get-ChildItem -path e:\ -Recurse -Force -ErrorAction SilentlyContinue | Where-Object {$_.FullName.Length -gt 250}
Wyświetlenie liczby plików / folderów których ścieżka dostępu przekracza 250 znaków:
write-host(Get-ChildItem -path e:\ -Recurse -Force -ErrorAction SilentlyContinue | Where-Object {$_.FullName.Length -gt 250}).count
Po przełączniku -Recourse można użyć przełącznika -File lub -Directory.
Powershell – monitorowanie temperatury CPU
function Get-Temperature { $t = Get-WmiObject MSAcpi_ThermalZoneTemperature -Namespace "root/wmi" $returntemp = @() foreach ($temp in $t.CurrentTemperature) { $currentTempCelsius = ($temp / 10) - 273.15 $returntemp += $currentTempCelsius.ToString() } return $returntemp } Get-Temperature
Active Directory – odblokowanie konta i reset hasła administratora domeny
Aby odblokować i zresetować hasło Administratora należy uruchomić serwer z płyty instalacyjnej Windows Serwer (testowane na 2022) a następnie wejść do linii komend i wykonać poniższe kroki:
1) narzędziem DiskPart należy nadać literę partycji systemowej;
diskpart select disk 0 list partition select partition 3 assign letter c
2) odpowiednio skonfigurować ponowne uruchomienie serwera oraz podmienić plik utilman.exe;
bcdedit /set {bootmgr} displaybootmenu yes bcdedit /set {bootmgr} timeout 15 c: cd windows/system32 ren utilman.exe utilman.123 copy cmd.exe utilman.exe
3) Restart serwera. Po restarcie naciśnięcie klawisza F8 i wybranie opcji „Disable Early Launch Anti-Malware Driver”, przy logowaniu należy kliknąć na ikonkę kółeczka znajdującą się w dolnym prawym rogu. Zamiast narzędzia utilman.exe otworzy się cmd.exe – linia komend.
4) W linii komend należy wydać polecenia odblokowujące i zmieniające hasło użytkownikowi Administrator (również administratorowi domenowemu):
net user administrator /active:yes net user administrator password net user administrator password /domain
Active Directory i PowerShell – operacje na grupach
Wyświetlenie obiektów należących do grupy o nazwie GroupName
Get-ADGroupMember GroupName | Format-Table name
Wyświetlenie wszystkich grup, do których należy użytkownik o nazwie UserName
Get-ADPrincipalGroupMembership UserName | Format-Table name
Wyświetlenie użytkowników należących do grupy zabezpieczeń o nazwie SecureGroup.
Get-ADUser -filter 'memberOf -recursivematch "CN=SecureGroup, OU=IT, DC=domena, DC=local"' | Format-Table name
Dodanie użytkowników OU do grupy zabezpieczeń.
Get-ADUser -SearchBase ‘OU=nazwaOU,DC=test,DC=local’ -Filter * | ForEach-Object {Add-ADGroupMember -Identity ‘NazwaGrupyZabezpieczen’ -Members $_ }
Windows – programy służące od wysycenia zasobów systemu
Świetne programy pozwalające na symulację pracy systemu Windows pod obciążeniem:
Testlimit – obciążenie pamięci RAM ( https://learn.microsoft.com/pl-pl/sysinternals/downloads/testlimit )
CPU Stres – obciążenie CPU ( https://learn.microsoft.com/en-us/sysinternals/downloads/cpustres )
Active Directory i PowerShell – zmiana domyślnych OU przy tworzeniu kont użytkowników i komputerów
Do zmiany domyślnego OU, w którym zakładane są nowe konta komputerów i użytkowników służy komenda PS rediusr:
redirusr "OU=NowyOU,DC=firma,DC=local" redircmp "OU=NowyOU,DC=firma,DC=local"
Active Directory i PowerShell – tworzenie kopii zapasowej
#zdefiniowanie źródła Get-WBVolume -AllVolumes $vol = Get-WBVolume -VolumePath c: #zdefiniowanie miejsca docelowego $networkBackupLocation = New-WBBackupTarget -NetworkPath \\DC2\backups #Włączenie polisy - ustawienie atrybutu SystemState na True Add-WBSystemState -Policy backupPolicy #zdefiniowanie i konfiguracja polisy $backupPolicy = New-WBPolicy Add-WBVolume -Policy -$backupPolicy -Volume $vol Add-WBBackupTarget -Policy $backupPolicy -Target $networkBackupLocation #uruchomienie polisy Start-WBBackup -Policy $backupPolicy
Automatyczny eksport zawartości płyty CD na serwer FTP
Skrypt tworzy obraz płyty CD/DVD włożonej do napędu, następnie kompresuje go z hasłem i wysyła na serwer FTP.
W tym konkretnym przypadku skrypt został przygotowany dla lekarza, który ma za zadanie włożyć płytę z badaniem pacjenta do napędu a następnie uruchomić skrypt, który następnie przed wysłaniem badania na serwer zapyta go o dane pacjenta i hasło do kompresji.
Poniżej instrukcja oraz sam skrypt:
1) Przekopiować pliki i foldery: winscp, oscdimg.exe, 7zip do katalogu c:\Windows\
2) Sprawdzić literę napędu CD/DVD, jeżeli inna niż „E” należy poprawić w skrypcie;
3) Badania będą zapisywane na pulpicie (%USERPROFILE%\desktop\badania).
Continue reading
Active Directory i Powershell – operacje na użytkownikach i komputerach
Artykuł w budowie.
Odblokowanie wszystkich zablokowanych kont:
Search-ADAccount -LockOut | Unlock-ADAccount
Znalezienie użytkownika:
Get-ADUser -Filter 'Name -like "*userName"'
Reset hasła użytkownikowi userName:
Set-ADAccountPassword userName -NewPassword (Read-Host - AsSecureString 'New Password') -Reset
Automatyczny reset hasła wielu użytkownikom:
Add-Type -AssemblyName 'System.Web' $userAccounts = 'user1', 'user2' foreach ($account in $userAccounts) { $plain_text_password = [System.Web.Security.Membership]::GeneratePassword(13, 3) Write-Host "Resetting $account password to $plain_text_password ..." Set-ADAccountPassword $account -NewPassword ($plain_text_password | convertto-securestring -asplaintext -force) }
Dodanie komputera do domeny
add-computer –domainname sieciunia.local -Credential sieciunia.local\administrator -restart –force
Wyświetlenie użytkowników nieaktualnych, którzy zmieniali hasło dalej niż 31 dni temu i wyłączenie / przeniesienie / usunięcie ich:
$password_Age = (Get-Date).adddays(-31) $users_with_old_password = Get-ADUser -Filter * -Properties PasswordLastSet | Where-Object { $_.PasswordLastSet -and $_.PasswordLastSet -lt $password_Age } $users_with_old_password #Wylaczenie kont w ktorych haslo nie bylo zmieniane $users_with_old_password | Set-ADUser -Enabled $false #Wlaczenie konta administratora jesli wczesniej zostalo omylkowo wylaczone $adminAccount = Get-ADUser -Filter * -Properties Name | ? { $_.Name -like 'admin*' } $adminAccount | Set-ADUser -Enabled $true #Znalezienie wszystkich wylaczonych kont $disabledUsersAccounts = Search-ADAccount -AccountDisabled -UsersOnly #przeniesienie uzytkownikow do nowego OU o nazwie zablokowani użytkonicy $disabledUsersAccounts | Move-ADObject -TargetPath "OU=Disabled Users,DC=sieciunia, DC=local" #usowanie kont za potwierdzeniem (nie mozna usowac kont wbudowanych) $disabledUsersAccounts | Remove-ADUser -Confirm:$false