当前位置:  开发笔记 > 前端 > 正文

检查目录是否是挂载点?

如何解决《检查目录是否是挂载点?》经验,为你挑选了1个好方法。

在执行其他任务之前,我需要检查目录是否是挂载点.

我一直在查看文档,它似乎只能创建/销毁挂载点,而不仅仅是检查是否存在.从下面的链接.

http://docs.ansible.com/ansible/mount_module.html

我想知道是否有任何方法可以检查它是否与ansible存在,或者它是否必须是从ansible调用的其他语言.



1> Bernardo Val..:

我试过两个mountstat模块.两者都不符合您的要求.

我设法只使用OS命令.我在Redhat,Debian和SLES家族上进行了测试.

vars:
    - myvolume: /backup

tasks:

   - command: mountpoint -q {{myvolume}}
     register: volume_stat
     failed_when: False
     changed_when: False

    - debug:
       msg: "This is a mountpoint!"
      when: volume_stat.rc == 0

问题是,mountpoint如果路径不是挂载点而命令生成stderr,那么你必须使用ignore_errors,这不是一个好的解决方案.

编辑1:@udondan提到,failed_when是一种更好的方法,ignore_errors因为它不输出错误.

如果您需要在路径不是挂载点时停止播放,则可能是您想要的.

我希望有人找到比这更好的解决方案.

注意:有些平台没有mountpoint命令,据我所知Darwin(Mac OSX)和SunOS(Oracle Solaris),如果您需要在这些系统上工作,您需要找到另一种解决方法.

推荐阅读
手机用户2502852037
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有