Microsoft MVA - What's New in PowerShell v5

Would you like to learn about the latest and greatest features that Microsoft has built into PowerShell Version 5? Be sure to check out this course, and get the details that can enable you to begin using these features immediately.

Explore the new features in PowerShell, including changes in security, scripting, debugging, and administration role management, along with the PowerShell Gallery, ScriptAnalyzer, and DSC. Plus, learn to install modules, implement the Wait Debugger, look at Just Enough Administration, and much more.

1 | Introduction to PowerShell v5
Get an overview of the new features in PowerShell v5.
2 | Package Management
Learn what's new with package management in PowerShell v5
3 | PowerShell v5 Security
Get the details on what's new with security in PowerShell v5.

Tips - Msdt command to invoke a troubleshooting pack at the command line

Here is an interesting Microsoft article that indicvate msdt command to invoke a troubleshooting pack at the command line or as part of an automated script, and enables additional options without user input.

It can be useful to create a desktop script to be launched from end user withouth follow several click/windows before try to solve (about lan and wifi for example)

Here they are some articles:


Troubleshooting Windows (and Dimming Your Display, too)

Powershell - Script to identify Exchange Rollup installed

Here is a script that is useful to find, in your environment Exchange server version and rollup installed to csv.

Check Exchange 2010 Rollup Version

Scripting - Monitor disk space, cpu load, memory and send html report through email

Here they are some scripts that monitor CPU, Disk Drives space and others:

1.) Powershell Script to Get CPU,Memory and C Drive utilization(Server Health Check)

a simple powershell script to get CPU Load, Memory utilization and C drive Utilization for a list of servers from a text file. So, this script takes servers from a text file and the result will be displayed in a HTML file and Sends email.

2.) Disk Space monitoring

a simple powershell script to get CPU. Memory utilization and C drive Utilization for a list of servers from a text file and the result will be displayed in a HTML file and sends email to your mailbox. I Feel It will be useful if you add this as a schedule task and run peridoically, it just reports you with the status to your email.

3.) PowerShell script to report free disk space on servers

script calculates free disk spaces in multiple servers (from a text file) and emails copy of csv report. The script is designed to report only servers with less than 10% free space. Customization info provided. Please rate, leave comments and ask questions.

This PowerShell script calculates free disk spaces in multiple servers and emails copy of  csv report. The script is designed to report only servers with 10% or less free space. If you wish to report all free disk spaces, please comment out the following lines in the swcript: #Where-Object {   ($_.freespace/$_.size) -le '0.1'} - This is found directly beneath the Get-WmiObject win32_logicaldisk command (Around line 50).

4.) Monitoring and reporting free disk space and the critical services

This script is designated to collect free disk space on your logical drives and state of some Windows services using PowerShell cmdlets.Also, this script will use local or remote SMTP Server to send the report via e-mail.You can modify srvArray variable to monitor more services.

5.) DiskSpace Monitoring

It's an improvement from the original Nag Pal's script

It will retrieve the letter, size, free space (GB), free space (%) from every volume on each server on the server list, and will mark in yellow if the free space is under 20% and in red if it under 10%.

The result file includes the date and also the heeder inside the file.

The improvements were made to include the date and to avoid errors where a server can’t be reached.

6.) CPU utilization and notify on a threshold breach

Here is a simple powershell script which will take a list of servers as input, monitors CPU load and sends email notifications incase of threshold breach(which is set in script). You may need to configure this script in scheduled task for continuous monitoring.


Otherwise if you review this old post:

There should be available these netwrix tools:


Netwrix Disk Space Monitor: Be alerted in real-time via email when disk space falls below certain thresholds on one or more of your servers.
Netwrix Event Log Manager: Collect, alert and report on events from the Windows servers across your network.
Netwrix Service Monitor: Monitor services on multiple servers simultaneously and be alerted via email when one or more services stop unexpectedly. Optionally, automatically restart monitored services ensuring maximum uptime.

Windows 10 - Ms released tool that install a W10 clean copy and removes apps preinstalled (it works only with insider build 14342 orhigher)

Microsoft released Refresh Windows Tool few days ago that makes clean installation easier. 

This tool installs a clean copy of the most recent version of Windows 10, and removes apps (both pre-installed and the ones installed by user) on the PC. 

Consider that this tool works only in insider build 14342 and higher.

More informations:


Monitoring - AD health check with Powershell

There is an interesting powershell script, on microsoft website, that can be easily scheduled.

It run various AD checks and finally it send an email in html format (and so easily viewable)

It can be schedulet everty tot minutes about iteratively infrastructure check:

AD - Daily Health Check Automation

Here is an alternative script:

Exchange 2010 - How to create report about biggest mailboxes exportied to .csv

If you need to identify users that have bigger mailboxes size you can use these scripts on your exchange server:

First 100 mailboxes

Get-Mailbox -ResultSize Unlimited | Get-MailboxStatistics | Sort-Object TotalItemSize -Descending | Select-Object DisplayName,TotalItemSize -First 100  | Export-Csv -Path "c:\Top100mailboxusersSize_1_00.csv" -Delimiter ";"

All mailboxes

Get-Mailbox -ResultSize Unlimited | Get-MailboxStatistics | Sort-Object TotalItemSize -Descending | Select-Object DisplayName,TotalItemSize  | Export-Csv -Path "c:\AllmailboxusersSize_1_00.csv" -Delimiter ";"

Meanwhile you could be interested to get, for each mailboxes, relatives limits that was setting up on Exchange server

Get-Mailbox -ResultSize Unlimited | Select-Object DisplayName,Database,IssueWarningQuota,ProhibitSendQuota,ProhibitSendReceiveQuota |  Export-Csv -Path "c:\AllmailboxusersIssueWarning_1_00.csv" -Delimiter ";"

So in this specific case you will get two .csv reports.


You can merge these files importing these .csv files in a single excel file and and use this Excel File function:


In english function name should be find.vert

Where A13 is our Mailboxes user name and first column (AllmailboxusersSize_1_00.csv) 

Where AllMailboxexLimits!1:1048576 is second Excel tab imported (AllmailboxusersIssueWarning_1_00.csv)

Where 3  is the relavive IssueWarningQuota found in second Excel tab imported (AllmailboxusersIssueWarning_1_00.csv)

You can repeat this task for other values:


<-----------other -------="" articles="" blog="" related="">


You could be interested to these similar article too:

Exchange 201X- How get all users who have a forwarding email, redirect rule and delegate permission on them mailboxes or Outlook folders

Exchange 2013 - How to monitor it with powershell command

Exchange - Microsoft Exchange Server User Monitor

Exchange 2010 - Poster dell'architettura

Exchange 2010 - How to monitor Exchange Health

Exchange 2010 - How export to pst single mailbox or all mailboxes with single command or powershell command

Exchange 2013 - How to monitor it with powershell command

Exchange 2010 - How to get info on Mobile devices connected via ActiveSync, quarantine any new device and remote Wipe them.

Exchange 2003/2010 - Add a photo to user contact

Manual - Free ebook: Windows 10 IT Pro Essentials: Top 10 Tools

We’re pleased to announce the release of our newest free ebook, Windows 10 IT Pro Essentials: Top 10 Tools (ISBN 9781509302789), by Ed Bott.
Download standard PDF - 9.6 MB
Download mobile PDF - 8.7 MB
Download ePub - 23 MB
Download Mobi - 55.3 MB
This ebook is also available for download at the Microsoft Virtual Academy (MVA).
[original article]

Windows 2016 - MVA what's new

1 | Instructor Introductions and Prep
Meet your instructors, and learn what you should know as you come to this course.

2 | Introduction to Windows Server 2016
Get a high-level overview of what's new in Windows Server 2016, from a conceptual standpoint.

3 | The Software-Defined Datacenter – Part 1
Take a look at what's new in Windows Server 2016 Hyper-V and software-defined networking.

4 | The Software-Defined Datacenter – Part 2
Get a high-level overview of what's new in Windows Server 2016 storage, including software-defined storage.

5 | Security and Authentication
Look at the newest features in Windows Server 2016 security and Remote Desktop Services (RDS), including Credential Guard and RDS Scaling.

6 | Application Platform
Take a look at containers and Nano Server, along with implementation and management.
Post-Event Survey
Please take this survey after you have completed this course.

Software - Fix problems that programs cannot be installed or uninstalled

Automatically repair issues that block program installation or removal because of corrupted registry keys.

Here is interesting Program that fix generically program uninstallation (in my last usage we had problem to uninstall Sophos 10.0 due to fact that sophos. 10.6 installation stopped suddenly)

Fix problems that programs cannot be installed or uninstalled:

What it fixes

  • Corrupted registry keys on 64-bit operating systems
  • Corrupted registry keys that control the update data
  • Problems that prevent new programs from being installed
  • Problems that prevent existing programs from being completely uninstalled or updated
  • Problems that block you from uninstalling a program through the Add or Remove Programs (or Programs and Features) item in Control Panel

Runs on

  • Microsoft Windows Server 2003
  • Microsoft Windows Server 2003 R2
  • Microsoft Windows XP
  • Windows 7
  • Windows Server 2008
  • Windows Server 2008 R2
  • Windows Vista
  • Windows 8
  • Windows 8.1
  • Windows Server 2012 editions
  • Windows Server 2012 R2
About sophos, after uninstallation and reboot I deleted any Sophos folder inside:

C:\programmi (x86)\

2012 R2 - How to create VM template using Sysprep new switches

If you create a standard VM images in your hypervisor (HyperV 2012, Vmware...) that VM can be used as a template for any other VM creation using this switch and causes Sysprep to skip the physical device recognition phase:



sysprep.exe /oobe /generalize /shutdown /mode:vm

The only additional options that apply to VM mode are /reboot, /shutdown, and /quit.

Here is relative Technet article:

Hacker - How to verify if your user has been hackered/credential stolen

On internet, during these years there are lot of websites where user credential and password was stolen.

Here is an interesting website that, utilizing a database, advise you about your account weakness on some websites where you are registered on.

Server - MMC customization and add Taskpad

To manage server you need to use mmc snapin.

Remote Server Administration Tools for Windows 7 with Service Pack 1 (SP1)

2012 Server – RSAT anche in 2008 R2 SP1 e 2008 SP2

Windows 10 - Remote Server Administration Tools for Windows 10

But there is an interesting feature that give you opportunity to link any script in mmc to launch them for remote monitoring/tasks.

Here is relative screenshot that well explain concept.

For example if you like to execute remote dcdiag or repadmin /summary on remote dc you can use them in conjunction with psexes and these diagnostic AD tools/commands:

Ad test:

Server – Effettuare il test di AD

Server - Commands to verify Domain Controller/Domain Status, schema version, move 5 PDC roles, export DHCP

PSexec - How to execute remote commands about .vbs, .exe, microsoft patch installation...

Here is article that explain mmc customization process

Veeam B&R - Excessive workload on Storage during backup

Veeam backup can create problems to your storage that is exposed as iscsi/shared folder due to two principal reasons:

1. Concurrent snapshots/Backups that is managed in this section:

2. Excessive storage stress that can be limited here:

3. About hyperV you can revies this screenshot and relative register key:

2 registry values under HKLMSOFTWAREVeeamVeeam Backup and Replication key:

MaxVmCountOnHvSoftSnapshot (DWORD)
MaxVmCountOnHvHardSnapshot (DWORD) registry values

about theory you can review these most exhaustive articles:

Introducing Backup I/O Control in Veeam Backup & Replication

VEEAM Invests in Faster & More Efficient Data Protection With Backup & Replication 8

Extra IT - Global Optimization Laboratory dedicated to the memory of Gerardo Poggiali

Today at 5.00 PM in via di Santa Marta 3 (Firenze) - aula Caminetto, the Global Optimization Laboratory dedicated to the memory of Gerardo Poggiali will give a short presentation of its activities



I had the opportunity to met Gerardo Poggiali more than 20 Years ago when we was studing at Engineer Florence University and, considering his suddenly death, I am publishing this event that will happen today in Santa Marta, I could not be there but I have a very good memory about him.

[update 2016.06.16]

Here is

Video di una giornata di presentazione del laboratorio GOL - presso il Dipartimento di Ingegneria dell'Informazione dell'Università degli Studi di Firenze.

Tips - Qnap [Firmware Upgrade] System update failed. Firmware file format error. Error code: FW004

I got problems to update firmware on old QNAP product.

When I tried to update firmware through web interface I got this error:

[Firmware Upgrade] System update failed. Firmware file format error. Error code: FW004

Solution was:

1. Start reading this interesting article:

How To Update Qnap Firmware

2. I went on qnap support web page and I downloaded new firmware (and previsious version too)

3. On previously link I searched and downloaded and Qnap Finder

4. I installed firmware utilizing qnap finder and installation went well.

[update 2019.05.13]

Here they are updated links to all QNAP Storage products: