diff options
-rwxr-xr-x | ezjail-admin | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/ezjail-admin b/ezjail-admin index 881953e..c6c12d6 100755 --- a/ezjail-admin +++ b/ezjail-admin | |||
@@ -184,7 +184,7 @@ case "$1" in | |||
184 | ######################## ezjail-admin CREATE ######################## | 184 | ######################## ezjail-admin CREATE ######################## |
185 | create) | 185 | create) |
186 | # Clean variables, prevent polution | 186 | # Clean variables, prevent polution |
187 | unset ezjail_rootdir ezjail_flavour ezjail_softlink ezjail_image ezjail_imagetype ezjail_imageparams ezjail_imagesize ezjail_device ezjail_config ezjail_attachparams ezjail_exists ezjail_attachblocking ezjail_forceblocking ezjail_sourcedevice | 187 | unset ezjail_rootdir ezjail_flavour ezjail_softlink ezjail_image ezjail_imagetype ezjail_imageparams ezjail_imagesize ezjail_device ezjail_config ezjail_attachparams ezjail_exists ezjail_attachblocking ezjail_forceblocking ezjail_sourcedevice ezjail_rootdirempty |
188 | shift; while getopts :f:r:s:xbic:C: arg; do case ${arg} in | 188 | shift; while getopts :f:r:s:xbic:C: arg; do case ${arg} in |
189 | x) ezjail_exists="YES";; | 189 | x) ezjail_exists="YES";; |
190 | r) ezjail_rootdir="${OPTARG}";; | 190 | r) ezjail_rootdir="${OPTARG}";; |
@@ -235,7 +235,7 @@ create) | |||
235 | # This scenario really will only lead to real troubles in the 'fulljail' | 235 | # This scenario really will only lead to real troubles in the 'fulljail' |
236 | # case, but I should still explain this to the user and not claim that | 236 | # case, but I should still explain this to the user and not claim that |
237 | # "an ezjail would already exist" | 237 | # "an ezjail would already exist" |
238 | case ${ezjail_hostname} in basejail|newjail|fulljail|flavous|ezjailtemp) exerr "Error: ezjail needs the ${ezjail_hostname} directory for its own administrative purposes. Please rename the ezjail.";; esac | 238 | case ${ezjail_hostname} in basejail|newjail|fulljail|flavours|ezjailtemp) exerr "Error: ezjail needs the ${ezjail_hostname} directory for its own administrative purposes. Please rename the ezjail.";; esac |
239 | 239 | ||
240 | # jail names may lead to identical configs, eg. foo.bar.com == foo-bar.com | 240 | # jail names may lead to identical configs, eg. foo.bar.com == foo-bar.com |
241 | # so check, whether we might be running into problems | 241 | # so check, whether we might be running into problems |
@@ -246,8 +246,10 @@ create) | |||
246 | [ "${ezjail_rootdir%%[!/]*}" ] || ezjail_rootdir=${ezjail_jaildir}/${ezjail_rootdir} | 246 | [ "${ezjail_rootdir%%[!/]*}" ] || ezjail_rootdir=${ezjail_jaildir}/${ezjail_rootdir} |
247 | 247 | ||
248 | # if a directory at the specified jail root already exists, refuse to | 248 | # if a directory at the specified jail root already exists, refuse to |
249 | # install | 249 | # install. Empty root dirs are considered okay, sometimes they are |
250 | [ -e ${ezjail_rootdir} -a -z "${ezjail_exists}" ] && exerr "Error: the specified jail root ${ezjail_rootdir} alread exists." | 250 | # mount points to be filled by ezjail. |
251 | [ -d ${ezjail_rootdir} ] && [ "`ls -A ${ezjail_rootdir} | wc -l`" -eq 0 ] && ezjail_rootdirempty="YES" | ||
252 | [ -e ${ezjail_rootdir} -a -z "${ezjail_rootdirempty}" -a -z "${ezjail_exists}" ] && exerr "Error: the specified jail root ${ezjail_rootdir} already exists." | ||
251 | 253 | ||
252 | # if jail root specified on command line does not lie within our jail | 254 | # if jail root specified on command line does not lie within our jail |
253 | # directory, we need to create a softlink | 255 | # directory, we need to create a softlink |