1 | '\" t
|
---|
2 | .\" Title: vfs_gpfs
|
---|
3 | .\" Author: [see the "AUTHOR" section]
|
---|
4 | .\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
---|
5 | .\" Date: 08/08/2011
|
---|
6 | .\" Manual: System Administration tools
|
---|
7 | .\" Source: Samba 3.6
|
---|
8 | .\" Language: English
|
---|
9 | .\"
|
---|
10 | .TH "VFS_GPFS" "8" "08/08/2011" "Samba 3\&.6" "System Administration tools"
|
---|
11 | .\" -----------------------------------------------------------------
|
---|
12 | .\" * set default formatting
|
---|
13 | .\" -----------------------------------------------------------------
|
---|
14 | .\" disable hyphenation
|
---|
15 | .nh
|
---|
16 | .\" disable justification (adjust text to left margin only)
|
---|
17 | .ad l
|
---|
18 | .\" -----------------------------------------------------------------
|
---|
19 | .\" * MAIN CONTENT STARTS HERE *
|
---|
20 | .\" -----------------------------------------------------------------
|
---|
21 | .SH "NAME"
|
---|
22 | vfs_gpfs \- gpfs specific samba extensions like acls and prealloc
|
---|
23 | .SH "SYNOPSIS"
|
---|
24 | .HP \w'\ 'u
|
---|
25 | vfs objects = gpfs
|
---|
26 | .SH "DESCRIPTION"
|
---|
27 | .PP
|
---|
28 | This VFS module is part of the
|
---|
29 | \fBsamba\fR(7)
|
---|
30 | suite\&.
|
---|
31 | .PP
|
---|
32 | The
|
---|
33 | gpfs
|
---|
34 | VFS module is the home for all gpfs extensions that Samba requires for proper integration with GPFS\&. It uses the GPL library interfaces provided by GPFS\&.
|
---|
35 | .PP
|
---|
36 | Currently the gpfs vfs module provides extensions in following areas :
|
---|
37 | .sp
|
---|
38 | .RS 4
|
---|
39 | .ie n \{\
|
---|
40 | \h'-04'\(bu\h'+03'\c
|
---|
41 | .\}
|
---|
42 | .el \{\
|
---|
43 | .sp -1
|
---|
44 | .IP \(bu 2.3
|
---|
45 | .\}
|
---|
46 | NFSv4 ACL Interfaces with configurable options for GPFS
|
---|
47 | .RE
|
---|
48 | .sp
|
---|
49 | .RS 4
|
---|
50 | .ie n \{\
|
---|
51 | \h'-04'\(bu\h'+03'\c
|
---|
52 | .\}
|
---|
53 | .el \{\
|
---|
54 | .sp -1
|
---|
55 | .IP \(bu 2.3
|
---|
56 | .\}
|
---|
57 | Kernel oplock support on GPFS
|
---|
58 | .RE
|
---|
59 | .sp
|
---|
60 | .RS 4
|
---|
61 | .ie n \{\
|
---|
62 | \h'-04'\(bu\h'+03'\c
|
---|
63 | .\}
|
---|
64 | .el \{\
|
---|
65 | .sp -1
|
---|
66 | .IP \(bu 2.3
|
---|
67 | .\}
|
---|
68 | Lease support on GPFS
|
---|
69 | .RE
|
---|
70 | .sp
|
---|
71 | .RE
|
---|
72 | .PP
|
---|
73 | NOTE:This module follows the posix\-acl behaviour and hence allows permission stealing via chown\&. Samba might allow at a later point in time, to restrict the chown via this module as such restrictions are the responsibility of the underlying filesystem than of Samba\&.
|
---|
74 | .PP
|
---|
75 | This module is stackable\&.
|
---|
76 | .SH "OPTIONS"
|
---|
77 | .PP
|
---|
78 | gpfs:sharemodes = [ yes | no ]
|
---|
79 | .RS 4
|
---|
80 | Enable/Disable cross node sharemode handling for GPFS\&.
|
---|
81 | .sp
|
---|
82 | .RS 4
|
---|
83 | .ie n \{\
|
---|
84 | \h'-04'\(bu\h'+03'\c
|
---|
85 | .\}
|
---|
86 | .el \{\
|
---|
87 | .sp -1
|
---|
88 | .IP \(bu 2.3
|
---|
89 | .\}
|
---|
90 |
|
---|
91 | yes(default)
|
---|
92 | \- propagate sharemodes across all GPFS nodes\&.
|
---|
93 | .RE
|
---|
94 | .sp
|
---|
95 | .RS 4
|
---|
96 | .ie n \{\
|
---|
97 | \h'-04'\(bu\h'+03'\c
|
---|
98 | .\}
|
---|
99 | .el \{\
|
---|
100 | .sp -1
|
---|
101 | .IP \(bu 2.3
|
---|
102 | .\}
|
---|
103 |
|
---|
104 | no
|
---|
105 | \- do not propagate sharemodes across all GPFS nodes\&. This should only be used if the GPFS file system is exclusively exported by Samba\&. Access by local unix application or NFS exports could lead to corrupted files\&.
|
---|
106 | .RE
|
---|
107 | .sp
|
---|
108 | .RE
|
---|
109 | .RE
|
---|
110 | .PP
|
---|
111 | gpfs:leases = [ yes | no ]
|
---|
112 | .RS 4
|
---|
113 | Enable/Disable cross node leases (oplocks) for GPFS\&. You should also set the
|
---|
114 | oplocks
|
---|
115 | and
|
---|
116 | kernel oplocks
|
---|
117 | options to the same value\&.
|
---|
118 | .sp
|
---|
119 | .RS 4
|
---|
120 | .ie n \{\
|
---|
121 | \h'-04'\(bu\h'+03'\c
|
---|
122 | .\}
|
---|
123 | .el \{\
|
---|
124 | .sp -1
|
---|
125 | .IP \(bu 2.3
|
---|
126 | .\}
|
---|
127 |
|
---|
128 | yes(default)
|
---|
129 | \- propagate leases across all GPFS nodes\&.
|
---|
130 | .RE
|
---|
131 | .sp
|
---|
132 | .RS 4
|
---|
133 | .ie n \{\
|
---|
134 | \h'-04'\(bu\h'+03'\c
|
---|
135 | .\}
|
---|
136 | .el \{\
|
---|
137 | .sp -1
|
---|
138 | .IP \(bu 2.3
|
---|
139 | .\}
|
---|
140 |
|
---|
141 | no
|
---|
142 | \- do not propagate leases across all GPFS nodes\&. This should only be used if the GPFS file system is exclusively exported by Samba\&. Access by local unix application or NFS exports could lead to corrupted files\&.
|
---|
143 | .RE
|
---|
144 | .sp
|
---|
145 | .RE
|
---|
146 | .RE
|
---|
147 | .PP
|
---|
148 | gpfs:hsm = [ yes | no ]
|
---|
149 | .RS 4
|
---|
150 | Enable/Disable announcing if this FS has HSM enabled\&.
|
---|
151 | .sp
|
---|
152 | .RS 4
|
---|
153 | .ie n \{\
|
---|
154 | \h'-04'\(bu\h'+03'\c
|
---|
155 | .\}
|
---|
156 | .el \{\
|
---|
157 | .sp -1
|
---|
158 | .IP \(bu 2.3
|
---|
159 | .\}
|
---|
160 |
|
---|
161 | no(default)
|
---|
162 | \- Do not announce HSM\&.
|
---|
163 | .RE
|
---|
164 | .sp
|
---|
165 | .RS 4
|
---|
166 | .ie n \{\
|
---|
167 | \h'-04'\(bu\h'+03'\c
|
---|
168 | .\}
|
---|
169 | .el \{\
|
---|
170 | .sp -1
|
---|
171 | .IP \(bu 2.3
|
---|
172 | .\}
|
---|
173 |
|
---|
174 | no
|
---|
175 | \- Announce HSM\&.
|
---|
176 | .RE
|
---|
177 | .sp
|
---|
178 | .RE
|
---|
179 | .RE
|
---|
180 | .PP
|
---|
181 | gpfs:getrealfilename = [ yes | no ]
|
---|
182 | .RS 4
|
---|
183 | Enable/Disable usage of the
|
---|
184 | gpfs_get_realfilename_path()
|
---|
185 | function\&. This improves the casesensitive wildcard file name access\&.
|
---|
186 | .sp
|
---|
187 | .RS 4
|
---|
188 | .ie n \{\
|
---|
189 | \h'-04'\(bu\h'+03'\c
|
---|
190 | .\}
|
---|
191 | .el \{\
|
---|
192 | .sp -1
|
---|
193 | .IP \(bu 2.3
|
---|
194 | .\}
|
---|
195 |
|
---|
196 | yes(default)
|
---|
197 | \- use
|
---|
198 | gpfs_get_realfilename_path()\&.
|
---|
199 | .RE
|
---|
200 | .sp
|
---|
201 | .RS 4
|
---|
202 | .ie n \{\
|
---|
203 | \h'-04'\(bu\h'+03'\c
|
---|
204 | .\}
|
---|
205 | .el \{\
|
---|
206 | .sp -1
|
---|
207 | .IP \(bu 2.3
|
---|
208 | .\}
|
---|
209 |
|
---|
210 | no
|
---|
211 | \- do not use
|
---|
212 | gpfs_get_realfilename_path()\&. It seems that
|
---|
213 | gpfs_get_realfilename_path()
|
---|
214 | doesn\'t work on AIX\&.
|
---|
215 | .RE
|
---|
216 | .sp
|
---|
217 | .RE
|
---|
218 | .RE
|
---|
219 | .PP
|
---|
220 | gpfs:winattr = [ yes | no ]
|
---|
221 | .RS 4
|
---|
222 | Enable/Disable usage of the windows attributes in GPFS\&. GPFS is able to store windows file attributes e\&.g\&. HIDDEN, READONLY, SYSTEM and others natively\&. That means Samba doesn\'t need to map them to permission bits or extended attributes\&.
|
---|
223 | .sp
|
---|
224 | .RS 4
|
---|
225 | .ie n \{\
|
---|
226 | \h'-04'\(bu\h'+03'\c
|
---|
227 | .\}
|
---|
228 | .el \{\
|
---|
229 | .sp -1
|
---|
230 | .IP \(bu 2.3
|
---|
231 | .\}
|
---|
232 |
|
---|
233 | no(default)
|
---|
234 | \- do not use GPFS windows attributes\&.
|
---|
235 | .RE
|
---|
236 | .sp
|
---|
237 | .RS 4
|
---|
238 | .ie n \{\
|
---|
239 | \h'-04'\(bu\h'+03'\c
|
---|
240 | .\}
|
---|
241 | .el \{\
|
---|
242 | .sp -1
|
---|
243 | .IP \(bu 2.3
|
---|
244 | .\}
|
---|
245 |
|
---|
246 | yes
|
---|
247 | \- use GPFS windows attributes\&.
|
---|
248 | .RE
|
---|
249 | .sp
|
---|
250 | .RE
|
---|
251 | .RE
|
---|
252 | .PP
|
---|
253 | gpfs:merge_writeappend = [ yes | no ]
|
---|
254 | .RS 4
|
---|
255 | GPFS ACLs doesn\'t know about the \'APPEND\' right\&. This optionen lets Samba map the \'APPEND\' right to \'WRITE\'\&.
|
---|
256 | .sp
|
---|
257 | .RS 4
|
---|
258 | .ie n \{\
|
---|
259 | \h'-04'\(bu\h'+03'\c
|
---|
260 | .\}
|
---|
261 | .el \{\
|
---|
262 | .sp -1
|
---|
263 | .IP \(bu 2.3
|
---|
264 | .\}
|
---|
265 |
|
---|
266 | yes(default)
|
---|
267 | \- map \'APPEND\' to \'WRITE\'\&.
|
---|
268 | .RE
|
---|
269 | .sp
|
---|
270 | .RS 4
|
---|
271 | .ie n \{\
|
---|
272 | \h'-04'\(bu\h'+03'\c
|
---|
273 | .\}
|
---|
274 | .el \{\
|
---|
275 | .sp -1
|
---|
276 | .IP \(bu 2.3
|
---|
277 | .\}
|
---|
278 |
|
---|
279 | no
|
---|
280 | \- do not map \'APPEND\' to \'WRITE\'\&.
|
---|
281 | .RE
|
---|
282 | .sp
|
---|
283 | .RE
|
---|
284 | .RE
|
---|
285 | .PP
|
---|
286 | gpfs:refuse_dacl_protected = [ yes | no ]
|
---|
287 | .RS 4
|
---|
288 | As GPFS does not support the ACE4_FLAG_NO_PROPAGATE NFSv4 flag (which would be the mapping for the DESC_DACL_PROTECTED flag), the status of this flag is currently silently ignored by Samba\&. That means that if you deselect the "Allow inheritable permissions\&.\&.\&." checkbox in Windows\' ACL dialog and then apply the ACL, the flag will be back immediately\&.
|
---|
289 | .sp
|
---|
290 | To make sure that automatic migration with e\&.g\&. robocopy does not lead to ACLs silently (and unintentionally) changed, you can set
|
---|
291 | gpfs:refuse_dacl_protected = yes
|
---|
292 | to enable an explicit check for this flag and if set, it will return NT_STATUS_NOT_SUPPORTED so errors are shown up on the Windows side and the Administrator is aware of the ACLs not being settable like intended
|
---|
293 | .sp
|
---|
294 | .RS 4
|
---|
295 | .ie n \{\
|
---|
296 | \h'-04'\(bu\h'+03'\c
|
---|
297 | .\}
|
---|
298 | .el \{\
|
---|
299 | .sp -1
|
---|
300 | .IP \(bu 2.3
|
---|
301 | .\}
|
---|
302 |
|
---|
303 | no(default)
|
---|
304 | \- ignore the DESC_DACL_PROTECTED flags\&.
|
---|
305 | .RE
|
---|
306 | .sp
|
---|
307 | .RS 4
|
---|
308 | .ie n \{\
|
---|
309 | \h'-04'\(bu\h'+03'\c
|
---|
310 | .\}
|
---|
311 | .el \{\
|
---|
312 | .sp -1
|
---|
313 | .IP \(bu 2.3
|
---|
314 | .\}
|
---|
315 |
|
---|
316 | yes
|
---|
317 | \- reject ACLs with DESC_DACL_PROTECTED\&.
|
---|
318 | .RE
|
---|
319 | .sp
|
---|
320 | .RE
|
---|
321 | .RE
|
---|
322 | .PP
|
---|
323 | nfs4:mode = [ simple | special ]
|
---|
324 | .RS 4
|
---|
325 | Enable/Disable substitution of special IDs on GPFS\&. This parameter should not affect the windows users in anyway\&. It only ensures that Samba sets the special IDs \- OWNER@ and GROUP@ ( mappings to simple uids ) that are relevant to GPFS\&.
|
---|
326 | .sp
|
---|
327 | The following MODEs are understood by the module:
|
---|
328 | .sp
|
---|
329 | .RS 4
|
---|
330 | .ie n \{\
|
---|
331 | \h'-04'\(bu\h'+03'\c
|
---|
332 | .\}
|
---|
333 | .el \{\
|
---|
334 | .sp -1
|
---|
335 | .IP \(bu 2.3
|
---|
336 | .\}
|
---|
337 | simple(default)
|
---|
338 | \- do not use special IDs in GPFS ACEs
|
---|
339 | .RE
|
---|
340 | .sp
|
---|
341 | .RS 4
|
---|
342 | .ie n \{\
|
---|
343 | \h'-04'\(bu\h'+03'\c
|
---|
344 | .\}
|
---|
345 | .el \{\
|
---|
346 | .sp -1
|
---|
347 | .IP \(bu 2.3
|
---|
348 | .\}
|
---|
349 | special
|
---|
350 | \- use special IDs in GPFS ACEs\&.
|
---|
351 | .RE
|
---|
352 | .sp
|
---|
353 | .RE
|
---|
354 | .RE
|
---|
355 | .PP
|
---|
356 | nfs4:acedup = [dontcare|reject|ignore|merge]
|
---|
357 | .RS 4
|
---|
358 | This parameter configures how Samba handles duplicate ACEs encountered in GPFS ACLs\&. GPFS allows/creates duplicate ACE for different bits for same ID\&.
|
---|
359 | .sp
|
---|
360 | Following is the behaviour of Samba for different values :
|
---|
361 | .sp
|
---|
362 | .RS 4
|
---|
363 | .ie n \{\
|
---|
364 | \h'-04'\(bu\h'+03'\c
|
---|
365 | .\}
|
---|
366 | .el \{\
|
---|
367 | .sp -1
|
---|
368 | .IP \(bu 2.3
|
---|
369 | .\}
|
---|
370 | dontcare (default)
|
---|
371 | \- copy the ACEs as they come
|
---|
372 | .RE
|
---|
373 | .sp
|
---|
374 | .RS 4
|
---|
375 | .ie n \{\
|
---|
376 | \h'-04'\(bu\h'+03'\c
|
---|
377 | .\}
|
---|
378 | .el \{\
|
---|
379 | .sp -1
|
---|
380 | .IP \(bu 2.3
|
---|
381 | .\}
|
---|
382 | reject
|
---|
383 | \- stop operation and exit with error on ACL set op
|
---|
384 | .RE
|
---|
385 | .sp
|
---|
386 | .RS 4
|
---|
387 | .ie n \{\
|
---|
388 | \h'-04'\(bu\h'+03'\c
|
---|
389 | .\}
|
---|
390 | .el \{\
|
---|
391 | .sp -1
|
---|
392 | .IP \(bu 2.3
|
---|
393 | .\}
|
---|
394 | ignore
|
---|
395 | \- don\'t include the second matching ACE
|
---|
396 | .RE
|
---|
397 | .sp
|
---|
398 | .RS 4
|
---|
399 | .ie n \{\
|
---|
400 | \h'-04'\(bu\h'+03'\c
|
---|
401 | .\}
|
---|
402 | .el \{\
|
---|
403 | .sp -1
|
---|
404 | .IP \(bu 2.3
|
---|
405 | .\}
|
---|
406 | merge
|
---|
407 | \- bitwise OR the 2 ace\&.flag fields and 2 ace\&.mask fields of the 2 duplicate ACEs into 1 ACE
|
---|
408 | .RE
|
---|
409 | .sp
|
---|
410 | .RE
|
---|
411 | .RE
|
---|
412 | .PP
|
---|
413 | nfs4:chown = [yes|no]
|
---|
414 | .RS 4
|
---|
415 | This parameter allows enabling or disabling the chown supported by the underlying filesystem\&. This parameter should be enabled with care as it might leave your system insecure\&.
|
---|
416 | .sp
|
---|
417 | Some filesystems allow chown as a) giving b) stealing\&. It is the latter that is considered a risk\&.
|
---|
418 | .sp
|
---|
419 | Following is the behaviour of Samba for different values :
|
---|
420 | .sp
|
---|
421 | .RS 4
|
---|
422 | .ie n \{\
|
---|
423 | \h'-04'\(bu\h'+03'\c
|
---|
424 | .\}
|
---|
425 | .el \{\
|
---|
426 | .sp -1
|
---|
427 | .IP \(bu 2.3
|
---|
428 | .\}
|
---|
429 | yes
|
---|
430 | \- Enable chown if as supported by the under filesystem
|
---|
431 | .RE
|
---|
432 | .sp
|
---|
433 | .RS 4
|
---|
434 | .ie n \{\
|
---|
435 | \h'-04'\(bu\h'+03'\c
|
---|
436 | .\}
|
---|
437 | .el \{\
|
---|
438 | .sp -1
|
---|
439 | .IP \(bu 2.3
|
---|
440 | .\}
|
---|
441 | no (default)
|
---|
442 | \- Disable chown
|
---|
443 | .RE
|
---|
444 | .sp
|
---|
445 | .RE
|
---|
446 | .RE
|
---|
447 | .PP
|
---|
448 | gpfs:syncio = [yes|no]
|
---|
449 | .RS 4
|
---|
450 | This parameter makes Samba open all files with O_SYNC\&. This triggers optimizations in GPFS for workloads that heavily share files\&.
|
---|
451 | .sp
|
---|
452 | Following is the behaviour of Samba for different values:
|
---|
453 | .sp
|
---|
454 | .RS 4
|
---|
455 | .ie n \{\
|
---|
456 | \h'-04'\(bu\h'+03'\c
|
---|
457 | .\}
|
---|
458 | .el \{\
|
---|
459 | .sp -1
|
---|
460 | .IP \(bu 2.3
|
---|
461 | .\}
|
---|
462 | yesOpen files with O_SYNC
|
---|
463 | .RE
|
---|
464 | .sp
|
---|
465 | .RS 4
|
---|
466 | .ie n \{\
|
---|
467 | \h'-04'\(bu\h'+03'\c
|
---|
468 | .\}
|
---|
469 | .el \{\
|
---|
470 | .sp -1
|
---|
471 | .IP \(bu 2.3
|
---|
472 | .\}
|
---|
473 | no (default)Open files as normal Samba would do
|
---|
474 | .RE
|
---|
475 | .sp
|
---|
476 | .RE
|
---|
477 | .RE
|
---|
478 | .SH "EXAMPLES"
|
---|
479 | .PP
|
---|
480 | A GPFS mount can be exported via Samba as follows :
|
---|
481 | .sp
|
---|
482 | .if n \{\
|
---|
483 | .RS 4
|
---|
484 | .\}
|
---|
485 | .nf
|
---|
486 | \fI[samba_gpfs_share]\fR
|
---|
487 | \m[blue]\fBvfs objects = gpfs\fR\m[]
|
---|
488 | \m[blue]\fBpath = /test/gpfs_mount\fR\m[]
|
---|
489 | \m[blue]\fBnfs4: mode = special\fR\m[]
|
---|
490 | \m[blue]\fBnfs4: acedup = merge\fR\m[]
|
---|
491 | .fi
|
---|
492 | .if n \{\
|
---|
493 | .RE
|
---|
494 | .\}
|
---|
495 | .SH "CAVEATS"
|
---|
496 | .PP
|
---|
497 | Depending on the version of gpfs, the
|
---|
498 | libgpfs_gpl
|
---|
499 | library or the
|
---|
500 | libgpfs
|
---|
501 | library is needed at runtime by the
|
---|
502 | gpfs
|
---|
503 | VFS module: Starting with gpfs 3\&.2\&.1 PTF8, the complete
|
---|
504 | libgpfs
|
---|
505 | is available as open source and
|
---|
506 | libgpfs_gpl
|
---|
507 | does no longer exist\&. With earlier versions of gpfs, only the
|
---|
508 | libgpfs_gpl
|
---|
509 | library was open source and could be used at run time\&.
|
---|
510 | .PP
|
---|
511 | At build time, only the header file
|
---|
512 | gpfs_gpl\&.h
|
---|
513 | is required , which is a symlink to
|
---|
514 | gpfs\&.h
|
---|
515 | in gpfs versions newer than 3\&.2\&.1 PTF8\&.
|
---|
516 | .SH "VERSION"
|
---|
517 | .PP
|
---|
518 | This man page is correct for version 3\&.0\&.25 of the Samba suite\&.
|
---|
519 | .SH "AUTHOR"
|
---|
520 | .PP
|
---|
521 | The original Samba software and related utilities were created by Andrew Tridgell\&. Samba is now developed by the Samba Team as an Open Source project similar to the way the Linux kernel is developed\&.
|
---|
522 | .PP
|
---|
523 | The GPFS VFS module was created with contributions from Volker Lendecke and the developers at IBM\&.
|
---|
524 | .PP
|
---|
525 | This manpage was created by the IBM FSCC team
|
---|