1# Netatalk 2.x afp volume cofiguration 2# This file looks empty when viewed with "vi". In fact, there is one 3# '~', so users with no AppleVolumes file in their home directory get 4# their home directory by default. 5 6# 7# volume format: 8# :DEFAULT: [all of the default options except volume name] 9# path [name] [casefold:x] [options:z,l,j] \ 10# [allow:a,@b,c,d] [deny:a,@b,c,d] [dbpath:path] [password:p] \ 11# [rwlist:a,@b,c,d] [rolist:a,@b,c,d] [limitsize:value in bytes] \ 12# [preexec:cmd] [root_preexec:cmd] [postexec:cmd] [root_postexec:cmd] \ 13# [allowed_hosts:IPv4 address[/IPv4 netmask bits]] \ 14# [denied_hosts:IPv4 address[/IPv4 netmask bits]] \ 15# ... more, see below ... 16# 17# name: volume name. it can't include the ':' character 18# 19 20# 21# variable substitutions: 22# you can use variables for both <path> and <name> now. here are the 23# rules: 24# 1) if you specify an unknown variable, it will not get converted. 25# 2) if you specify a known variable, but that variable doesn't have 26# a value, it will get ignored. 27# 28# the variables: 29# $b -> basename of path 30# $c -> client's ip or appletalk address 31# $d -> volume pathname on server 32# $f -> full name (whatever's in the gecos field) 33# $g -> group 34# $h -> hostname 35# $i -> client ip without tcp port or appletalk network 36# $s -> server name (can be the hostname) 37# $u -> username (if guest, it's whatever user guest is running as) 38# $v -> volume name (either ADEID_NAME or basename of path) 39# $z -> zone (may not exist) 40# $$ -> $ 41# 42 43# 44# casefold options [syntax: casefold:option]: 45# tolower -> lowercases names in both directions 46# toupper -> uppercases names in both directions 47# xlatelower -> client sees lowercase, server sees uppercase 48# xlateupper -> client sees uppercase, server sees lowercase 49# 50# allow/deny/rwlist/rolist format [syntax: allow:user1,@group]: 51# user1,@group,user2 -> allows/denies access from listed users/groups 52# rwlist/rolist control whether or not the 53# volume is ro for those users. 54# allowed_hosts -> Only listed hosts and networks are allowed, 55# all others are rejected. Example: 56# allowed_hosts:10.1.0.0/16,10.2.1.100 57# denied_hosts -> Listed hosts and nets are rejected, 58# all others are allowed. Example: 59# denied_hosts: 192.168.100/24,10.1.1.1 60# preexec -> command to be run when the volume is mounted, 61# ignore for user defined volumes 62# root_preexec -> command to be run as root when the volume is mounted, 63# ignore for user defined volumes 64# postexec -> command to be run when the volume is closed, 65# ignore for user defined volumes 66# root_postexec -> command to be run as root when the volume is closed, 67# ignore for user defined volumes 68# veto -> hide files and directories,where the path matches 69# one of the "/" delimited vetoed names. Matches are 70# partial, e.g. path is /abc/def/file and veto:/abc/ 71# will hide the file. 72# adouble -> specify the format of the metadata files. 73# default is "v2". netatalk 1.x used "v1". 74# "osx" cannot be treated normally any longer. 75# volsizelimit -> size in MiB. Useful for TimeMachine: limits the 76# reported volume size, thus preventing TM from using 77# the whole real disk space for backup. 78# Example: "volsizelimit:1000" would limit the 79# reported disk space to 1 GB. 80 81 82# 83# codepage options [syntax: options:charsetname] 84# volcharset -> specifies the charset to be used 85# as the volume codepage 86# e.g. "UTF8", "UTF8-MAC", "ISO-8859-15" 87# maccharset -> specifies the charset to be used 88# as the legacy client (<=Mac OS 9) codepage 89# e.g. "MAC_ROMAN", "MAC_CYRILLIC" 90# 91# perm -> default permission value 92# OR with the client requested perm 93# Use with options:upriv 94# dperm -> default permission value for directories 95# OR with the client requested perm 96# Use with options:upriv 97# fperm -> default permission value for files 98# OR with the client requested perm 99# Use with options:upriv 100# umask -> set perm mask 101# Use with options:upriv 102# dbpath:path -> store the database stuff in the following path. 103# cnidserver:server[:port] 104# -> Query this servername or IP address 105# (default:localhost) and port (default: 4700) 106# for CNIDs. Only used with CNID backend "dbd". 107# This option here overrides any setting from 108# afpd.conf:cnidserver. 109# password:password -> set a volume password (8 characters max) 110# cnidscheme:scheme -> set the cnid scheme for the volume, 111# default is [:DEFAULT_CNID_SCHEME:] 112# available schemes: [:COMPILED_BACKENDS:] 113# ea -> none|auto|sys|ad 114# Specify how Extended Attributes are stores. default 115# is auto. 116# auto: try "sys" (by setting an EA on the shared 117# directory itself), fallback to "ad". Requires 118# writable volume for performing the test. 119# Note: options:ro overwrites "auto" with "none." 120# sys: Use filesystem EAs 121# ad: Use files in AppleDouble directories 122# none: No EA support 123# 124 125# 126# miscellaneous options [syntax: options:option1,option2]: 127# tm -> enable TimeMachine support 128# prodos -> make compatible with appleII clients. 129# crlf -> enable crlf translation for TEXT files. 130# noadouble -> don't create .AppleDouble unless a resource 131# fork needs to be created. 132# ro -> mount the volume as read-only. 133# mswindows -> enforce filename restrictions imposed by MS 134# Windows. this will also invoke a default 135# codepage (iso8859-1) if one isn't already 136# specified. 137# nohex -> don't do :hex translations for anything 138# except dot files. specify usedots as well if 139# you want that turned off. note: this option 140# makes the / character illegal. 141# usedots -> don't do :hex translation for dot files. note: when 142# this option gets set, certain file names 143# become illegal. these are .Parent and 144# anything that starts with .Apple. 145# invisibledots -> don't do :hex translation for dot files. note: when 146# this option gets set, certain file names 147# become illegal. these are .Parent and 148# anything that starts with .Apple. also, dot 149# files created on the unix side are marked invisible. 150# limitsize -> limit disk size reporting to 2GB. this is 151# here for older macintoshes using newer 152# appleshare clients. yucko. 153# nofileid -> don't advertise createfileid, resolveid, deleteid 154# calls 155# root_preexec_close -> a non-zero return code from root_preexec close the 156# volume being mounted. 157# preexec_close -> a non-zero return code from preexec close the 158# volume being mounted. 159# nostat -> don't stat volume path when enumerating volumes list 160# upriv -> use unix privilege. 161# illegalseq -> encode illegal sequence in filename asis, 162# ex "\217-", which is not a valid SHIFT-JIS char, 163# is encoded as U\217 - 164# nocnidcache -> Don't store and read CNID to/from AppleDouble file. 165# This should not be used as it also prevents a CNID 166# database rebuild with `dbd`! 167# caseinsensitive -> The underlying FS is case insensitive (only 168# test with JFS in OS2 mode) 169# dropbox -> Allows a volume to be declared as being a "dropbox." 170# Note that netatalk must be compiled with dropkludge 171# support for this to function. Warning: This option 172# is deprecated and might not work as expected. 173# dropkludge -> same as "dropbox" 174# nodev -> always use 0 for device number, helps when the 175# device number is not constant across a reboot, 176# cluster, ... 177# 178 179# The line below sets some DEFAULT, starting with Netatalk 2.1. 180:DEFAULT: options:upriv,usedots 181 182# The "~" below indicates that Home directories are visible by default. 183# If you do not wish to have people accessing their Home directories, 184# please put a pound sign in front of the tilde or delete it. 185~ 186 187# End of File 188