SaltStack常用模块之file和mysql、lvs

SaltStack常用模块之file和mysql、lvs

file.access

检查指定路径是否存在

[root@master ~]# salt '*' cmd.run 'ls /usr/src'
minion:
    123
    debug
    kernels
[root@master ~]# salt '*' file.access /usr/src/hzy f
minion:
    True

检查指定文件的权限信息

[root@master ~]# salt '*' cmd.run 'ls -l /usr/src/'
minion:
    total 4
    -rwxr-xr-x. 1 root root 15 Jul  6 19:01 123
    drwxr-xr-x. 2 root root  6 May 19  2020 debug
    -rw-r--r--. 1 root root  0 Jul  7 17:20 hzy
    drwxr-xr-x. 2 root root  6 May 19  2020 kernels
[root@master ~]# salt '*' file.access /usr/src/hzy r
minion:
    True
[root@master ~]# salt '*' file.access /usr/src/hzy w
minion:
    True
[root@master ~]# salt '*' file.access /usr/src/hzy x
minion:
[root@minion src]# chmod +x hzy
[root@master ~]# salt '*' file.access /usr/src/hzy x
minion:
    True
file.append

往一个文件里追加内容,若此文件不存在则会报异常

[root@minion ~]# touch hzy
[root@minion ~]# ls
anaconda-ks.cfg  hzy
[root@master ~]# salt '*' cmd.run 'ls -l /root/hzy'
minion:
    -rw-r--r--. 1 root root 0 Jul  7 17:53 /root/hzy
[root@master ~]# salt '*' file.append /root/hzy "h" "z" "y"
minion:
    Wrote 3 lines to "/root/hzy"
[root@master ~]# salt '*' cmd.run 'ls -l /root/hzy'
minion:
    -rw-r--r--. 1 root root 6 Jul  7 17:53 /root/hzy
[root@master ~]# salt '*' cmd.run 'cat /root/hzy'
minion:
    h
    z
    y

file.basename

获取指定路径的基名

[root@master ~]# salt '*' file.basename '/root/zabbix/abc'
minion:
    abc

file.dirname

获取指定路径的目录名

[root@master ~]# salt '*' file.dirname '/root/zabbix/abc'
minion:
    /root/zabbix
file.check_hash

检查指定的文件与hash字符串是否匹配,匹配则返回 True 否则返回 False

[root@master ~]# salt '*' cmd.run 'md5sum /etc/passwd'
minion:
    76f8f3b0a4c7df4444400d2ec7de51bb  /etc/passwd
[root@master ~]# salt '*' file.check_hash /etc/passwd 76f8f3b0a4c7df4444400d2ec7de51bb
minion:
    True
file.chattr

修改指定文件的属性

属性对文件的意义对目录的意义
a只允许在这个文件之后追加数据, 不允许任何进程覆盖或截断这个文件只允许在这个目录下建立和修改文件, 而不允许删除任何文件
i不允许对这个文件进行任何的修改, 不能删除、更改、移动任何的进程只能修改目录之下的文件, 不允许建立和删除文件

给指定文件添加属性

//查看当前属性
[root@master ~]# salt '*' cmd.run 'lsattr /root'
minion:
    -------------------- /root/anaconda-ks.cfg
    -------------------- /root/hzy
//添加属性
[root@master ~]# salt '*' file.chattr /root/hzy operator=add attributes=ai
minion:
    True
[root@master ~]# salt '*' cmd.run 'lsattr /root'
minion:
    -------------------- /root/anaconda-ks.cfg
    ----ia-------------- /root/hzy

给指定文件去除属性

[root@master ~]# salt '*' file.chattr /root/hzy operator=remove attributes=i
minion:
    True
[root@master ~]# salt '*' cmd.run 'lsattr /root'
minion:
    -------------------- /root/anaconda-ks.cfg
    -----a-------------- /root/hzy
file.chown

设置指定文件的属主、属组信息

[root@master ~]# salt '*' cmd.run 'ls -l /root/'
minion:
    total 8
    -rw-------. 1 root root 1092 Jun 10 21:21 anaconda-ks.cfg
    -rw-r--r--. 1 root root    6 Jul  7 17:53 hzy
[root@master ~]# salt '*' file.chown /root/hzy root root
[root@master ~]# salt '*' cmd.run 'ls -l /root/'
minion:
    total 8
    -rw-------. 1 root root 1092 Jun 10 21:21 anaconda-ks.cfg
    -rw-r--r--. 1 root root    6 Jul  7 17:53 hzy

file.copy

在远程主机上复制文件或目录

拷贝文件

[root@master ~]# salt '*' cmd.run 'ls -l /root'
minion:
    total 8
    -rw-------. 1 root root 1092 Jun 10 21:21 anaconda-ks.cfg
    -rw-r--r--. 1 root root    6 Jul  7 17:53 hzy
[root@master ~]# salt '*' file.copy /root/hzy /root/hzytest
minion:
    True
[root@master ~]# salt '*' cmd.run 'ls -l /root'
minion:
    total 12
    -rw-------. 1 root root 1092 Jun 10 21:21 anaconda-ks.cfg
    -rw-r--r--. 1 root root    6 Jul  7 17:53 hzy
    -rw-r--r--. 1 root root    6 Jul  7 18:02 hzytest

覆盖并拷贝目录,将会覆盖同名文件或目录

[root@master ~]# salt '*' cmd.run 'ls -l /root'
minion:
    total 12
    -rw-------. 1 root root 1092 Jun 10 21:21 anaconda-ks.cfg
    -rw-r--r--. 1 root root    6 Jul  7 17:53 hzy
    -rw-r--r--. 1 root root    6 Jul  7 18:02 hzytest
[root@master ~]# salt '*' file.copy /tmp/ /root/abc recurse=True
minion:
    True
[root@master ~]# salt '*' cmd.run 'ls -l /root'
minion:
    total 12
    drwxrwxrwt. 3 root root   99 Jul  7 18:03 abc
    -rw-------. 1 root root 1092 Jun 10 21:21 anaconda-ks.cfg
    -rw-r--r--. 1 root root    6 Jul  7 17:53 hzy
    -rw-r--r--. 1 root root    6 Jul  7 18:02 hzytest
    

删除目标目录中同名的文件或目录并拷贝新内容至其中

[root@master ~]# salt '*' cmd.run 'ls -l /root/abc'
minion:
    total 0
    -rw-r--r--. 1 root root  0 Jul  7 18:03 new_cron
    drwxr-xr-x. 3 root root 17 Jul  7 18:03 systemd-private-3bbb38c897114828abfe7a1df9017308-nginx.service-3iW91h
//拷贝目录
[root@master ~]# salt '*' file.copy /opt/abc/ /root/abc/ recurse=True remove_existing=True
minion:
    True
[root@master ~]# salt '*' cmd.run 'ls -l /root/abc'
minion:
    total 0

file.ditectory_exists

判断指定目录是否存在,存在则返回 True ,否则返回 False

[root@master ~]# salt '*' cmd.run 'ls -l /opt'
minion:
    total 0
    drwxr-xr-x. 2 root root 6 Jul  7 18:06 abc
[root@master ~]# salt '*' file.directory_exists /opt/abc
minion:
    True
file.diskusage

递归计算指定路径的磁盘使用情况并以字节为单位返回

[root@master ~]# salt '*' cmd.run 'du -sb /opt'
minion:
    23	/opt
[root@master ~]# salt '*' file.diskusage /opt
minion:
    0
file.file_exists

判断指定文件是否存在

[root@master ~]# salt '*' cmd.run 'ls -l /root/'
minion:
    total 12
    drwxr-xr-x. 2 root root    6 Jul  7 18:06 abc
    -rw-------. 1 root root 1092 Jun 10 21:21 anaconda-ks.cfg
    -rw-r--r--. 1 root root    6 Jul  7 17:53 hzy
    -rw-r--r--. 1 root root    6 Jul  7 18:02 hzytest
