1. A non-transitory computer-readable storage medium storing a computer program comprising computer-readable program instructions which, when running on or loaded into a file system server or into a computer connected to a file system server or when being executed by one or more processors or processing units of the file system server or the computers, cause the file system server to execute a method for managing a file system in a data storage system comprising the file system server; the method comprising: managing a current version of the file system and a plurality of snapshot copies of the file system, each snapshot copy being a respective checkpoint version of the file system taken by a checkpoint mechanism at a respective checkpoint of a series of checkpoints, and executing a deduplication process for identifying and de-duplicating candidate data units for deduplication in the file system; the deduplication process including: identifying a snapshot copy of the file system at a second checkpoint that is later in time than a first checkpoint; identifying data units, which have been modified from the first checkpoint until the second checkpoint, as candidate data units for deduplication, and processing one or more first data units selected from only the identified candidate data units for deduplication.