2016-12-23 8 views
4

Ich habe mich entschieden, einige Playbooks umzuformieren und versuchen Sie den neuen timezone module.Ansible Timezone-Modul schlägt fehl (verschiedene Gründe auf verschiedenen Betriebssystemen)

Die Aufgabe, die ich versuche, eine wortgetreue Kopie des in der manuellen Seite gegeben:

- name: set timezone to Asia/Tokyo 
    timezone: 
    name: Asia/Tokyo 

Es ist auf jedem System versagt habe ich versucht. Ergebnisse für Vagrant Maschinen:

  • Auf Debian 8 (debian/jessie64):

    TASK [set timezone to Asia/Tokyo] **********************************************
    fatal: [debian]: FAILED! => {"changed": false, "cmd": "/usr/bin/timedatectl set-timezone Asia/Tokyo", "failed": true, "msg": "Failed to set time zone: The name org.freedesktop.PolicyKit1 was not provided by any .service files", "rc": 1, "stderr": "Failed to set time zone: The name org.freedesktop.PolicyKit1 was not provided by any .service files\n", "stdout": "", "stdout_lines": []}

  • Auf CentOS 7 (centos/7) - unterscheidet sich von Debian:

    TASK [set timezone to Asia/Tokyo] **********************************************
    fatal: [centos]: FAILED! => {"changed": false, "cmd": "/usr/bin/timedatectl set-timezone Asia/Tokyo", "failed": true, "msg": "Failed to set time zone: Interactive authentication required.", "rc": 1, "stderr": "Failed to set time zone: Interactive authentication required.\n", "stdout": "", "stdout_lines": []}

  • auf Ubuntu 16.04 (ubuntu/xenial64) - wie CentOS, anders als Debian:

    TASK [set timezone to Asia/Tokyo] **********************************************
    fatal: [ubuntu]: FAILED! => {"changed": false, "cmd": "/usr/bin/timedatectl set-timezone Asia/Tokyo", "failed": true, "msg": "Failed to set time zone: Interactive authentication required.", "rc": 1, "stderr": "Failed to set time zone: Interactive authentication required.\n", "stdout": "", "stdout_lines": []}

Fehle ich etwas? Ist eine Abhängigkeit erforderlich?

+0

'timedatectl' benötigt' sudo' Privilegien. Können Sie 'timezone' mit' werden: ja' und 'werden_method: sudo' versuchen? – helloV

+0

Das war's! Ich wurde durch die Nachricht auf Debian aus dem Gleichgewicht gebracht und dann den Unterschied zwischen Betriebssystemen, anstatt zu interpretieren, was die Nachricht sagte. Vielen Dank. – techraf

Antwort

3

timedatectl benötigt sudo Privilegien.

- name: set timezone to Asia/Tokyo 
    timezone: 
    name: Asia/Tokyo 
    become: yes 
    become_method: sudo 
+0

Wissen Sie zufällig, was ist dieses selbst-fragen-für-Passwort-Privileg-erhöhende System von "timedatectl"? Derjenige, der die Nachricht "Authentifizierung ist erforderlich, um die Systemzeitzone einzustellen."? Aber für Debian fehlgeschlagen. "* org.freedesktop.PolicyKit1.Authority Interface *" Ich sehe das zum ersten Mal. – techraf

+0

@techraf Ich habe gerade die Synonymanfrage hochgestuft. – helloV

+0

Danke! Nur eine Stimme mehr und das Chaos ist vorbei ;-) – techraf

1

Überprüfen Sie, ob dbus-Paket installiert ist (getestet auf Ubuntu):

dpkg -l dbus 

und installieren Sie es mit:

apt-get install -y dbus 

sonst erhalten Sie einen Fehler:

# /usr/bin/timedatectl 
Failed to create bus connection: No such file or directory 
Verwandte Themen