Sem diretório logado com HOME[RESOLVIDO]

1. Sem diretório logado com HOME[RESOLVIDO]

César
dark777

(usa Debian)

Enviado em 19/02/2020 - 15:24h

wiki.anon

Boa tarde galera eu instalei o postgresql-9.6.4-1-linux-x64.run
porem na instalação acabou dando erro mas ele criou os arquivos tudo tranquilo.
Então removi e instalei os pacotes slackonly do slackware.
criei o usuário postgres novamente a senha configurei manualmente o banco de dados e quando faço:

bash$ sudo service postgresql start
Starting PostgreSQL
Sem diretório, logando com HOME=/
waiting for server to start.... done
server started

e depois:

bash$ su postgres
postgres.anon$ psql
psql (9.6.4)
Type "help" for help.

postgres=# \q
could not save history to file "/opt/PostgreSQL/9.6/.psql_history": Arquivo ou diretório inexistente

Como resolver este problema?




  


2. Sem diretório logado com

Afonso T Freitas
atf

(usa openSUSE)

Enviado em 20/02/2020 - 10:11h

Parece que o usuário "postgres" não tem acesso ao diretório para gravar seu histórico.
Veja como estão as permissões para o "postgresql" e tente não usar o "psql" com o usuário "postgres".
Também verifique se foi indicado o diretório de "log" para o postgres.

LinuxUser#142898


3. Re: Sem diretório logado com HOME[RESOLVIDO]

César
dark777

(usa Debian)

Enviado em 20/02/2020 - 14:37h

atf escreveu:

Parece que o usuário "postgres" não tem acesso ao diretório para gravar seu histórico.
Veja como estão as permissões para o "postgresql" e tente não usar o "psql" com o usuário "postgres".
Também verifique se foi indicado o diretório de "log" para o postgres.

LinuxUser#142898


Estava fazendo algumas alterações em um script para criação do usuário e manipulação de id's dos mesmo e acabei encontrando o problema.

Isso acontece por que em /etc/passwd e etc/passwd-
estava configurado como esta abaixo:

postgres:x:1002:1002:PostgreSQL:/opt/PostgreSql/9.6:/bin/bash

Entao foi nescessario parar o postgres:

bash# service postgresql stop

depois executei os comandos abaixo:

# Criei o diretório home do postgres:
bash# mkdir -p /var/lib/pgsql

# Configurei o dono do home:
bash# chown -R postgres.postgres /var/lib/pgsql

# No meu caso instalei o postgres 9.6.7 então fiz um set na variavel:
bash# VERSION="9.6"

# Iniciei o banco de dados na home do usuario:
bash# su postgres -c '/usr/bin/initdb -D /var/lib/pgsql/'${VERSION}'/data'

# Notei que mesmo se iniciarmos o banco de dados novamente ainda aparecerá o erro abaixo:
bash# su - postgres -c '/usr/bin/pg_ctl -D /var/lib/pgsql/'${VERSION}'/data -l logfile start'
Sem diretório, logando com HOME=/
server starting

# Editei o arquivo /etc/passwd e /etc/passwd-
bash# nano /etc/{passdw,passwd-}

e alterei a linha abaixo:
postgres:x:1002:1002:PostgreSQL:/opt/PostgreSQL/9.6:/bin/bash

para

postgres:x:1002:1002:PostgreSQL:/var/lib/pgsql/9.6:/bin/bash

# Reiniciei o banco de dados:
bash# su - postgres -c '/usr/bin/pg_ctl -D /var/lib/pgsql/'${VERSION}'/data -l logfile start'
server starting

Pronto problema resolvido.

wiki.anon






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts