Saltar al contenido

PostgreSQL 10 no se inicia en Ubuntu 18.04

Hola usuario de nuestra página web, encontramos la respuesta a lo que estabas buscando, has scroll y la obtendrás aquí.

Solución:

Del resultado de apt list --installed no tiene un servidor PostgreSQL 10 realmente instalado.

El nombre del paquete es exactamente postgresql-10 : https://packages.ubuntu.com/bionic/database/postgresql-10. Deberías instalar ese paquete.

La falta de error de systemctl y el hecho de que un postgresql el servicio existe son confusos: es porque postgresql es un servicio “paraguas” que lanza cada instancia de postgresql instalada y configurada. En su caso, actualmente no tiene ninguna instancia de este tipo, pero está bien en lo que respecta a postgresql el servicio está preocupado. En el caso más general, es posible que tenga varias versiones diferentes de PostgreSQL ejecutándose simultáneamente (de diferentes paquetes postgresql-), y también varias instancias de la misma versión (del mismo paquete).

Sugeriría verificar sus instancias de PostgreSQL con pg_lsclusters en vez de systemctl. Ver también pg_ctlcluster para controlarlos.

Solo usa

service [email protected] start

y funciona. No sé exactamente por qué sucede esto solo en 18.04 (verifiqué 17.10 y no sucede allí), pero el ‘paraguas’ parece incapaz de enumerar las instancias instaladas.

HTH,

13/05/2018

DESCARGO DE RESPONSABILIDAD: Esto es para postgresql 10 y ubuntu 18.04, y puede que funcione o no para otras versiones. PD: Si ha estado alterando la configuración de idioma últimamente, dígame, porque puede haber una conexión con la falla de postgres.

Ayer estaba teniendo exactamente el mismo problema, y ​​nadie en todo Internet podía ayudarme, así que me volví deshonesto … ¡Y funcionó!

En primer lugar, si tiene alguna base de datos con datos que le interese conservar, no puedo ayudarlo; tendrá que encontrar una forma de hacer una copia de seguridad de todos sus datos.

Ahora, en los pasos reales (esto es exactamente lo que hice, los pasos entre [ ] puedes saltarte):

sudo apt remove –purge postgres *
[ sudo apt remove –purge pg* ]

sudo apt autoremove
sudo apt autoclean
sudo apto limpio
[ sudo find / -name “*postgres*” -type f -delete ] -> esto puede eliminar cualquier copia de seguridad

Ahora asegúrate de tener esta línea en /etc/apt/sources.list

deb http://cz.archive.ubuntu.com/ubuntu bionic main

Si no lo hace, simplemente agréguelo … Continuemos:

actualización de sudo apt
actualización de sudo apt
sudo apt install -y postgresql-10 postgresql-contrib postgresql-client
[ sudo apt install -y postgresql-server pgadmin3 ] -> esto es posible que necesite para metasploit
[ sudo reboot ]

Ahora debe verificar si se crearon los directorios necesarios:
/etc/postgresql/10/main -> archivos de configuración
/usr/lib/postgresql/10/bin -> scripts y ejecutables
/var/run/postgresql -> archivos temporales
/var/lib/postgresql/10/main -> carpetas

Si alguno de esos no existe, no puedo ayudarte. También debe asegurarse de que el usuario postgres existe Vamos a continuar:

sudo chown root / usr / lib / postgresql -R
sudo chgrp root / usr / lib / postgresql -R
sudo chmod 755 / usr / lib / postgresql -R

Ahora ve a editar /etc/environment y agregue esto a la RUTA: /usr/lib/postgresql/10/bin

sudo chown postgres / etc / postgresql -R
sudo chgrp postgres / etc / postgresql -R
sudo chmod 700 / etc / postgresql -R

sudo echo “”> /etc/postgresql/10/main/postgresql.log
sudo chown postgresql /etc/postgresql/10/main/postgresql.log
sudo chgrp postgresql /etc/postgresql/10/main/postgresql.log
sudo chmod 700 /etc/postgresql/10/main/postgresql.log

sudo mkdir /var/run/postgresql/10-main.pg_stat_tmp
sudo chown postgres /var/run/postgresql/10-main.pg_stat_tmp -R
sudo chgrp postgres /var/run/postgresql/10-main.pg_stat_tmp -R
sudo chmod 700 /var/run/postgresql/10-main.pg_stat_tmp -R


Crear /var/lib/postgresql/.bashrc y escríbele esto

shopt -s histappend
HISTSIZE=1000
HISTFILESIZE=2000
shopt -s checkwinsize
case "$TERM" in
    xterm-color|*-256color) color_prompt=yes;;
esac
force_color_prompt=yes
if [ -n "$force_color_prompt" ]; then
    if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
    color_prompt=yes
    else
    color_prompt=
    fi
fi 
if [ "$color_prompt" = yes ]; then
    PS1='$debian_chroot:+($debian_chroot)[33[01;32m][email protected]h[33[00m]:[33[01;34m]w[33[00m]$ '
else
    PS1='$debian_chroot:+($debian_chroot)[email protected]h:w$ '
fi
unset color_prompt force_color_prompt
if [ -x /usr/bin/dircolors ]; then
    test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
    alias ls='ls --color=auto'
    alias grep='grep --color=auto'
    alias fgrep='fgrep --color=auto'
    alias egrep='egrep --color=auto'
fi
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'
if ! shopt -oq posix; then
  if [ -f /usr/share/bash-completion/bash_completion ]; then
    . /usr/share/bash-completion/bash_completion
  elif [ -f /etc/bash_completion ]; then
    . /etc/bash_completion
  fi
fi
source /etc/environment

Y luego:

sudo chown postgresql /var/lib/postgresql/.bashrc
sudo chgrp postgresql /var/lib/postgresql/.bashrc
sudo chmod 664 /var/lib/postgresql/.bashrc
[ sudo reboot ]


Y ahora para la parte final:

sudo su
su postgres

Para iniciar postgresql:

pg_ctl start -D / etc / postgresql / 10 / main -l /etc/postgresql/10/main/postgresql.log

Para terminarlo:

matar $ (gato /var/run/postgresql/10-main.pid)

Configuración básica (ingrese al postgresql Interprete):

psql

du+ -> lista de usuarios de postgresql
l -> lista de bases de datos postgresql
createuser y dropuser -> autoexplicativo
createdb y dropdb -> autoexplicativo


EXTRA: METASPLOIT

Si alguien que lee esto necesita postgresql para metasploit, puede seguir este enlace (es para 16.04 pero funciona bien en 18.04), sin embargo, hay un error: en algún momento, deberá ejecutar esto:
rvm --default use ruby-$RUBY_VERSION@metasploit-framework gem pristine --all

En lugar de lo sugerido:
rvm --default use ruby-$RUByVERSION@metasploit-framework

Además, si tiene problemas con el instalación del paquete ruby parte, este comando puede salvarle la vida: gem pristine --all

Comentarios y valoraciones

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *