+++ /dev/null
-.TH LCTL-LCFG 8 "2017-04-13" Lustre "configuration utilities"
-.SH NAME
-lctl-lcfg \- Lustre configuration utilities
-.SH SYNOPSIS
-.br
-.B lctl fork_lcfg \fR{fsname} {newname}
-.br
-.br
-.B lctl erase_lcfg \fR{fsname}
-.br
-.SH DESCRIPTION
-.TP
-.B fork_lcfg \fR{fsname} {newname}
-Generate Lustre configuration for the given filesystem
-.I newname
-based on the specified Lustre system
-.I fsname
-configuration. It is not simply copy. Instead, it uses the
-.I newname
-as the filesystem name in the new configuration. It can be used to
-backup the system configuration, or generate configuration for the
-snapshot that has the same configuration as the original filesystem
-but with different filesystem names.
-
-.TP
-.B erase_lcfg \fR{fsname}
-Permanently erase configuration for the named filesystem. It can be
-used to remove the backup configuration or delete inactive filesystem
-(or snapshot) from a shared MGS.
-
-.SH AVAILABILITY
-.B lctl-lcfg
-is part of the
-.BR lustre (7)
-filesystem package.
-.SH SEE ALSO
-.BR lctl (8),
-.BR lctl-snapshot-create (8),
-.BR lctl-snapshot-destroy (8)
--- /dev/null
+.TH LCTL-LCFG_CLEAR 8 "2023-03-28" Lustre "configuration utilities"
+.SH NAME
+lctl\-lcfg_clear \- clear filesystem config llog
+.SH SYNOPSIS
+.br
+.B lctl lcfg_clear \fIFSNAME\fR|\fIDEVNAME
+.br
+.SH DESCRIPTION
+.B lcfg_clear
+(alias
+.BR clear_conf )
+is run on the MGS node, with the MGS device mounted with the
+.B -o nosvc
+flag. It cleans up any records marked
+.I SKIP
+from the configuration files stored in the
+.I CONFIGS/
+directory. If
+.I DEVNAME
+is given, then the specific logs for
+that filesystem (e.g.
+.IR testfs-MDT0000 )
+are processed. Otherwise, if a filesystem name is given, then all
+configuration files are cleared. The previous configuration log is
+backed up on the MGS disk with the suffix
+.IR 'config.timestamp.bak' ,
+such as
+.IR 'testfs-MDT0000.1476454535.bak' .
+
+.SH AVAILABILITY
+.B lctl-lcfg_clear
+is part of the
+.BR lustre (7)
+filesystem package.
+.SH SEE ALSO
+.BR lctl (8),
+.BR lctl-lcfg_erase (8),
+.BR lctl-lcfg_fork (8),
+.BR lctl-llog_catlist (8),
+.BR lctl-llog_clear (8),
+.BR lctl-llog_print (8),
+.BR lctl-snapshot-create (8),
+.BR lctl-snapshot-destroy (8)
--- /dev/null
+.TH LCTL-FORK_LCFG 8 "2023-03-28" Lustre "configuration utilities"
+.SH NAME
+lctl-lcfg_fork \- duplicate and rename filesystem config llog
+.SH SYNOPSIS
+.IR "\fBlctl lcfg_fork" " <" FSNAME "> <" NEWNAME >
+.SH DESCRIPTION
+.B lcfg_fork
+(alias
+.BR fork_lcfg )
+generates a new Lustre configuration llog for the filesystem named
+.I NEWNAME
+based on the existing Lustre filesystem configuration for
+.IR FSNAME .
+It is not simply a copy of
+.I FSNAME
+to new configuration files named
+.IR NEWNAME ,
+but rather it also replaces all instances of
+.I FSNAME
+in the configuration with
+.I NEWNAME
+as the filesystem name. It can be used to
+backup the system configuration, or generate configuration for the
+snapshot that has the same configuration as the original filesystem
+but with different filesystem names.
+
+.SH AVAILABILITY
+.B lctl-lcfg_fork
+is part of the
+.BR lustre (7)
+filesystem package.
+.SH SEE ALSO
+.BR lctl (8),
+.BR lctl-lcfg_clear (8),
+.BR lctl-lcfg_erase (8),
+.BR lctl-llog_catlist (8),
+.BR lctl-snapshot-create (8),
+.BR lctl-snapshot-destroy (8)
{"which_nid", jt_ptl_which_nid, 0, "choose a NID\n"
"usage: which_nid NID [NID...]"},
{"replace_nids", jt_replace_nids, 0,
- "replace primary NIDs for a device\n"
- "usage: replace_nids <device> <nid1>[,nid2,nid3:nid4,nid5:nid6]"},
+ "replace primary NIDs for device (clients/servers must be unmounted)\n"
+ "usage: replace_nids <DEVICE> <NID1>[,NID2,NID3:NID4,NID5:NID6]"},
{"interface_list", jt_ptl_print_interfaces, 0,
"print network interface entries\n"
"usage: interface_list"},
"usage: llog_catlist"},
{"llog_info", jt_llog_info, 0,
"print log header information.\n"
- "usage: llog_info <logname|FID>\n"},
+ "usage: llog_info {LOGNAME|FID}\n"},
{"llog_print", jt_llog_print, 0,
"print all effective log records by default, or within given range.\n"
"With --raw option skipped records are printed as well.\n"
- "usage: llog_print <logname|FID> [--start <index>] [--end <index>j]\n"
+ "usage: llog_print {LOGNAME|FID} [--start INDEX] [--end INDEX]\n"
" [--raw]\n"},
{"llog_cancel", jt_llog_cancel, 0,
"cancel one record in specified log.\n"
- "usage:llog_cancel <logname|FID> --log_idx <idx>\n"},
+ "usage:llog_cancel {LOGNAME|FID} --log_idx INDEX\n"},
{"llog_check", jt_llog_check, 0,
"verify that log content is valid.\n"
- "usage: llog_check <logname|FID> [--start <index>] [--end <index>j]\n"
+ "usage: llog_check {LOGNAME|FID} [--start INDEX] [--end INDEX]\n"
" check all records from index 1 by default."},
{"llog_remove", jt_llog_remove, 0,
"remove one log from catalog or plain log, erase it from disk.\n"
- "usage: llog_remove <logname|FID> [--log_id <id>]"},
- {"clear_conf", jt_lcfg_clear, 0,
- "drop unused config logs for a device or filesystem\n"
- "usage: clear_conf <device|fsname>"},
- {"fork_lcfg", jt_lcfg_fork, 0,
+ "usage: llog_remove {LOGNAME|FID} [--log_id ID]"},
+ {"lcfg_clear", jt_lcfg_clear, 0,
+ "drop unused config llog records for a device or filesystem.\n"
+ "clients and servers must be unmounted during this operation.\n"
+ "usage: clear_conf {FSNAME|DEVNAME}"},
+ {"clear_conf", jt_lcfg_clear, 0, "alias for 'lcfg_clear'\n"},
+ {"lcfg_fork", jt_lcfg_fork, 0,
"copy configuration logs for named filesystem with given name\n"
- "usage: fork_lcfg <fsname> <newname>"},
- {"erase_lcfg", jt_lcfg_erase, 0,
+ "usage: fork_lcfg FSNAME NEWNAME"},
+ {"fork_lcfg", jt_lcfg_fork, 0, "alias for 'lcfg_fork'\n"},
+ {"lcfg_erase", jt_lcfg_erase, 0,
"permanently erase configuration logs for the named filesystem\n"
- "usage: erase_lcfg <fsname>"},
+ "usage: erase_lcfg FSNAME"},
+ {"erase_lcfg", jt_lcfg_erase, 0, "alias for 'lcfg_erase'\n"},
#endif /* HAVE_SERVER_SUPPORT */
{"==== obsolete (DANGEROUS) ====", NULL, 0, "obsolete (DANGEROUS)"},