Ansible의 "Unarchive" 모듈은 추출된 파일 및 폴더의 소유자와 그룹을 변경하지 않습니다.

Ansible의 "Unarchive" 모듈은 추출된 파일 및 폴더의 소유자와 그룹을 변경하지 않습니다.

원격 서버의 파일과 폴더를 추출하기 위해 이 글을 썼습니다. 파일을 추출하지만 추출된 파일의 소유자와 그룹은 변경하지 않습니다.

---                                                      
- name: Uncompressing the Tomcat source                  
  become: true                                           
  become_user: someuser                                      
  unarchive:                                             
    src: /rmtdir/apache-tomcat-{{ VERSION }}.tar.gz         
    dest: /rmtdir/                                          
    owner: someuser                                           
    group: somegroup                                           
    mode: 0770                                           
    remote_src: yes                                      
  register: _extract                                     
                                                         
- name:                                                  
  debug:                                                 
    var: _extract

분명히 추출된 파일의 소유자와 그룹을 변경하고 싶습니다. 어떻게 하면 이렇게 만들 수 있나요?

답변1

후속 조치curlAnsible: 명령이 실패했습니다.다음 테스트를 실행했습니다.

---
- hosts: test
  become: true
  gather_facts: false

  vars:

    VERSION: "9.0.65"

  tasks:

  - name: Uncompressing the Tomcat source
    unarchive:
      src: https://dlcdn.apache.org/tomcat/tomcat-9/v{{ VERSION }}/bin/apache-tomcat-{{ VERSION }}.tar.gz
      dest: "/home/{{ ansible_user }}/tomcat"
      owner: "{{ ansible_user }}"
      group: "ansible_users"
      mode: 0770
      extra_opts: [--strip-components=1]
      remote_src: true
    environment:
      http_proxy: 'localhost:3128'
      https_proxy: 'localhost:3128'
    register: _extract

  - name: Show result
    debug:
      var: _extract

예상대로 작동하는 것을 발견했습니다.

파일을 추출하지만 추출된 파일의 소유자와 그룹은 변경하지 않습니다.

추출된 파일의 소유자와 그룹이 정상적으로 변경되었기 때문에 위의 문제를 생성할 수 없었습니다.

관련 정보