2 votes

Aide à l'installation de postgres sous ubuntu

J'essaie d'installer postgresql dans la dernière version d'ubunutu, et je suis les étapes suivantes ces instructions . Quand je sudo -u postgres psql postgres Je reçois cette erreur : could not change directory to "/home/james"

J'apprécierais toute aide.

3voto

Robert Vabo Points 158

Je sais que c'est vieux, mais cette question est très bien classée sur Google, et je préfère ma réponse :)

Collez un -i dans cette commande sudo - sudo ne change pas non plus la valeur de $HOME à moins que vous n'utilisiez la commande -i (qui simule un i nitial login). Cela charge également le profil de l'utilisateur postgres, etc. Donc, ce que vous devez exécuter est :

sudo -i -u postgres psql postgres

C'est l'heure de la démo !

sauer@pyro:~$ sudo -u postgres sh -c 'echo $HOME'
/home/sauer
sauer@pyro:~$ sudo -i -u postgres sh -c 'echo $HOME'
/var/lib/postgresql

Les guillemets simples sont importants dans cet exemple, BTW. :)

2voto

Ehsan mahmood Points 11

Il semble que l'utilisateur postgres, que vous utilisez pour exécuter psql, ne puisse pas lire le répertoire à partir duquel vous exécutez la déclaration (/home/james/).

  • sudo = s sorcière u ser et faire - sw
  • u = "en tant qu'utilisateur
  • postgres = utilisateur vers lequel basculer
  • psql = commande à exécuter
  • postgres = base de données à laquelle se connecter

je devine ici, mais je pense que sudo va ouvrir un nouveau Shell/environnement dans le répertoire actuel pour postgres et y exécuter psql. Si psql n'est pas autorisé à lire le répertoire actuel, cette erreur peut se produire.

essayez de changer de répertoire avant d'exécuter la commande :

cd /tmp

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X