首頁>技術>

name引數:這個是必須引數,指定要操作使用者的名稱

group引數:指定使用者所在的基本組

shell引數:指定使用者預設登陸shell

uid引數:指定使用者uid,一般不做設定

comment引數:用作使用者的註釋資訊,

password引數:用於設定使用者密碼 ,但是這個密碼不是明文的,而是加密後的

和/etc/shadow檔案中密碼欄位一樣

引數介紹就到這裡,下面將用例項講解各引數的用法

例1:建立名稱為test的使用者

[root@localhost ~]# ansible 192.168.146.129 -m user -a "name=test"

可以從返回引數看出建立了使用者test,uid是1000,groupid也是1000,家目錄是/home/test 使用的shell 是/bin/bash

如果test使用者已經存在了,則不做任何操作,如下:

[root@localhost ~]# ansible 192.168.146.129 -m user -a "name=test"

可以看到changed的值是false,說明沒有做任何改變。

[root@localhost ~]# ansible 192.168.146.129 -m user -a "name=test state=absent remove=yes"

例3:安裝apache要建立apache使用者,但是這個使用者是不需要登陸的,我們要如何做呢?這裡就要指定登陸shell了,而指定的shell值是nologin。意思是不允許apache這個使用者登陸

[root@localhost ~]# ansible 192.168.146.129 -m user -a "name=apache shell=nologin"

這樣就建立apache使用者了,而且無法用這個使用者登陸系統。因為無法登陸系統所以是沒有家目錄的。

如果指定apache使用者使用/bin/sh作為預設shell如下操作即可

[root@localhost ~]# ansible 192.168.146.129 -m user -a "name=apache shell=/bin/sh"

例4:剛才建立了test使用者,我需要做個說明,這是一個測試使用者,如下操作:

[root@localhost ~]# ansible 192.168.146.129 -m user -a "user=test comment=Thistestuser"

然後我們檢視一下遠端機器上的/etc/passwd檔案

[root@localhost ~]# ansible 192.168.146.129 -m shell -a "grep test /etc/passwd"

可以看到"Thistestuser"欄位

使用者建立好了,是時候給使用者添加個密碼了。這裡用到了password引數,前面做引數說明的時候講到了,這個密碼不是明文的。是加密的,因此我們要把密碼的明文經過加密處理才能使用。

比如:我想給test使用者設定密碼為123456,應該怎麼做呢?下面跟我一步一步的操作即可。

首先進入到python命令列介面。用python的crypt模組對字串進行加密,最後返回的字串就是我們要用到的,注意字串是用單引號引起來的,我們只要單引號裡面的字串

具體操作步驟如下:

[root@localhost ~]# pythonPython 2.7.5 (default, Jun 17 2014, 18:11:42)[GCC 4.8.2 20140120 (Red Hat 4.8.2-16)] on linux2Type "help", "copyright", "credits" or "license" for more information.>>> import crypt>>> crypt.crypt('123456')'$6$xXHy1LuASc7e9tbO$38vx7.ZvpllcavRxvQ1z1GMBwGx5C3eTR2H8Xofbiq8/hwaj8cvWfM6D63agNMWeL6vu2kQ2lszum0JBQRejD/'

加密後的密碼已經生成了,我們直接拿來用就可以了。

例5:給test使用者設定密碼為123456

ansible 192.168.146.129 -m user -a 'user=test password="$6$xXHy1LuASc7e9tbO$38vx7.ZvpllcavRxvQ1z1GMBwGx5C3eTR2H8Xofbiq8/hwaj8cvWfM6D63agNMWeL6vu2kQ2lszum0JBQRejD/" '

這裡有個地方必須要注意的,執行的整條命令是單引號引起來的,密碼內容是雙引號引起來的。這樣做的原因是,加密後的密碼內容包含了一些特殊符號,必須要用雙引號引起來,避免產生歧義。

user模組常用的引數和引數值的使用已經講完了,接下來講解file模組

20
  • BSA-TRITC(10mg/ml) TRITC-BSA 牛血清白蛋白改性標記羅丹明
  • Optimism Rollup原理x詳解「以太坊L2方案」