[root@master ~]# salt '*' file.file_exists /root/hzy
minion:
    True
[root@master ~]# salt '*' file.file_exists /root/hzyhzy
minion:
    False

file.find

类似 find 命令并返回符合指定条件的路径列表

[root@master ~]# salt '*' file.find /etc/ name=minion
minion:
    - /etc/salt/minion
    - /etc/salt/pki/minion

file.get_gid

获取指定文件的gid

[root@master ~]# salt '*' cmd.run 'ls -l /root/hzy'
minion:
    -rw-r--r--. 1 root root 6 Jul  7 17:53 /root/hzy
[root@master ~]# salt '*' file.get_gid /root/hzy
minion:
    0

file.get_group

获取指定文件的组名

[root@master ~]# salt '*' cmd.run 'ls -l /root/hzy'
minion:
    -rw-r--r--. 1 root root 6 Jul  7 17:53 /root/hzy
[root@master ~]# salt '*' file.get_group /root/hzy
minion:
    root
file.get_hash

获取指定文件的hash值,该值通过 sha256 算法得来

[root@master ~]# salt '*' cmd.run 'sha256sum /root/hzy'
minion:
    2ca54ac4b5d0a45487aea401e19e11dba4a487f3f52b8ba0771a968f848f76e8  /root/hzy
[root@master ~]# salt '*' file.get_hash /root/hzy
minion:
    2ca54ac4b5d0a45487aea401e19e11dba4a487f3f52b8ba0771a968f848f76e8

file.get_mode

获取指定文件的权限,以数字方式显示

[root@master ~]# salt '*' cmd.run 'ls -l /root/hzy'
minion:
    -rw-r--r--. 1 root root 6 Jul  7 17:53 /root/hzy
[root@master ~]# salt '*' file.get_mode /root/hzy
minion:
    0644

file.get_selinux_context

获取指定文件的 SELINUX 上下文信息

[root@master ~]# salt '*' cmd.run 'ls -Z /root/hzy'
minion:
    unconfined_u:object_r:admin_home_t:s0 /root/hzy
[root@master ~]# salt '*' file.get_selinux_context /root/hzy
minion:
    unconfined_u:object_r:admin_home_t:s0
file.get_sum

按照指定的算法计算指定文件的特征码并显示,默认使用的sha256算法。
该函数可使用的算法参数有:

  • md5
  • sha1
  • sha224
  • sha256 (default)
  • sha384
  • sha512
[root@master ~]# salt '*' cmd.run 'sha256sum /root/hzy'
minion:
    2ca54ac4b5d0a45487aea401e19e11dba4a487f3f52b8ba0771a968f848f76e8  /root/hzy
[root@master ~]# salt '*' file.get_sum /root/hzy
minion:
    2ca54ac4b5d0a45487aea401e19e11dba4a487f3f52b8ba0771a968f848f76e8
[root@master ~]# salt '*' cmd.run 'md5sum /root/hzy'
minion:
    a2ce8184c44cc4444e193feaaef88015  /root/hzy
[root@master ~]# salt '*' file.get_sum /root/hzy md5
minion:
    a2ce8184c44cc4444e193feaaef88015
file.get_uid与file.get_user

获取指定文件的 uid 或 用户名

[root@master ~]# salt '*' cmd.run 'ls -l /root/hzy'
minion:
    -rw-r--r--. 1 root root 6 Jul  7 17:53 /root/hzy
[root@master ~]# salt '*' file.get_uid /root/hzy
minion:
    0
[root@master ~]# salt '*' file.get_user /root/hzy
minion:
    root

file.gid_to_group

将指定的 gid 转换为组名并显示

[root@master ~]# salt '*' file.gid_to_group 1000
minion:
    1000
[root@master ~]# salt '*' file.gid_to_group 0
minion:
    root
file.group_to_gid

将指定的组名转换为 gid 并显示

[root@master ~]# salt '*' file.group_to_gid root
minion:
    0
[root@master ~]# salt '*' file.group_to_gid tom
minion:
    650
file.grep

在指定文件中检索指定内容
该函数支持通配符,若在指定的路径中用通配符则必须用双引号引起来

[root@master ~]# salt '*' file.grep /etc/passwd nobody
minion:
    ----------
    pid:
        18221
    retcode:
        0
    stderr:
    stdout:
        nobody:x:65534:65534:Kernel Overflow User:/:/sbin/nologin
[root@master ~]# salt '*' file.grep /etc/sysconfig/network-scripts/ifcfg-ens33 ipaddr -- -i
minion:
    ----------
    pid:
        18231
    retcode:
        1
    stderr:
    stdout:
[root@master ~]# salt '*' file.grep /etc/sysconfig/network-scripts/ifcfg-ens33 ipaddr -- -i -B2
minion:
    ----------
    pid:
        18236
    retcode:
        1
    stderr:
    stdout:
[root@master ~]# salt '*' file.grep "/etc/sysconfig/network-scripts/*" ipaddr -- -i -l
minion:
    ----------
    pid:
        18246
    retcode:
        1
    stderr:
    stdout:
file.is_blkdev

判断指定的文件是否是块设备文件

[root@master ~]# salt '*' cmd.run 'ls -l /dev/sr0'
minion:
    brw-rw----. 1 root cdrom 11, 0 Jul  6 17:50 /dev/sr0
[root@master ~]# salt '*' file.is_blkdev /dev/sr0
minion:
    True
file.lsattr

检查并显示出指定文件的属性信息

[root@master ~]# salt '*' cmd.run 'lsattr /root/hzy'
minion:
    -----a-------------- /root/hzy
[root@master ~]# salt '*' cmd.run 'chattr +i /root/hzy'
minion:
[root@master ~]# salt '*' cmd.run 'lsattr /root/hzy'
minion:
    ----ia-------------- /root/hzy
[root@master ~]# salt '*' file.lsattr /root/hzy
minion:
    ----------
    /root/hzy:
        - i
        - a

file.mkdir

创建目录并设置属主、属组及权限

[root@master ~]# salt '*' cmd.run 'ls -l /root'
minion:
    total 12
    drwxr-xr-x. 2 root root    6 Jul  7 18:06 abc
    -rw-------. 1 root root 1092 Jun 10 21:21 anaconda-ks.cfg
    -rw-r--r--. 1 root root    6 Jul  7 17:53 hzy
    -rw-r--r--. 1 root root    6 Jul  7 18:02 hzytest
[root@master ~]# salt '*' file.mkdir /root/www
minion:
    True
[root@master ~]# salt '*' cmd.run 'ls -l /root'
minion:
    total 12
    drwxr-xr-x. 2 root root    6 Jul  7 18:06 abc
    -rw-------. 1 root root 1092 Jun 10 21:21 anaconda-ks.cfg
    -rw-r--r--. 1 root root    6 Jul  7 17:53 hzy
    -rw-r--r--. 1 root root    6 Jul  7 18:02 hzytest
    drwxr-xr-x. 2 root root    6 Jul  7 18:22 www
[root@master ~]# salt '*' file.mkdir /root/www tom tom 400
minion:
    True
[root@master ~]# salt '*' cmd.run 'ls -l /root/'
minion:
    total 12
    drwxr-xr-x. 2 root root    6 Jul  7 18:06 abc
    -rw-------. 1 root root 1092 Jun 10 21:21 anaconda-ks.cfg
    -rw-r--r--. 1 root root    6 Jul  7 17:53 hzy
    -rw-r--r--. 1 root root    6 Jul  7 18:02 hzytest
     dr--------. 2 tom  tom    6 Jul  7 18:22 www

file.move

移动或重命名

//重命名
[root@master ~]# salt '*' file.move /root/asd /root/asd2
minion:
    ----------
    comment:
        '/root/asd' moved to '/root/asd2'
    result:
        True
[root@master ~]# salt '*' cmd.run 'ls -l /root'
minion:
    total 20
    drwxr-xr-x. 2 root root    6 Jul  7 18:06 abc
    -rw-------. 1 root root 1092 Jun 10 21:21 anaconda-ks.cfg
    -rw-r--r--. 1 root root    0 Jul  7 18:24 asd2
    -rw-r--r--. 1 root root    6 Jul  7 17:53 b-hzy
    -rw-r--r--. 1 root root    6 Jul  7 17:53 hzy
    -rw-r--r--. 1 root root    6 Jul  7 17:53 hzy_2
    -rw-r--r--. 1 root root    6 Jul  7 18:02 hzytest
    drwxr-xr-x. 2 root root    6 Jul  7 18:22 www
//移动
[root@master ~]# salt '*' file.move /root/asd2 /opt/
minion:
    ----------
    comment:
        '/root/asd2' moved to '/opt/'
    result:
        True
[root@master ~]# salt '*' cmd.run 'ls -l /opt'
minion:
    total 0
    drwxr-xr-x. 2 root root 6 Jul  7 18:06 abc
    -rw-r--r--. 1 root root 0 Jul  7 18:24 asd2

file.prepend

把文本插入指定文件的开头

[root@master ~]# salt '*' file.prepend /root/hzy "ss"
[root@master ~]# salt '*' cmd.run 'cat /root/hzy'
minion:
	ss
    h
    z
    y

file.sed

修改文本文件的内容

[root@master ~]# salt '*' cmd.run 'cat /root/q'
minion:
    qwe
    asd
    zxc
[root@master ~]# salt '*' file.sed /root/q 'qwe' 'iop'
minion:
    ----------
    pid:
        18520
    retcode:
        0
    stderr:
    stdout:
[root@master ~]# salt '*' cmd.run 'cat /root/q'
minion:
    iop
    asd
    zxc
[root@master ~]# salt '*' file.sed /root/q 'zxc' 'vbn' flags=1
minion:
    ----------
    pid:
        18551
    retcode:
        0
    stderr:
    stdout:
[root@master ~]# salt '*' cmd.run 'cat /root/q'
minion:
    iop
    asd
    vbn

file.read

读取文件内容

[root@master ~]# salt '*' cmd.run 'cat /root/q'
minion:
    iop
    asd
    vbn
[root@master ~]# salt '*' file.read /root/q
minion:
    iop
    asd
    vbn
    

file.readdir

列出指定目录下的所有文件或目录,包括隐藏文件

[root@master ~]# salt '*' file.readdir /root
minion:
    - .
    - ..
    - .bash_logout
    - .bash_profile
    - .bashrc
    - .cshrc
    - .tcshrc
    - anaconda-ks.cfg
    - .bash_history
    - hzy
    - hzytest
    - abc
    - www
    - b-hzy
    - hzy_2
    - test.bak
    - test
    - q.bak
    - q

file.remove

删除指定的文件或目录,若给出的是目录,将递归删除

[root@master ~]# salt '*' cmd.run 'ls -l /root/'
minion:
    total 36
    drwxr-xr-x. 2 root root    6 Jul  7 18:06 abc
    -rw-------. 1 root root 1092 Jun 10 21:21 anaconda-ks.cfg
    -rw-r--r--. 1 root root    6 Jul  7 17:53 b-hzy
    -rw-r--r--. 1 root root    6 Jul  7 17:53 hzy
    -rw-r--r--. 1 root root    6 Jul  7 17:53 hzy_2
    -rw-r--r--. 1 root root    6 Jul  7 18:02 hzytest
    -rw-r--r--. 1 root root   13 Jul  7 18:39 q
    -rw-r--r--. 1 root root   13 Jul  7 18:39 q.bak
    -rw-r--r--. 1 root root   31 Jul  7 18:36 test
    -rw-r--r--. 1 root root   31 Jul  7 18:35 test.bak
    drwxr-xr-x. 2 root root    6 Jul  7 18:22 www
[root@master ~]# salt '*' file.remove /root/www
minion:
    True
[root@master ~]# salt '*' cmd.run 'ls -l /root/'
minion:
    total 36
    drwxr-xr-x. 2 root root    6 Jul  7 18:06 abc
    -rw-------. 1 root root 1092 Jun 10 21:21 anaconda-ks.cfg
    -rw-r--r--. 1 root root    6 Jul  7 17:53 b-hzy
    -rw-r--r--. 1 root root    6 Jul  7 17:53 hzy
    -rw-r--r--. 1 root root    6 Jul  7 17:53 hzy_2
    -rw-r--r--. 1 root root    6 Jul  7 18:02 hzytest
    -rw-r--r--. 1 root root   13 Jul  7 18:39 q
    -rw-r--r--. 1 root root   13 Jul  7 18:39 q.bak
    -rw-r--r--. 1 root root   31 Jul  7 18:36 test
    -rw-r--r--. 1 root root   31 Jul  7 18:35 test.bak

file.rename

重命名文件或目录

[root@master ~]# salt '*' file.rename /root/q /root/qw
minion:
    True
[root@master ~]# salt '*' cmd.run 'ls -l /root/'
minion:
    total 36
    drwxr-xr-x. 2 root root    6 Jul  7 18:06 abc
    -rw-------. 1 root root 1092 Jun 10 21:21 anaconda-ks.cfg
    -rw-r--r--. 1 root root    6 Jul  7 17:53 b-hzy
    -rw-r--r--. 1 root root    6 Jul  7 17:53 hzy
    -rw-r--r--. 1 root root    6 Jul  7 17:53 hzy_2
    -rw-r--r--. 1 root root    6 Jul  7 18:02 hzytest
    -rw-r--r--. 1 root root   13 Jul  7 18:39 q.bak
    -rw-r--r--. 1 root root   13 Jul  7 18:39 qw
    -rw-r--r--. 1 root root   31 Jul  7 18:36 test
    -rw-r--r--. 1 root root   31 Jul  7 18:35 test.bak
file.set_mode

给指定文件设置权限

[root@master ~]# salt '*' cmd.run 'ls -l /root'
minion:
    total 36
    drwxr-xr-x. 2 root root    6 Jul  7 18:06 abc
    -rw-------. 1 root root 1092 Jun 10 21:21 anaconda-ks.cfg
    -rw-r--r--. 1 root root    6 Jul  7 17:53 b-hzy
    -rw-r--r--. 1 root root    6 Jul  7 17:53 hzy
    -rw-r--r--. 1 root root    6 Jul  7 17:53 hzy_2
    -rw-r--r--. 1 root root    6 Jul  7 18:02 hzytest
    -rw-r--r--. 1 root root   13 Jul  7 18:39 q.bak
    -rw-r--r--. 1 root root   13 Jul  7 18:39 qw
    -rw-r--r--. 1 root root   31 Jul  7 18:36 test
    -rw-r--r--. 1 root root   31 Jul  7 18:35 test.bak
[root@master ~]# salt '*' file.set_mode /root/qw 0400
minion:
    0400

file.symlink

给指定的文件创建软链接

[root@master ~]# salt '*' cmd.run 'ls -l /root/'
minion:
    total 36
    drwxr-xr-x. 2 root root    6 Jul  7 18:06 abc
    -rw-------. 1 root root 1092 Jun 10 21:21 anaconda-ks.cfg
    -rw-r--r--. 1 root root    6 Jul  7 17:53 b-hzy
    -rw-r--r--. 1 root root    6 Jul  7 17:53 hzy
    -rw-r--r--. 1 root root    6 Jul  7 17:53 hzy_2
    -rw-r--r--. 1 root root    6 Jul  7 18:02 hzytest
    -rw-r--r--. 1 root root   13 Jul  7 18:39 q.bak
    -r--------. 1 root root   13 Jul  7 18:39 qw
    -rw-r--r--. 1 root root   31 Jul  7 18:36 test
    -rw-r--r--. 1 root root   31 Jul  7 18:35 test.bak
[root@master ~]# salt '*' file.symlink /root/qw /opt/qwa
minion:
    True
[root@master ~]# salt '*' cmd.run 'ls -l /root;ls -l /opt/'
minion:
    total 36
    drwxr-xr-x. 2 root root    6 Jul  7 18:06 abc
    -rw-------. 1 root root 1092 Jun 10 21:21 anaconda-ks.cfg
    -rw-r--r--. 1 root root    6 Jul  7 17:53 b-hzy
    -rw-r--r--. 1 root root    6 Jul  7 17:53 hzy
    -rw-r--r--. 1 root root    6 Jul  7 17:53 hzy_2
    -rw-r--r--. 1 root root    6 Jul  7 18:02 hzytest
    -rw-r--r--. 1 root root   13 Jul  7 18:39 q.bak
    -r--------. 1 root root   13 Jul  7 18:39 qw
    -rw-r--r--. 1 root root   31 Jul  7 18:36 test
    -rw-r--r--. 1 root root   31 Jul  7 18:35 test.bak
    total 0
    drwxr-xr-x. 2 root root 6 Jul  7 18:06 abc
    -rw-r--r--. 1 root root 0 Jul  7 18:24 asd2
    lrwxrwxrwx. 1 root root 8 Jul  7 18:44 qwa -> /root/qw

file.touch

创建空文件或更新时间戳

[root@master ~]# salt '*' file.touch /opt/cc
minion:
    True
[root@master ~]# salt '*' file.touch /opt/aa
minion:
    True
[root@master ~]# salt '*' cmd.run 'ls -l /opt'
minion:
    total 0
    -rw-r--r--. 1 root root 0 Jul  7 18:45 aa
    drwxr-xr-x. 2 root root 6 Jul  7 18:06 abc
    -rw-r--r--. 1 root root 0 Jul  7 18:24 asd2
    -rw-r--r--. 1 root root 0 Jul  7 18:45 cc
    lrwxrwxrwx. 1 root root 8 Jul  7 18:44 qwa -> /root/qw

file.uid_to_user

将指定的 uid 转换成用户名显示出来

[root@master ~]# salt '*' file.uid_to_user 0
minion:
    root
[root@master ~]# salt '*' file.uid_to_user 1000
minion:
    1000
[root@master ~]# salt '*' file.uid_to_user 650
minion:
    tom

file.user_to_uid

将指定的用户转换成 uid 并显示出来

[root@master ~]# salt '*' file.user_to_uid tom
minion:
    650
[root@master ~]# salt '*' file.user_to_uid root
minion:
    0
file.write

往一个指定的文件里覆盖写入指定内容

[root@master ~]# salt '*' cmd.run 'cat /root/qw'
minion:
    iop
    asd
    vbn
[root@master ~]# salt '*' file.write /root/qw "d" "f" "g"
minion:
    Wrote 3 lines to "/root/qw"
[root@master ~]# salt '*' cmd.run 'cat /root/qw'
minion:
    d
    f
    g

为了连接到 MySQL,需要在 /etc/salt/minion 中的相关 minion 中进行一些配置。一些示例配置可能如下所示:

mysql.host: 'localhost'
mysql.port: 3306
mysql.user: 'root'
mysql.pass: ''
mysql.db: 'mysql'
mysql.unix_socket: '/tmp/mysql.sock'
mysql.charset: 'utf8'
[root@master ~]# salt '*' pkg.install mysql
minion:
    ----------
    mariadb-connector-c-config:
        ----------
        new:
            3.1.11-2.el8_3
        old:
    mysql:
        ----------
        new:
            8.0.21-1.module_el8.4.0+589+11e12751
        old:
    mysql-common:
        ----------
        new:
            8.0.21-1.module_el8.4.0+589+11e12751

失败

[root@master ~]# salt '*' mysql.alter_db testdb charset='latin1'
minion:
    'mysql' __virtual__ returned False: No python mysql client installed.
ERROR: Minions returned with non-zero exit code
[root@master ~]# vim /etc/salt/minion
[root@master ~]# salt '*' mysql.db_check dbname
minion:
    'mysql' __virtual__ returned False: No python mysql client installed.
ERROR: Minions returned with non-zero exit code

lvs也失败

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值