не удается запустить postgresql при использовании с vagrant

не удается запустить postgresql при использовании с vagrant

При попытке запустить postgresql на виртуальной машине Virtualbox под управлением Vagrant возникает следующая ошибка:

LOG:  could not link file "pg_xlog/xlogtemp.29" to "pg_xlog/000000010000000000000001" (initialization of log file): Operation not permitted
FATAL:  could not open file "pg_xlog/000000010000000000000001": No such file or directory

```

решение1

Это происходит, когда каталог данных postgresql находится в общей папке Vagrant ( /vagrantнапример), а хост Vagrant — Windows. В этом случае разрешения не могут быть установлены способом unix.

Переместите эту папку в другое место (например, в домашний каталог пользователя vagrant), и postgresql запустится.

Решение найдено по адресу:https://gitlab.com/gitlab-org/gitlab-development-kit/issues/20

решение2

Основная причина этого в том, что vboxsf не поддерживает ссылки файловой системы (ни жесткие, ни символические). Вы можете воспроизвести проблему, смонтировав папку хоста внутри гостевой системы VirtualBox и попытавшись сделать следующее: ln /path/to/mounted/share/existingfile.txt /some/path/link-to-file.txt

например (с /var/data, смонтированным как общий ресурс vboxsf) jim@a55a005fc5a5:/~ ln /var/data/foo.txt ~/data/link-to-foo ln: failed to create hard link ‘/users/jim/data/link-to-foo’ => ‘/var/data/foo.txt’: Operation not permitted

На virtualbox.org есть множество тикетов по этому поводу (#818,#10085) но поскольку они вернулись 7 лет назад, может пройти еще немало времени, прежде чем это будет исправлено!

Связанный контент