Я пытаюсь установить postgresql в последней версии ubunutu и следую этим инструкциям. Когда я sudo -u postgres psql postgres
я получаю эту ошибку: could not change directory to "/home/james"
Буду признателен за любую помощь.
Я пытаюсь установить postgresql в последней версии ubunutu и следую этим инструкциям. Когда я sudo -u postgres psql postgres
я получаю эту ошибку: could not change directory to "/home/james"
Буду признателен за любую помощь.
Я знаю, что это старый, но этот вопрос высоко оценивается в Google, и я предпочитаю мой ответ. :)
Вставьте -i в эту команду sudo - sudo также не изменит значение $ HOME, если вы не выполните команду -i (которая имитирует регистрацию i
nitial). Это также загружает .profile пользователя postgres и т.д. Итак, что вы будете запускать это:
sudo -i -u postgres psql postgres
Демо время!
sauer@pyro:~$ sudo -u postgres sh -c 'echo $HOME'
/home/sauer
sauer@pyro:~$ sudo -i -u postgres sh -c 'echo $HOME'
/var/lib/postgresql
Одиночные кавычки важны для этого примера, кстати. :)
Похоже, что пользователь postgres, который вы используете для запуска psql, может не прочитать каталог, из которого вы выполняете оператор (/home/james/)
я предполагаю здесь, но я думаю, что sudo откроет новую оболочку / окружение в текущем каталоге для postgres и выполнит там psql. Если psql не разрешено читать текущий каталог, эта ошибка может возникнуть.
попробуйте переключить каталог перед выполнением команды:
cd /tmp