Normally pmnsdel operates on the default Performance Metrics Namespace (PMNS), however if the -n option is specified an alternative namespace is used from the file namespace.
The default PMNS is found in the file $PCP_VAR_DIR/pmns/root unless the environment variable PMNS_DEFAULT is set, in which case the value is assumed to be the pathname to the file containing the default PMNS.
The metric names to be deleted are all those for which one of the metricpath arguments is a prefix in the PMNS, see pmns(4).
All of the files defining the PMNS must be located within the directory that contains the root of the PMNS, and this would typically be $PCP_VAR_DIR/pmns for the default PMNS, and this would typically imply running pmnsdel as root.
Provided some initial integrity checks are satisfied, pmnsdel will update the necessary PMNS files. pmnsdel will then attempt to compile the resultant namespace using pmnscomp(1) - if this fails for any reason, the original namespace is restored. Note that any PMNS files that are no longer referenced by the modified namespace will not be removed, even though though their contents are not part of the new namespace.
The -d option allows the resultant PMNS to optionally contain duplicate PMIDs with different names in the PMNS. By default this condition is considered an error.