• salt-call报错OSError: [Errno 13] Permission denied: '/root/.gvfs'


    今天通过salt获取磁盘信息,并且通过return到mysql,但是发现表里面少了点minion的信息,然后经查看,都是一些新的ibm x3650 m4的机器

    然后在saltstack的源码找到了status.diskusage的实现,先看看是怎么实现的磁盘使用量吧,下面是源码

    ret = {}
    for path in selected:
        fsstats = os.statvfs(path)
        blksz = fsstats.f_bsize
        available = fsstats.f_bavail * blksz
        total = fsstats.f_blocks * blksz
        ret[path] = {"available": available, "total": total}
    return ret
    

    先把路径打印出来看看都是什么

    在salt/modules/status.py文件第454行添加

    print path
    salt-call -l debug status.diskusage
    

    可以看到path遍历了几个目录,以下是目录

    /export
    /proc/sys/fs/binfmt_misc
    /proc
    /home
    /dev
    /swap
    /boot/efi
    /
    /selinux
    /proc/bus/usb
    /net
    /dev/pts
    /misc
    /root/.gvfs
    

    发现了/root/.gvfs,由于salt是普通用户启动的,不能读取/root/目录,所以先看看这个是干什么的

    [root@XXXXXXXXX admin]# mount |grep gvfs
    gvfs-fuse-daemon on /root/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev)
    [root@BJ-CQU-KFPT2-I192 admin]# ps aux|grep /root/.gvfs|grep -v grep
    root      8810  0.0  0.0 274812  2796 ?        Ssl  Apr24   0:01 /usr/libexec//gvfs-fuse-daemon /root/.gvfs
    [root@XXXXXXXXX admin]# 
    [root@xxxxxxxxxx admin]# ls -al /root/.gvfs/
    总用量 4
    dr-x------.  2 root root    0 4月  24 18:33 .
    dr-xr-x---. 26 root root 4096 5月  26 15:51 ..
    

    目录是空的,但是也被挂载了
    查看资料之后发现chinaunix有解释,下面是连接

    http://bbs.chinaunix.net/thread-2004280-1-1.html

    卸载之后再次执行命令,OK!

  • 相关阅读:
    HDU 4819 Mosaic --二维线段树(树套树)
    Codeforces Round #274 Div.1 C Riding in a Lift --DP
    ZOJ 3829 Known Notation --贪心+找规律
    JAVA成员变量和静态变量的区别
    spring注解
    js中double类型的数据加减的时候出错
    js在页面间传值的方法记录
    将表中数据转换成java entity实例
    最近都写APP的接口,有苦说不出啊.
    写于2018年第一场雪----记我的第一年工作
  • 原文地址:https://www.cnblogs.com/lihuiyw/p/4816782.html
Copyright © 2020-2023  润新知