pg_upgrade oldbindir проверка не удалась
Я пытаюсь обновить базу данных postgresql с 9.1 до 9.4. Я запустил 9g версию pg_upgrade следующим образом:
sudo -u postgres pg_upgrade -b <path>/postgres/9.1/bin -B <path>/postgres/9.4/bin -d <path>/9.1DBs/ -D <path>/<empty folder>
Я получил:
check failed for: <path>/postgres/9.1/bin Permission denied
Папка существует, я установил права доступа 777, даже дал пользователю postgres право собственности на структуру каталогов, но я все еще получаю ту же ошибку.
Работа в подробном режиме не дает никакой дополнительной информации. Раздел, содержащий старые двоичные файлы, смонтирован в /media/, и у меня есть права на чтение / запись.
Есть идеи, что может быть причиной этого?
1 ответ
Эта ошибка
Не удалось проверить: /postgres/9.1/bin Отказано в доступе
происходит потому, что права доступа к каталогам (x
бит) необходимо установить в каждом каталоге в иерархии, от корня до каталога, содержащего эти исполняемые файлы.
Это подробно описано в Unix.SE:
Имеют ли значение разрешения родительского каталога при доступе к подкаталогу?