My recent posts about the NTFSsecurity module drew a comment that the cmdlets in the module couldn’t be used because they’re not installed on every server. This raises the question – to install or not.
Windows systems have a huge array of PowerShell cmdlets available:
– those from the PowerShell team that form the “core” of PowerShell
– other Windows teams such as the Networking and Storage teams
– the modules that come with optional features such as AD, DNS or DHCP
– the RSAT tools – though they overlap with the cmdlets from the optional features
– modules from the PowerShell gallery – some Microsoft and others from the community
– modules from third party vendors
What I install on a system depends on what the system is supposed to do and what I need to know about the system.
A domain controller probably doesn’t need much extra PowerShell functionality installed as it should a single purpose (I include DNS) system.
Similarly, a dedicated Exchange or SQL Server system doesn’t need much else installed – though I may install the DBAtools on a SQL box.
A File server is likely to have a mass of NTFS permissions to work with and the NTFSsecurity module would be very useful.
Jump off / admin servers are where I’d likely to install a lot of functionality that can reach out to other systems.
The question to install or not doesn’t have a simple answer – some organizations categorically forbid the installation of external software for instance – as it depends on your organization, your needs and what you want to accomplish.
As usual with IT the only answer is – IT DEPENDS!