2017-10-10 4 views
0

Hier ist, was genau ich versuche zu erreichen. Ich muss ein Paket zusammen mit Abhängigkeiten installieren. Ich versuche das Telnet-Paket zu installieren. Dafür müssen zwei Pakete installiert werden, die Telnet und Telnet-Server sind. Bei einigen Servern ist Telnet bereits installiert, aber nicht Telnet-Server. Wenn das Telnet-Paket bereits installiert ist, installiert es den Telnet-Server nicht, wenn ich in der Eingabeaufforderung telnet- * übergebe. Unten ist die Playbook-AusführungSo installieren Sie Sub-Pakete durch yum

[[email protected] ansible]$ cat prompt.yml 
    --- # Install the package which is provided through command line 
    - hosts: target 
    user: test 
    become: yes 
    connection: ssh 
    gather_facts: no 
    vars_prompt: 
    - name: pkgtoinstall 
    prompt: which package need to install? 
    private: no 
    tasks: 
    - name: Install the provided package 
    yum: pkg={{ pkgtoinstall }} state=latest 

[[email protected] ansible]$ 

Before Installation -: 

[[email protected] opt]$ rpm -qa | grep telnet 
[[email protected] opt]$ 

[[email protected] ansible]$ ansible-playbook prompt.yml 
which package need to install?: telnet* 

PLAY [target] 
*************************************************************************************************************************************************************** 

TASK [Install the provided package] ***************************************************************************************************************************************** 
changed: [192.168.56.102] 

PLAY RECAP ****************************************************************************************************************************************************************** 
192.168.56.102    : ok=1 changed=1 unreachable=0 failed=0 

[[email protected] ansible]$ 

After Installation -: 

[[email protected] opt]$ rpm -qa | grep telnet 
telnet-0.17-64.el7.x86_64 
telnet-server-0.17-64.el7.x86_64 
[[email protected] opt]$ 

Now i have removed telnet-server manually and tried to install by giving telnet-*. It is not getting installed. 

[[email protected] opt]$ sudo yum remove telnet-server 
Loaded plugins: fastestmirror, langpacks 
Resolving Dependencies 
--> Running transaction check 
---> Package telnet-server.x86_64 1:0.17-64.el7 will be erased 
--> Finished Dependency Resolution 

Dependencies Resolved 

============================================================================================================================================================================= 
Package          Arch         Version          Repository       Size 
============================================================================================================================================================================= 
Removing: 
telnet-server        x86_64        1:0.17-64.el7         @base         55 k 

Transaction Summary 
============================================================================================================================================================================= 
Remove 1 Package 

Installed size: 55 k 
Is this ok [y/N]: y 
Downloading packages: 
Running transaction check 
Running transaction test 
Transaction test succeeded 
Running transaction 
    Erasing : 1:telnet-server-0.17-64.el7.x86_64                              1/1 
    Verifying : 1:telnet-server-0.17-64.el7.x86_64                              1/1 

Removed: 
    telnet-server.x86_64 1:0.17-64.el7 

Complete! 
[[email protected] opt]$ rpm -qa | grep telnet 
telnet-0.17-64.el7.x86_64 
[[email protected] opt]$ 

[[email protected] ansible]$ ansible-playbook prompt.yml 
which package need to install?: telnet* 

PLAY [target] *************************************************************************************************************************************************************** 

TASK [Install the provided package] ***************************************************************************************************************************************** 
ok: [192.168.56.102] 

PLAY RECAP ****************************************************************************************************************************************************************** 
192.168.56.102    : ok=1 changed=0 unreachable=0 failed=0 

[[email protected] opt]$ rpm -qa | grep telnet 
telnet-0.17-64.el7.x86_64 
[[email protected] opt]$ 

Antwort

0

Wahrscheinlich nicht die Antwort, die Sie suchen, aber ich würde die 2 Pakete explizit installieren. Die Verwendung von Globs für Paketinstallationen hat das Potenzial, etwas zu installieren, das Sie nicht brauchen oder brauchen.

- name: Install the provided package 
    yum: 
    pkg: "{{ item }}" 
    state: latest 
    with_items: 
    - telnet 
    - telnet-server 
Verwandte Themen