community.windows.win_defrag – Consolidate fragmented files on local volumes

Note

This plugin is part of the community.windows collection (version 1.3.0).

To install it use: ansible-galaxy collection install community.windows.

To use it in a playbook, specify: community.windows.win_defrag.

Synopsis

Requirements

The below requirements are needed on the host that executes this module.

  • defrag.exe

Parameters

Parameter Choices/Defaults Comments
exclude_volumes
list / elements=string
A list of drive letters or mount point paths to exclude from defragmentation.
freespace_consolidation
boolean
    Choices:
  • no ←
  • yes
Perform free space consolidation on the specified volumes.
include_volumes
list / elements=string
A list of drive letters or mount point paths of the volumes to be defragmented.
If this parameter is omitted, all volumes (not excluded) will be fragmented.
parallel
boolean
    Choices:
  • no ←
  • yes
Run the operation on each volume in parallel in the background.
priority
string
    Choices:
  • low ←
  • normal
Run the operation at low or normal priority.

Examples

- name: Defragment all local volumes (in parallel)
  community.windows.win_defrag:
    parallel: yes

- name: 'Defragment all local volumes, except C: and D:'
  community.windows.win_defrag:
    exclude_volumes: [ C, D ]

- name: 'Defragment volume D: with normal priority'
  community.windows.win_defrag:
    include_volumes: D
    priority: normal

- name: Consolidate free space (useful when reducing volumes)
  community.windows.win_defrag:
    freespace_consolidation: yes

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description
changed
boolean
always
Whether or not any changes were made.

Sample:
True
cmd
string
always
The complete command line used by the module.

Sample:
defrag.exe /C /V
msg
string
failed
Possible error message on failure.

Sample:
Command 'defrag.exe' not found in $env:PATH.
rc
integer
always
The return code for the command.

stderr
string
always
The error output from the command.

stdout
string
always
The standard output from the command.

Sample:
Success.


Authors

  • Dag Wieers (@dagwieers)