# filesystem permissions

**URL:** <https://forums.percona.com/t/filesystem-permissions/2211>\
**Category:** Percona XtraBackup\
**Created:** [February 26, 2012, 3:02pm UTC](https://forums.percona.com/t/filesystem-permissions/2211 "2012-02-26T15:02:46Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![rbro](https://avatars.discourse-cdn.com/v4/letter/r/8e8cbc/32.png) [@rbro](https://forums.percona.com/u/rbro)\
**Post date:** [February 26, 2012, 3:02pm UTC](https://forums.percona.com/t/filesystem-permissions/2211/1 "2012-02-26T15:02:46Z")

</div>

I have a couple questions regarding filesystem permissions for the user running innobackupex/xtrabackup. I see the manual states:

“Once connected to the server, in order to perform a backup you will need READ, WRITE and EXECUTE permissions at a filesystem level in the server’s datadir.”

1. What is the recommended user to run innobackupex/xtrabackup via a cronjob? Is it recommended to run it under root or under a non-privileged user that has read-only access to the datadir? I prefer to run backup jobs under a non-root account if possible, but wanted to make sure it won’t cause any issues. The files in my datadir are owned by mysql:mysql and are chmod 600 or 660, so I would have to alter that to allow a non-root user to access them. Just curious how others set this up.

2. Does the user need write and execute privileges to the datadir or can it be read-only? In other words, does a backup write anything to the datadir?

Thanks for your help.

Ryan

---

<div class="post-metadata">

**Author:** ![xaprb](https://avatars.discourse-cdn.com/v4/letter/x/49beb7/32.png) [@xaprb](https://forums.percona.com/u/xaprb)\
**Post date:** [February 27, 2012, 3:15pm UTC](https://forums.percona.com/t/filesystem-permissions/2211/2 "2012-02-27T15:15:07Z")

</div>

It used to be (although I’m not sure that it still is this way) that even though xtrabackup only reads from the files, it opens them in read-write mode because that’s done via InnoDB, which as a database naturally needs to write the files.

If that is the case, you could consider running the tool as the mysql user.
