Только пользователь ОС PostgreSQL (postgres
) и его группа могут получить доступ к каталогу данных PostgreSQL.См. Этот код из источника :
/*
* Check if the directory has correct permissions. If not, reject.
*
* Only two possible modes are allowed, 0700 and 0750. The latter mode
* indicates that group read/execute should be allowed on all newly
* created files and directories.
*
* XXX temporarily suppress check when on Windows, because there may not
* be proper support for Unix-y file permissions. Need to think of a
* reasonable check to apply on Windows.
*/
#if !defined(WIN32) && !defined(__CYGWIN__)
if (stat_buf.st_mode & PG_MODE_MASK_GROUP)
ereport(FATAL,
(errcode(ERRCODE_OBJECT_NOT_IN_PREREQUISITE_STATE),
errmsg("data directory \"%s\" has invalid permissions",
DataDir),
errdetail("Permissions should be u=rwx (0700) or u=rwx,g=rx (0750).")));
#endif
Если каталог данных разрешает группу, группа обычно также имеет разрешения для pg_control
.
.вы можете разрешить этому пользователю pgBackRest, если вы дадите ему postgres
'основную группу пользователей.
postgres
разрешено создавать crontab
, если система настроена соответствующим образом.
Сman crontab
:
Запуск cron
заданий может быть разрешен или запрещен для разных пользователей.Для этого используйте файлы cron.allow
и cron.deny
.Если файл cron.allow
существует, в нем должен быть указан пользователь, которому разрешено использовать cron
Если файл cron.allow
не существует, но файл cron.deny
существует, то пользователь не должен быть указан в списке.cron.deny
файл для использования cron
.Если ни один из этих файлов не существует, только суперпользователь может использовать cron
.Другой способ ограничить доступ к cron
- использовать PAM-аутентификацию в /etc/security/access.conf
для настройки пользователей, которым разрешено или запрещено использовать crontab
или изменять системные задания cron
в каталоге /etc/cron.d/
.