Whamcloud - gitweb
LU-19098 hsm: don't print progname twice with lhsmtool
[fs/lustre-release.git] / lustre / doc / lctl-list_param.8
1 .TH LCTL-LIST_PARAM 8 2024-08-13 Lustre "Lustre Configuration Utilities"
2 .SH NAME
3 lctl-list_param \- list configuration parameter names
4 .SH SYNOPSIS
5 .SY "lctl list_param"
6 .RB [ --dshbak | -b ]
7 .RB [ --color | -c ]
8 .RB [ --dir-only | -D ]
9 .RB [ --classify | -F ]
10 .RB [ --links | -l ]
11 .RB [ --no-links | -L ]
12 .RB [ --merge | -m ]
13 .RB [ --no-merge | -M ]
14 .RB [ --path | -p ]
15 .RB [ --readable | -r ]
16 .RB [ --recursive | -R ]
17 .RB [ --tunable | -t ]
18 .RB [ --writeable | -w ]
19 .IR PARAM_PATH1 " [" PARAM_PATH2 " ...]"
20 .YS
21 .SH DESCRIPTION
22 List the Lustre or LNet parameter name(s) matching
23 .IR param_search .
24 The parameter name(s) may contain wildcards using
25 .BR glob (3)
26 pathname patterns.
27 .SH OPTIONS
28 The various options supported by
29 .BR lctl list_param
30 are listed and explained below:
31 .TP
32 .BR -b ", " --dshbak
33 Aggregate parameters with wildcards whenever a device number appears in the
34 parameter name.
35 By default --merge is enabled with this option to merge the simplified names.
36 Specify --no-merge if you want the parameter names with wildcards but do not
37 want them to be merged.
38 .TP
39 .BR -c ", " --color=auto|always|never
40 Use one of auto|always|never as the rule of when to apply color. The default is
41 auto which will display color only when the output is a terminal.
42 .TP
43 .BR -D ", " --dir-only
44 Only list directories.
45 .TP
46 .BR -F ", " --classify
47 Append '/', '@' or '=' for dirs, symlinks and writeable files, respectively.
48 .TP
49 .BR -l ", " --links
50 Follow symlinks while searching for parameters. (enabled by default)
51 .TP
52 .BR -L ", " --no-links
53 Do not follow symlinks while searching for parameters.
54 .TP
55 .BR -m ", " --merge
56 Merge all parameters that have the same name such that only one will be shown.
57 Enabled by default.
58 .TP
59 .BR -M ", " --no-merge
60 Do not merge parameters. All parameters will be shown, regardless if they are
61 have the same name or not. Duplicate parameters will be printed in yellow.
62 .TP
63 .BR -p ", " --path
64 Print the parameter path instead of the parameter name.
65 .TP
66 .BR -r ", " --readable
67 Print only parameters that have read permission. Can be used with
68 .RB [ -w | --writable ]
69 to print parameters that are both readable and writable.
70 .TP
71 .BR -R ", " --recursive
72 Recursively list all parameters under the specified parameter search string. If
73 .I param_search
74 is unspecified, all the parameters will be shown.
75 .TP
76 .BR -t ", " --tunable
77 Print only tunable parameters. This avoids printing directories and all
78 parameters containing any of the following:
79 .br
80 .BR console | debug_ | fail_ | force | import | nis | panic_ | srpc_sepol | stats | target_obd
81 .TP
82 .BR -w ", " --writable
83 Print only parameters that have write permission. Can be used with
84 .RB [ -r | --readable ]
85 to print parameters that are both readable and writable.
86 .SH EXAMPLES
87 Use wildcards to obtain all matching parameters:
88 .RS
89 .EX
90 .B # lctl list_param ost.*
91 ost.OSS
92 ost.num_refs
93 .EE
94 .RE
95 .PP
96 Show the file type with
97 .BR -F ,
98 this can be useful in combination with
99 .B grep
100 to find certain types of parameters:
101 .RS
102 .EX
103 .B # lctl list_param -F ost.* debug
104 ost.OSS/
105 ost.num_refs
106 debug=
107 .EE
108 .RE
109 .PP
110 Since there are multiple location that hold paramters, use
111 .B -p
112 to get the full filepath for more efficient use by external mornitoring tools:
113 .RS
114 .EX
115 .B # lctl list_param -p ost.*
116 /sys/fs/lustre/ost/OSS
117 /sys/fs/lustre/ost/num_refs
118 .EE
119 .RE
120 .PP
121 Search recursively through the directory tree with
122 .B -R
123 to get the full list of both directories and parameters in the tree:
124 .RS
125 .EX
126 .B # lctl list_param -R mdt
127 mdt
128 mdt.lustre-MDT0000
129 mdt.lustre-MDT0000.capa
130 mdt.lustre-MDT0000.capa_count
131 mdt.lustre-MDT0000.capa_key_timeout
132 mdt.lustre-MDT0000.capa_timeout
133 mdt.lustre-MDT0000.commit_on_sharing
134 mdt.lustre-MDT0000.evict_client
135 .B ...
136 .EE
137 .RE
138 .PP
139 To avoid following symlinks which can lead to duplicate output use
140 .BR --no-links .
141 Note that
142 .I mgs.MGS.osd
143 is a symlink to
144 .I ../../ost-ldiskfs/lustre-MDT0000:
145 .RS
146 .EX
147 .B # lctl list_param -L -R mgs.MGS
148 .B ...
149 mgs.MGS.mgs.timeouts
150 mgs.MGS.mntdev
151 mgs.MGS.num_exports
152 mgs.MGS.uuid
153 mgs.MGS.filesystems
154 mgs.MGS.gss
155 .B ...
156 .EE
157 .RE
158 Compare this to the same command with --links enabled:
159 .RS
160 .EX
161 .B # lctl list_param -l -R mgs.MGS
162 .B ...
163 mgs.MGS.mgs.timeouts
164 mgs.MGS.mntdev
165 mgs.MGS.num_exports
166 mgs.MGS.osd
167 mgs.MGS.osd.auto_scrub
168 .B ...
169 mgs.MGS.osd.quota_slave_md.root_prj_enable
170 mgs.MGS.osd.quota_slave_md.timeout
171 mgs.MGS.uuid
172 mgs.MGS.filesystems
173 mgs.MGS.gss
174 .B ...
175 .EE
176 .RE
177 .PP
178 To get a full list of tunable parameters on the filesystem combine -t with -wr
179 .RS
180 .EX
181 .B # lctl list_param -R -L -t -wr ost.OSS.ost_seq
182 ost.OSS.ost_seq.high_priority_ratio
183 ost.OSS.ost_seq.threads_max
184 ost.OSS.ost_seq.threads_min
185 ost.OSS.ost_seq.nrs_crrn_quantum
186 ost.OSS.ost_seq.nrs_delay_max
187 ost.OSS.ost_seq.nrs_delay_min
188 ost.OSS.ost_seq.nrs_delay_pct
189 ost.OSS.ost_seq.nrs_policies
190 ost.OSS.ost_seq.nrs_tbf_rule
191 ost.OSS.ost_seq.req_buffer_history_max
192 ost.OSS.ost_seq.req_buffers_max
193 .EE
194 .RE
195 .PP
196 Using --merge will collapse copies of the same parameter if they have the exact
197 same name. Multiple copies are often caused by symlinks pointing to the same
198 directory that has already been searched
199 .RS
200 .EX
201 .B # lctl list_param -R --no-merge osp.lustre-OST0000-osc-MDT0000
202 osp.lustre-OST0000-osc-MDT0000
203 .I osp.lustre-OST0000-osc-MDT0000 <- symlink
204 osp.lustre-OST0000-osc-MDT0000.active
205 osp.lustre-OST0000-osc-MDT0000.active
206 osp.lustre-OST0000-osc-MDT0000.blocksize
207 osp.lustre-OST0000-osc-MDT0000.blocksize
208 .B ...
209 .P
210 .B # lctl list_param -R --merge osp.lustre-OST0000-osc-MDT0000
211 osp.lustre-OST0000-osc-MDT0000
212 osp.lustre-OST0000-osc-MDT0000.active
213 osp.lustre-OST0000-osc-MDT0000.blocksize
214 osp.lustre-OST0000-osc-MDT0000.create_count
215 .B ...
216 .EE
217 .RE
218 .PP
219 Using --dshbak will collapse multiple OSTs and MDTs so params are easier to read
220 .RS
221 .EX
222 .B # lctl list_param -R osp.*
223 osp.lustre-OST0000-osc-MDT0000.active
224 osp.lustre-OST0000-osc-MDT0000.blocksize
225 osp.lustre-OST0000-osc-MDT0000.create_count
226 osp.lustre-OST0000-osc-MDT0000.destroys_in_flight
227 .B ...
228 osp.lustre-OST0001-osc-MDT0000.active
229 osp.lustre-OST0001-osc-MDT0000.blocksize
230 osp.lustre-OST0001-osc-MDT0000.create_count
231 osp.lustre-OST0001-osc-MDT0000.destroys_in_flight
232 .B ...
233 .P
234 .B # lctl list_param -R --dshbak osp.*
235 osp.lustre-OST*-osc-MDT*.active
236 osp.lustre-OST*-osc-MDT*.blocksize
237 osp.lustre-OST*-osc-MDT*.create_count
238 osp.lustre-OST*-osc-MDT*.destroys_in_flight
239 .B ...
240 .EE
241 .RE
242 .SH AVAILABILITY
243 .B lctl list_param
244 is part of the
245 .BR lustre (7)
246 filesystem package since release 1.7.0
247 .\" Added in commit 1.6.1-3050-g04248c9069
248 .SH SEE ALSO
249 .BR lfs (1),
250 .BR lustre (7),
251 .BR lctl-get_param (8),
252 .BR lctl-set_param (8)