summaryrefslogtreecommitdiff
path: root/docs-xml/smbdotconf/tuning/strictallocate.xml
blob: 9311eb6b8076210fcd473fffae0da297316c9db2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<samba:parameter name="strict allocate"
                 context="S"
				 type="boolean"
                 xmlns:samba="http://www.samba.org/samba/DTD/samba-doc">
<description>
    <para>This is a boolean that controls the handling of
    disk space allocation in the server. When this is set to <constant>yes</constant>
    the server will change from UNIX behaviour of not committing real
    disk storage blocks when a file is extended to the Windows behaviour
    of actually forcing the disk system to allocate real storage blocks
    when a file is created or extended to be a given size. In UNIX
    terminology this means that Samba will stop creating sparse files.
    Modern UNIX filesystems now support extents and so in Samba 3.6.0 we
    have changed this parameter to default to "yes". On older filesystems
    without extents you might want to turn this parameter to "no".
    </para>

    <para>When you have an extent based filesystem it's likely that we can make
    use of unwritten extents which allows Samba to allocate even large amounts
    of space very fast and you will not see any timeout problems caused by
    strict allocate. With strict allocate in use you will also get much better
    out of quota messages in case you use quotas. Another advantage of
    activating this setting is that it will help to reduce file
    fragmentation.</para>

    <para>To give you an idea on which filesystems this setting might currently
    be a good option for you: XFS, ext4, btrfs, ocfs2 on Linux and JFS2 on
    AIX support unwritten extents. On Filesystems that do not support it,
    preallocation is probably an expensive operation where you will see reduced
    performance and risk to let clients run into timeouts when creating large
    files. Examples are ext3, ZFS, HFS+ and most others, so be aware if you
    leave the default setting on those filesystems.</para>

</description>

<value type="default">yes</value>
</samba:parameter>