chmod not working

112 views
Skip to first unread message

lpesc...@google.com

unread,
Jan 3, 2018, 5:51:00 PM1/3/18
to Ansible Project
HI, I have a play that SHOULD copy a file over from my server to a Windows box AND set permissions to 660 (notice I have tried both modes below separately):

  win_copy:

    src: /ansible/playbook/foo.foo

    dest: C:\mydir\foo.foo

    state: file

    mode: "ug+rw"

 OR   mode: 0660


The play runs w/o fail.

Unfortunately, though, when I stat the file I see:


$ stat foo.foo

  File: foo.foo

  Size: 17              Blocks: 1          IO Block: 65536  regular file

Device: d22da4adh/3526206637d   Inode: 562949953957599  Links: 1

Access: (0755/-rwxr-xr-x)  Uid: (  544/Administrators)   Gid: (197121/    None)

Access: 2018-01-03 14:17:25.989300300 -0800

Modify: 2018-01-03 14:17:20.822769500 -0800

Change: 2018-01-03 14:17:20.822769500 -0800

 Birth: 2018-01-03 14:17:25.989300300 -0800


Any idea WHY?





Matt Martz

unread,
Jan 3, 2018, 6:06:32 PM1/3/18
to ansible...@googlegroups.com
From what I can tell of the documentation, `win_copy` does not support a `mode` argument.  It's likely just being ignored, due to how the argument parsing in windows modules is currently handled.


--
You received this message because you are subscribed to the Google Groups "Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ansible-project+unsubscribe@googlegroups.com.
To post to this group, send email to ansible-project@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/05578888-f4c7-466e-8ddb-48448c4e47d5%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
Matt Martz
@sivel
sivel.net

Larry Pescatore

unread,
Jan 3, 2018, 6:11:49 PM1/3/18
to ansible...@googlegroups.com
Wow, that's something HOPEFULLY will be supported in the future. Thank you.

On Wed, Jan 3, 2018 at 3:05 PM, Matt Martz <ma...@sivel.net> wrote:
From what I can tell of the documentation, `win_copy` does not support a `mode` argument.  It's likely just being ignored, due to how the argument parsing in windows modules is currently handled.

--
You received this message because you are subscribed to a topic in the Google Groups "Ansible Project" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/ansible-project/5DfRcicYpuM/unsubscribe.
To unsubscribe from this group and all its topics, send an email to ansible-project+unsubscribe@googlegroups.com.

To post to this group, send email to ansible-project@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.



--
Thank you, 
Larry Pescatore
Lab Engineer, ERG Inc. @ Google

Jordan Borean

unread,
Jan 3, 2018, 10:05:42 PM1/3/18
to Ansible Project
Windows does not use the standard user/group/all permissions that are in use with most unix servers so the mode option most likely will never be supported. Windows uses ACLs https://msdn.microsoft.com/en-us/library/windows/desktop/aa374872%28v=vs.85%29.aspx?f=255&MSPPError=-2147217396 to set permissions on files and folders and these are a lot more complicated than the mode permissions.

While you can't do it in one task with win_copy, the win_acl http://docs.ansible.com/ansible/latest/win_acl_module.html module is designed to set ACL's on a file/folder to achieve a similar result.

Thanks

Jordan

lpesc...@google.com

unread,
Jan 5, 2018, 11:23:35 AM1/5/18
to Ansible Project
Thanks Jordan,
I am trying win_acl:

- name: chmod foo.foo

  win_acl:

    user: user

    path: C:\cygwin\etc\foo.foo

    type: allow

    state: present

    rights: Read,Write


BUT--

When I stat I still get:


Access: (0755/-rwxr-xr-x)  Uid: (  544/Administrators)   Gid: (197121/    None)


Please note I've tried using user: Administrators instead of the specific user. 


Any idea why it doesn't work?

Reply all
Reply to author
Forward
0 new messages