Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

/etc/sysconfig/zfs overlay option has changed #3782

Closed
tjikkun opened this issue Sep 15, 2015 · 7 comments
Closed

/etc/sysconfig/zfs overlay option has changed #3782

tjikkun opened this issue Sep 15, 2015 · 7 comments
Milestone

Comments

@tjikkun
Copy link

tjikkun commented Sep 15, 2015

In commit 2a34db1 the option that has to be set in /etc/sysconfig/zfs to allow overlay mounts has changed. It used to be: DO_OVERLAY_MOUNTS=1 but now it is OVERLAY_MOUNTS=yes
What makes it extra confusing is that the file now lists DO_OVERLAY_MOUNTS='no' by default.
Changing this to yes doesn't work, you actually need to change it to OVERLAY_MOUNTS='yes'

@FransUrbo
Copy link
Contributor

Oups! Don't know why I missed that. Fixed in #3559 (which also includes a whole bunch of other fixes as well) which I hope @behlendorf can have time to review quite soon.

FransUrbo added a commit to FransUrbo/zfs that referenced this issue Sep 17, 2015
  * Move code from the SYSV init and initramfs scripts that is better served
    in a common code base library (zfs-functions).
  * Dracut have the func emergency_shell() which does a little more.
    For those that don't have it, just run '/bin/sh -i -l'.
  * zfs_set_ifs() needs to be a global func. Use this in zfs_run_cmd()
    before we run the actual command.

Fixing some issues disovered.
  * Use "${VAR}" instead of "$VAR".
  * Add some comments to functions that didn't have any.
  * Create zfs_run_cmd() which records stderr, exit code etc.
  * Create check_boolean() to check if a user config option is
    set ('yes', 'Yes', 'YES' or any combination there of) OR '1'.
    Anything else is considered 'unset'.
  * Put the check for zfs debugging in check_zfs_debug(). Use this in
    zfs_action() to check if we should output the message we're called
    with.
  * Move code snippet that fetches and mounts recursive filesystems into
    the new recursive_mount_filesystems() function.
  * Minor fix/change to read_mtab():
    * Strip control characters (space - \040) from /proc/mounts GLOBALY,
      not just first occurrence.
    * Don't replace unprintable characters ([/-. ]) for use in the variable
      name with underscore. No need, just remove them all together.
  * Instead of using ZFS_CMD+zfs_action()+zfs_log_failure_msg() etc
    each and every time, use the more generic zfs_action() that does
    most of this for us.
    * Downside: Won't accept pools with spaces in them any more :(.
      Need to find a way to solve this (can't use arrays, because we're
      not running under bash!).
  * Apparently "var > 0" doesn't work. Use 'var -gt 0' instead. But that
    means that 'var' needs to be set.
  * (Re)set IFS in zfs_action() as first step so that command line options
    doesn't get clobbered.
  * Fix checking if pool is imported in import_pool().

Signed-off-by: Turbo Fredriksson <[email protected]>
Closes openzfs#3782
FransUrbo added a commit to FransUrbo/zfs that referenced this issue Sep 18, 2015
  * Move code from the SYSV init and initramfs scripts that is better served
    in a common code base library (zfs-functions).
  * Dracut have the func emergency_shell() which does a little more.
    For those that don't have it, just run '/bin/sh -i -l'.
  * zfs_set_ifs() needs to be a global func. Use this in zfs_run_cmd()
    before we run the actual command.

Fixing some issues disovered.
  * Use "${VAR}" instead of "$VAR".
  * Add some comments to functions that didn't have any.
  * Create zfs_run_cmd() which records stderr, exit code etc.
  * Create check_boolean() to check if a user config option is
    set ('yes', 'Yes', 'YES' or any combination there of) OR '1'.
    Anything else is considered 'unset'.
  * Put the check for zfs debugging in check_zfs_debug(). Use this in
    zfs_action() to check if we should output the message we're called
    with.
  * Move code snippet that fetches and mounts recursive filesystems into
    the new recursive_mount_filesystems() function.
  * Minor fix/change to read_mtab():
    * Strip control characters (space - \040) from /proc/mounts GLOBALY,
      not just first occurrence.
    * Don't replace unprintable characters ([/-. ]) for use in the variable
      name with underscore. No need, just remove them all together.
  * Instead of using ZFS_CMD+zfs_action()+zfs_log_failure_msg() etc
    each and every time, use the more generic zfs_action() that does
    most of this for us.
    * Downside: Won't accept pools with spaces in them any more :(.
      Need to find a way to solve this (can't use arrays, because we're
      not running under bash!).
  * Apparently "var > 0" doesn't work. Use 'var -gt 0' instead. But that
    means that 'var' needs to be set.
  * (Re)set IFS in zfs_action() as first step so that command line options
    doesn't get clobbered.
  * Fix checking if pool is imported in import_pool().
  * Remove "sort". Sometimes not available, and not really nessesary.

Signed-off-by: Turbo Fredriksson <[email protected]>
Closes openzfs#3782
Closes pkg-zfs/openzfs#166
FransUrbo added a commit to FransUrbo/zfs that referenced this issue Sep 18, 2015
  * Move code from the SYSV init and initramfs scripts that is better served
    in a common code base library (zfs-functions).
  * Dracut have the func emergency_shell() which does a little more.
    For those that don't have it, just run '/bin/sh -i -l'.
  * zfs_set_ifs() needs to be a global func. Use this in zfs_run_cmd()
    before we run the actual command.

Fixing some issues disovered.
  * Use "${VAR}" instead of "$VAR".
  * Add some comments to functions that didn't have any.
  * Create zfs_run_cmd() which records stderr, exit code etc.
  * Create check_boolean() to check if a user config option is
    set ('yes', 'Yes', 'YES' or any combination there of) OR '1'.
    Anything else is considered 'unset'.
  * Put the check for zfs debugging in check_zfs_debug(). Use this in
    zfs_action() to check if we should output the message we're called
    with.
  * Move code snippet that fetches and mounts recursive filesystems into
    the new recursive_mount_filesystems() function.
  * Minor fix/change to read_mtab():
    * Strip control characters (space - \040) from /proc/mounts GLOBALY,
      not just first occurrence.
    * Don't replace unprintable characters ([/-. ]) for use in the variable
      name with underscore. No need, just remove them all together.
  * Instead of using ZFS_CMD+zfs_action()+zfs_log_failure_msg() etc
    each and every time, use the more generic zfs_action() that does
    most of this for us.
    * Downside: Won't accept pools with spaces in them any more :(.
      Need to find a way to solve this (can't use arrays, because we're
      not running under bash!).
  * Apparently "var > 0" doesn't work. Use 'var -gt 0' instead. But that
    means that 'var' needs to be set.
  * (Re)set IFS in zfs_action() as first step so that command line options
    doesn't get clobbered.
  * Fix checking if pool is imported in import_pool().
  * Remove "sort". Sometimes not available, and not really nessesary.

Signed-off-by: Turbo Fredriksson <[email protected]>
Closes openzfs#3782
Closes zfsonlinux/pkg-zfs#166
FransUrbo added a commit to FransUrbo/zfs that referenced this issue Sep 18, 2015
  * Move code from the SYSV init and initramfs scripts that is better served
    in a common code base library (zfs-functions).
  * Dracut have the func emergency_shell() which does a little more.
    For those that don't have it, just run '/bin/sh -i -l'.
  * zfs_set_ifs() needs to be a global func. Use this in zfs_run_cmd()
    before we run the actual command.

Fixing some issues disovered.

  * Use "${VAR}" instead of "$VAR".
  * Add some comments to functions that didn't have any.
  * Create zfs_run_cmd() which records stderr, exit code etc.
  * Create check_boolean() to check if a user config option is
    set ('yes', 'Yes', 'YES' or any combination there of) OR '1'.
    Anything else is considered 'unset'.
  * Put the check for zfs debugging in check_zfs_debug(). Use this in
    zfs_action() to check if we should output the message we're called
    with.
  * Move code snippet that fetches and mounts recursive filesystems into
    the new recursive_mount_filesystems() function.
  * Minor fix/change to read_mtab():
    * Strip control characters (space - \040) from /proc/mounts GLOBALY,
      not just first occurrence.
    * Don't replace unprintable characters ([/-. ]) for use in the variable
      name with underscore. No need, just remove them all together.
  * Instead of using ZFS_CMD+zfs_action()+zfs_log_failure_msg() etc
    each and every time, use the more generic zfs_action() that does
    most of this for us.
    * Downside: Won't accept pools with spaces in them any more :(.
      Need to find a way to solve this (can't use arrays, because we're
      not running under bash!).
  * Apparently "var > 0" doesn't work. Use 'var -gt 0' instead. But that
    means that 'var' needs to be set.
  * (Re)set IFS in zfs_action() as first step so that command line options
    doesn't get clobbered.
  * Fix checking if pool is imported in import_pool().
  * Remove "sort". Sometimes not available, and not really nessesary.

