1. 程式人生 > 實用技巧 >Ansible命令模組(group模組 user模組 cron模組 )

Ansible命令模組(group模組 user模組 cron模組 )

1.group模組

1)幫助語法

EXAMPLES:
- name: Ensure group "somegroup" exists
  group:
    name: somegroup                #組名字
    state: 
        present                    #建立使用者組
        absent                    #刪除使用者組
    gid: 666                    #使用者組ID

2)例項

#建立使用者組
[root@m01 ~]# ansible web_group -m group -a '
name=www state=present gid=666' #刪除使用者組 [root@m01 ~]# ansible web_group -m group -a 'name=www state=absent'

2.user模組

1)幫助語法

- name: Add the user 'johnd' with a specific uid and a primary group of 'admin'
  user:
    name: johnd                            #使用者名稱
    comment: John Doe                    #使用者的註釋
    uid: 
1040 #使用者id group: admin #使用者的組 groups: admins,developers #指定附加組 shell: /bin/bash #指定登入指令碼 append: yes #新增附加組時使用 remove: yes #移除家目錄 generate_ssh_key: yes #是否生成金鑰對 ssh_key_bits:
2048 #祕鑰加密的位數 ssh_key_file: .ssh/id_rsa #祕鑰檔案 expires: 1422403387 #使用者的有效時間 state: present #新增使用者 absent #刪除使用者 create_home:yes/no #是否建立家目錄 password #給使用者新增密碼(單引號)

2)實踐

#1.建立使用者
[root@m01 ~]# ansible web_group -m user -a 'name=www uid=666 group=www shell=/sbin/nologin state=present'

#2.僅刪除使用者
[root@m01 ~]# ansible web_group -m user -a 'name=www state=absent'

#3.刪除使用者及使用者組
[root@m01 ~]# ansible web_group -m user -a 'name=www state=absent remove=yes'

#注意:
    1.如果使用者名稱字跟組名字相同,刪除使用者是會將組也刪除
    2.當組下面有多個使用者,刪除的與組同名的使用者也不會刪除組

3.cron模組

1)幫助語法

EXAMPLES:
- name: Ensure a job that runs at 2 and 5 exists. Creates an entry like "0 5,2 * * ls -alh > /d
  cron:
    name: "check dirs"                    #定時任務的註釋
    minute: "0"                            #分鐘
    hour: "5,2"                            #小時
    day: "2"                            #日
    month: "2"                            #月
    weekday: "2"                        #周
    job: "ls -alh > /dev/null"              #定時任務的內容
    state: 
        absent                            #刪除定時任務
        present                            #新增定時任務

2)實踐

#1.新增定時任務
[root@m01 ~]# ansible web01 -m cron -a 'name="時間同步" minute=*/10 job="/usr/sbin/ntpdate time1.aliyun.com &> /dev/null"'

#2.修改定時任務(不修改名字,只修改內容)
[root@m01 ~]# ansible web01 -m cron -a 'name="時間同步" job="/usr/sbin/ntpdate time1.aliyun.com &> /dev/null"'

#3.刪除定時任務(一定要用name引數)
[root@m01 ~]# ansible web01 -m cron -a 'name="時間同步" state=absent'

#4.註釋定時任務
[root@m01 ~]# ansible web01 -m cron -a 'name="時間同步" job="/usr/sbin/ntpdate time1.aliyun.com &> /dev/null" disabled=yes'