Thursday, 29 October 2015

Protecting All OUs in the Domain from Accidental Deletion

You can issue this line of PoSh at a domain controller to prevent any accidental deletion of AD OUs

Get-ADOrganizationalUnit -Filter 'Name -like "*"' | Set-ADOrganizationalUnit -ProtectedFromAccidentalDeletion $true

Wednesday, 17 June 2015

Disable Windows firewall from PowerShell

Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled False
Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled True

Thursday, 11 June 2015

Fixing "Not Present" Network Adapters in Windows 2012 core mode

I had a situation with a customer who had 2x 10GbE NICs in a Dell PowerEdge R720 server. The Network Adapters as seen below show "Not Present" It didn't seem to matter if there was a cable present or not. 



We even tried disabling and re-enabling the adapter but this didn't help. A case was raised with Dell SST, first the NIC and the raiser was replaced. This did not fix it. We tried moving the Adpater to another slot and it worked, but to keep symmetry the customer wanted the adapter in this specific slot. Next Dell replaced the mainboard and CPU, this also did not fix the problem. We booted into a Linux liveCD and we could see that the NIC was functioning so this pointed to Windows.


The Deployment was using Windows 2012 R2 core mode so we could not use Windows Device Manager to see what was happening. I never seem to be able to get Device Manager working remotely. So I turned to DevManView which if free from NirSoft. What we noticed was that the card was listed twice. we tried disabling re-enabling the card but this didn't help. Fortunatly we can use DevManView to open the related Registry key. Because the nornal Administrator account doesn't have permission to remove device based reg keys, you can run RegEdit as the system account but using PsExec from Microsoft. We used DevManView to open the keys and delete them! Excercise caution here, know what you are doing with the registry and have backups, you have been warned!



The server was rebooted and the devices were re-detected and this corrected the problem!

www.nirsoft.net/utils/device_manager_view.html

psexec -i -d -s c:\windows\regedit.exe

Tuesday, 28 April 2015

How to list installed application in Windows 2012 core mode

You can use PowerShell to list all the installed applications on Windows 2012 core mode.

Get-WmiObject Win32_Product | ft -Auto

Monday, 27 April 2015

VSS fixup script

If Windows backup is failing due to VSS issues, you can try this script to re-register all the VSS DLLs. This should be a last resort after all other avenues have been investigated.

net stop "File Replication Service"
net stop "DHCP Server"
net stop "DFS Replication"
net stop "Background Intelligent Transfer Service"
net stop "System Event Notification Service"
net stop "Background Intelligent Transfer Service"
net stop "COM+ Event System"
net stop "Microsoft Software Shadow Copy Provider"
net stop "Volume Shadow Copy"

cd /d %windir%\system32

net stop vss
net stop swprv
regsvr32 /s ole32.dll
regsvr32 /s oleaut32.dll
regsvr32 /s vss_ps.dll
vssvc /register
regsvr32 /s /i swprv.dll
regsvr32 /s /i eventcls.dll
regsvr32 /s es.dll
regsvr32 /s stdprov.dll
regsvr32 /s vssui.dll
regsvr32 /s msxml.dll
regsvr32 /s msxml4.dll
regsvr32 /s msxml3.dll

net start "COM+ Event System"
net start "System Event Notification Service"
net start "Microsoft Software Shadow Copy Provider"
net start "Volume Shadow Copy"
net start "File Replication Service"
net start "DHCP Server"
net start "DFS Replication"
net start "Background Intelligent Transfer Service"

Friday, 24 April 2015

Finding volume GUIDs from powershell

This peice of PowerShell will find all the volume GUIDs, their name and free space.

Get-WmiObject -class Win32_Volume -computername localhost | where-object {$_.name -like "\\?\*"} | select-object label, name, @{ Label = "Capacity(GB)" ; Expression = { "{0:N2}" -f ($_.capacity/1024/1024/1024) } },@{ Label = "Freespace(GB)" ; Expression = { "{0:N2}" -f ($_.freespace/1024/1024/1024) } } | ft -auto