Signed-off-by: Turbo Fredriksson <[email protected]>
Closes openzfs#3782
Closes zfsonlinux/pkg-zfs#166
FransUrbo added a commit to FransUrbo/zfs that referenced this issue Sep 19, 2015
  * Move code from the SYSV init and initramfs scripts that is better served
    in a common code base library (zfs-functions).
  * Dracut have the func emergency_shell() which does a little more.
    For those that don't have it, just run '/bin/sh -i -l'.
  * zfs_set_ifs() needs to be a global func. Use this in zfs_run_cmd()
    before we run the actual command.

Fixing some issues disovered.

  * Use "${VAR}" instead of "$VAR".
  * Add some comments to functions that didn't have any.
  * Create zfs_run_cmd() which records stderr, exit code etc.
  * Create check_boolean() to check if a user config option is
    set ('yes', 'Yes', 'YES' or any combination there of) OR '1'.
    Anything else is considered 'unset'.
  * Put the check for zfs debugging in check_zfs_debug(). Use this in
    zfs_action() to check if we should output the message we're called
    with.
  * Move code snippet that fetches and mounts recursive filesystems into
    the new recursive_mount_filesystems() function.
  * Minor fix/change to read_mtab():
    * Strip control characters (space - \040) from /proc/mounts GLOBALY,
      not just first occurrence.
    * Don't replace unprintable characters ([/-. ]) for use in the variable
      name with underscore. No need, just remove them all together.
  * Instead of using ZFS_CMD+zfs_action()+zfs_log_failure_msg() etc
    each and every time, use the more generic zfs_action() that does
    most of this for us.
    * Downside: Won't accept pools with spaces in them any more :(.
      Need to find a way to solve this (can't use arrays, because we're
      not running under bash!).
  * Apparently "var > 0" doesn't work. Use 'var -gt 0' instead. But that
    means that 'var' needs to be set.
  * (Re)set IFS in zfs_action() as first step so that command line options
    doesn't get clobbered.
  * Fix checking if pool is imported in import_pool().
  * Remove "sort". Sometimes not available, and not really nessesary.
  * Add ZPOOL_CACHE option (commented out) and documentation in the defaults
    file to indicate that the default in zfs-functions can be overwritten.
    * Needed when/if enforcing the use of a cache file is needed/wanted.
  * Remove some 'local' variables in do_import().

Signed-off-by: Turbo Fredriksson <[email protected]>
Closes openzfs#3782
Closes openzfs#3777
Closes zfsonlinux/pkg-zfs#166
FransUrbo added a commit to FransUrbo/zfs that referenced this issue Sep 19, 2015
  * Use "${VAR}" instead of "$VAR".
  * Create zfs_run_cmd() which records stderr, exit code etc.
  * Create check_boolean() to check if a user config option is
    set ('yes', 'Yes', 'YES' or any combination there of) OR '1'.
    Anything else is considered 'unset'.
  * Put the check for zfs debugging in check_zfs_debug(). Use this in
    zfs_action() to check if we should output the message we're called
    with.
  * Move code snippet that fetches and mounts recursive filesystems into
    the new recursive_mount_filesystems() function.
  * Minor fix/change to read_mtab():
    * Strip control characters (space - \040) from /proc/mounts GLOBALY,
      not just first occurrence.
    * Don't replace unprintable characters ([/-. ]) for use in the variable
      name with underscore. No need, just remove them all together.
  * Instead of using ZFS_CMD+zfs_action()+zfs_log_failure_msg() etc
    each and every time, use the more generic zfs_action() that does
    most of this for us.
    * Downside: Won't accept pools with spaces in them any more :(.
      Need to find a way to solve this (can't use arrays, because we're
      not running under bash!).
  * Apparently "var > 0" doesn't work. Use 'var -gt 0' instead. But that
    means that 'var' needs to be set.
  * (Re)set IFS in zfs_action() as first step so that command line options
    doesn't get clobbered.
  * Fix checking if pool is imported in import_pool().
  * Remove "sort". Sometimes not available, and not really nessesary.
  * Add ZPOOL_CACHE option (commented out) and documentation in the defaults
    file to indicate that the default in zfs-functions can be overwritten.
    * Needed when/if enforcing the use of a cache file is needed/wanted.
  * Remove some 'local' variables in do_import().

Signed-off-by: Turbo Fredriksson <[email protected]>
Closes openzfs#3782
Closes openzfs#3777
Closes zfsonlinux/pkg-zfs#166
FransUrbo added a commit to FransUrbo/zfs that referenced this issue Sep 19, 2015
  * Use "${VAR}" instead of "$VAR".
  * Create zfs_run_cmd() which records stderr, exit code etc.
  * Create check_boolean() to check if a user config option is
    set ('yes', 'Yes', 'YES' or any combination there of) OR '1'.
    Anything else is considered 'unset'.
  * Put the check for zfs debugging in check_zfs_debug(). Use this in
    zfs_action() to check if we should output the message we're called
    with.
  * Move code snippet that fetches and mounts recursive filesystems into
    the new recursive_mount_filesystems() function.
  * Minor fix/change to read_mtab():
    * Strip control characters (space - \040) from /proc/mounts GLOBALY,
      not just first occurrence.
    * Don't replace unprintable characters ([/-. ]) for use in the variable
      name with underscore. No need, just remove them all together.
  * Instead of using ZFS_CMD+zfs_action()+zfs_log_failure_msg() etc
    each and every time, use the more generic zfs_action() that does
    most of this for us.
    * Downside: Won't accept pools with spaces in them any more :(.
      Need to find a way to solve this (can't use arrays, because we're
      not running under bash!).
  * Apparently "var > 0" doesn't work. Use 'var -gt 0' instead. But that
    means that 'var' needs to be set.
  * (Re)set IFS in zfs_action() as first step so that command line options
    doesn't get clobbered.
  * Fix checking if pool is imported in import_pool().
  * Remove "sort". Sometimes not available, and not really nessesary.
  * Add ZPOOL_CACHE option (commented out) and documentation in the defaults
    file to indicate that the default in zfs-functions can be overwritten.
    * Needed when/if enforcing the use of a cache file is needed/wanted.
  * Remove some 'local' variables in do_import().
  * Add a ZFS_POOL_IMPORT to the defaults config.
    This is a semi colon separated list of pools to import ONLY.

Signed-off-by: Turbo Fredriksson <[email protected]>
Closes openzfs#3782
Closes openzfs#3777
Closes zfsonlinux/pkg-zfs#166
@behlendorf behlendorf added this to the 0.7.0 milestone Sep 21, 2015
@behlendorf
Copy link
Contributor

@FransUrbo since we're definitely going to have another 0.6.5.x point release let's try and cherry-pick some of the important smaller issues in that tag. I also want to try and get #3559 merged fairly early to master so we can shake it out as much as possible.

@FransUrbo
Copy link
Contributor

Ok, sounds good. Should I use my best judgement of what to cherry-pick (only [very] important stuff of course), or do you have a list?

Do you want those cherry-picks in separate commits, or as one?

Simplest might be that I use my best judgement, create one commit for each and do a PR with that and we can talk about what to keep and what not to… ?

@FransUrbo
Copy link
Contributor

Ok, created my PR for this. This also contains a couple of things that isn't really a big problem, but needs to be fixed sooner or later. I'm all for for leaving some of them for "Phase 2". Just let me know which ones we should keep for the point release (and if they're good), then I'll remove the ones we don't want/need in the point release and rebase into one commit.

Or you can do that in the merge, @behlendorf. I'll rebase "Phase 2" against whatever ends up in 'master' so we don't loose anything.

@behlendorf
Copy link
Contributor

@FransUrbo sounds good. I don't have a full list of issues so by all means let's go with your best judgement. I should be able to look over the proposed fixed tomorrow, I've been focusing on some of the other regressions which have been uncovered.

@FransUrbo
Copy link
Contributor

@behlendorf @nedbass This could be closed because of the merge of my cherry-pick PR. If @nedbass want to wait to close it until he's merged it into the point release, I'm fine with it. But I consider this issue closed...

@behlendorf
Copy link
Contributor

Yup, closing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants