Hola
Tengo problemas para recuperar una actualización fallida en una máquina local con Ubuntu 20.04.5 LTS (Focal Fossa). Tras la actualización fallida, ejecuté primero desde la línea de comandos:
sudo apt-get update
sudo apt-get upgrade
cd /var/discourse
git pull
sudo ./launcher rebuild app
La última parte de la salida fue:
- dist/javascripts/workbox/workbox-expiration.dev.js: 20.83 KB (5.48 KB comprimido)
- dist/javascripts/workbox/workbox-expiration.prod.js: 2.82 KB (1.22 KB comprimido)
- dist/javascripts/workbox/workbox-routing.dev.js: 31.54 KB (7.58 KB comprimido)
- dist/javascripts/workbox/workbox-routing.prod.js: 3.32 KB (1.44 KB comprimido)
- dist/javascripts/workbox/workbox-strategies.dev.js: 34.65 KB (4.79 KB comprimido)
- dist/javascripts/workbox/workbox-strategies.prod.js: 4.75 KB (1.16 KB comprimido)
- dist/javascripts/workbox/workbox-sw.js: 1.3 KB (741 B comprimido)
Listo en 90.53s.
I, [2022-11-24T15:11:00.523692 #1] INFO -- : Finalizando procesos asíncronos
I, [2022-11-24T15:11:00.523748 #1] INFO -- : Enviando INT a HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/13/bin/postmaster -D /etc/postgresql/13/main pid: 42
I, [2022-11-24T15:11:00.523808 #1] INFO -- : Enviando TERM a exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 103
103:signal-handler (1669302660) Se recibió SIGTERM programando el apagado...
2022-11-24 15:11:00.524 UTC [42] LOG: solicitud de apagado rápido recibida
2022-11-24 15:11:00.540 UTC [42] LOG: abortando cualquier transacción activa
2022-11-24 15:11:00.542 UTC [42] LOG: el trabajador en segundo plano "lanzador de replicación lógica" (PID 51) salió con código de salida 1
2022-11-24 15:11:00.544 UTC [46] LOG: apagando
103:M 24 Nov 2022 15:11:00.546 # Apagado solicitado por el usuario...
103:M 24 Nov 2022 15:11:00.546 * Guardando la instantánea RDB final antes de salir.
103:M 24 Nov 2022 15:11:00.597 * Base de datos guardada en disco
103:M 24 Nov 2022 15:11:00.597 # Redis está listo para salir, adiós...
2022-11-24 15:11:00.680 UTC [42] LOG: el sistema de base de datos se ha apagado
FALLÓ
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake themes:update assets:precompile' falló con retorno #<Process::Status: pid 1415 exit 1>
Ubicación del fallo: /usr/local/lib/ruby/gems/2.7.0/gems/pups-1.1.1/lib/pups/exec_command.rb:117:in `spawn'
La ejecución falló con los parámetros {"cd"=>"$home", "hook"=>"assets_precompile", "cmd"=>["su discourse -c 'bundle exec rake themes:update assets:precompile'"]}
El arranque falló con código de salida 1
** EL ARRANQUE FALLÓ ** por favor, desplázate hacia arriba y busca mensajes de error anteriores, puede haber más de uno.
./discourse-doctor puede ayudar a diagnosticar el problema.
abfc5da15ae62310ad82ccb495992f76ef7b9a87b7bb024ca4bf327ea993bc54
Luego intenté:
sudo apt-get dist-upgrade
cd /var/discourse
git pull
sudo ./launcher rebuild app
y la salida ahora es:
sudo ./launcher rebuild app
ADVERTENCIA: La versión de Docker 17.05.0-ce está obsoleta; se recomienda actualizar a 17.06.2 o superior.
Se detectó la arquitectura x86_64.
ADVERTENCIA: El archivo containers/app.yml es legible por todos. Puedes asegurar este archivo ejecutando: chmod o-rwx containers/app.yml
Asegurando que el lanzador esté actualizado
Obteniendo origin
El lanzador está actualizado
Deteniendo el contenedor anterior
+ /usr/bin/docker stop -t 60 app
app
2.0.20220818-0047: Extrayendo desde discourse/base
Digest: sha256:7734701087766821ffb2ddcef423754798bd345c2ac0d550131c6e6905c268e8
Estado: La imagen ya está actualizada para discourse/base:2.0.20220818-0047
/usr/local/lib/ruby/gems/2.7.0/gems/pups-1.1.1/lib/pups.rb
/usr/local/bin/pups --stdin
I, [2022-11-24T17:05:57.385657 #1] INFO -- : Leyendo desde stdin
I, [2022-11-24T17:05:57.389797 #1] INFO -- : > locale-gen $LANG && update-locale
I, [2022-11-24T17:05:57.422186 #1] INFO -- : Generando locales (esto puede tardar un poco)...
Generación completada.
I, [2022-11-24T17:05:57.422436 #1] INFO -- : > mkdir -p /shared/postgres_run
I, [2022-11-24T17:05:57.425262 #1] INFO -- :
I, [2022-11-24T17:05:57.425450 #1] INFO -- : > chown postgres:postgres /shared/postgres_run
I, [2022-11-24T17:05:57.427977 #1] INFO -- :
I, [2022-11-24T17:05:57.428106 #1] INFO -- : > chmod 775 /shared/postgres_run
I, [2022-11-24T17:05:57.429878 #1] INFO -- :
I, [2022-11-24T17:05:57.429989 #1] INFO -- : > rm -fr /var/run/postgresql
I, [2022-11-24T17:05:57.431844 #1] INFO -- :
I, [2022-11-24T17:05:57.431957 #1] INFO -- : > ln -s /shared/postgres_run /var/run/postgresql
I, [2022-11-24T17:05:57.433756 #1] INFO -- :
I, [2022-11-24T17:05:57.433876 #1] INFO -- : > socat /dev/null UNIX-CONNECT:/shared/postgres_run/.s.PGSQL.5432 || exit 0 && echo postgres ya está ejecutándose, detener contenedor ; exit 1
2022/11/24 17:05:57 socat[19] E connect(6, AF=1 "/shared/postgres_run/.s.PGSQL.5432", 36): No existe tal archivo o directorio
I, [2022-11-24T17:05:57.439214 #1] INFO -- :
I, [2022-11-24T17:05:57.439321 #1] INFO -- : > rm -fr /shared/postgres_run/.s*
I, [2022-11-24T17:05:57.441654 #1] INFO -- :
I, [2022-11-24T17:05:57.441752 #1] INFO -- : > rm -fr /shared/postgres_run/*.pid
I, [2022-11-24T17:05:57.444021 #1] INFO -- :
I, [2022-11-24T17:05:57.444120 #1] INFO -- : > mkdir -p /shared/postgres_run/13-main.pg_stat_tmp
I, [2022-11-24T17:05:57.446040 #1] INFO -- :
I, [2022-11-24T17:05:57.446171 #1] INFO -- : > chown postgres:postgres /shared/postgres_run/13-main.pg_stat_tmp
I, [2022-11-24T17:05:57.448063 #1] INFO -- :
I, [2022-11-24T17:05:57.452270 #1] INFO -- : Archivo > /etc/service/postgres/run chmod: +x chown:
I, [2022-11-24T17:05:57.456198 #1] INFO -- : Archivo > /etc/service/postgres/log/run chmod: +x chown:
I, [2022-11-24T17:05:57.460141 #1] INFO -- : Archivo > /etc/runit/3.d/99-postgres chmod: +x chown:
I, [2022-11-24T17:05:57.464080 #1] INFO -- : Archivo > /root/upgrade_postgres chmod: +x chown:
I, [2022-11-24T17:05:57.464267 #1] INFO -- : > chown -R root /var/lib/postgresql/13/main
I, [2022-11-24T17:05:57.537077 #1] INFO -- :
I, [2022-11-24T17:05:57.537178 #1] INFO -- : > [ ! -e /shared/postgres_data ] && install -d -m 0755 -o postgres -g postgres /shared/postgres_data && sudo -E -u postgres /usr/lib/postgresql/13/bin/initdb -D /shared/postgres_data || exit 0
I, [2022-11-24T17:05:57.538742 #1] INFO -- :
I, [2022-11-24T17:05:57.538799 #1] INFO -- : > chown -R postgres:postgres /shared/postgres_data
I, [2022-11-24T17:05:57.550302 #1] INFO -- :
I, [2022-11-24T17:05:57.550394 #1] INFO -- : > chown -R postgres:postgres /var/run/postgresql
I, [2022-11-24T17:05:57.552387 #1] INFO -- :
I, [2022-11-24T17:05:57.552528 #1] INFO -- : > /root/upgrade_postgres
I, [2022-11-24T17:05:57.556422 #1] INFO -- :
I, [2022-11-24T17:05:57.556533 #1] INFO -- : > rm /root/upgrade_postgres
I, [2022-11-24T17:05:57.558395 #1] INFO -- :
I, [2022-11-24T17:05:57.558734 #1] INFO -- : Reemplazando data_directory = '/var/lib/postgresql/13/main' por data_directory = '/shared/postgres_data' en /etc/postgresql/13/main/postgresql.conf
I, [2022-11-24T17:05:57.559138 #1] INFO -- : Reemplazando (?-mix:#?listen_addresses *=.*) por listen_addresses = '*' en /etc/postgresql/13/main/postgresql.conf
I, [2022-11-24T17:05:57.559350 #1] INFO -- : Reemplazando (?-mix:#?synchronous_commit *=.*) por synchronous_commit = $db_synchronous_commit en /etc/postgresql/13/main/postgresql.conf
I, [2022-11-24T17:05:57.559550 #1] INFO -- : Reemplazando (?-mix:#?shared_buffers *=.*) por shared_buffers = $db_shared_buffers en /etc/postgresql/13/main/postgresql.conf
I, [2022-11-24T17:05:57.559748 #1] INFO -- : Reemplazando (?-mix:#?work_mem *=.*) por work_mem = $db_work_mem en /etc/postgresql/13/main/postgresql.conf
I, [2022-11-24T17:05:57.559945 #1] INFO -- : Reemplazando (?-mix:#?default_text_search_config *=.*) por default_text_search_config = '$db_default_text_search_config' en /etc/postgresql/13/main/postgresql.conf
I, [2022-11-24T17:05:57.560122 #1] INFO -- : > install -d -m 0755 -o postgres -g postgres /shared/postgres_backup
I, [2022-11-24T17:05:57.562571 #1] INFO -- :
I, [2022-11-24T17:05:57.562855 #1] INFO -- : Reemplazando (?-mix:#?checkpoint_segments *=.*) por checkpoint_segments = $db_checkpoint_segments en /etc/postgresql/13/main/postgresql.conf
I, [2022-11-24T17:05:57.563086 #1] INFO -- : Reemplazando (?-mix:#?logging_collector *=.*) por logging_collector = $db_logging_collector en /etc/postgresql/13/main/postgresql.conf
I, [2022-11-24T17:05:57.563295 #1] INFO -- : Reemplazando (?-mix:#?log_min_duration_statement *=.*) por log_min_duration_statement = $db_log_min_duration_statement en /etc/postgresql/13/main/postgresql.conf
I, [2022-11-24T17:05:57.563506 #1] INFO -- : Reemplazando (?-mix:^#local +replication +postgres +peer$) por local replication postgres peer en /etc/postgresql/13/main/pg_hba.conf
I, [2022-11-24T17:05:57.563702 #1] INFO -- : Reemplazando (?-mix:^host.*all.*all.*127.*$) por host all all 0.0.0.0/0 md5 en /etc/postgresql/13/main/pg_hba.conf
I, [2022-11-24T17:05:57.563874 #1] INFO -- : Reemplazando (?-mix:^host.*all.*all.*::1\/128.*$) por host all all ::/0 md5 en /etc/postgresql/13/main/pg_hba.conf
I, [2022-11-24T17:05:57.564025 #1] INFO -- : > HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/13/bin/postmaster -D /etc/postgresql/13/main
I, [2022-11-24T17:05:57.565221 #1] INFO -- : > sleep 5
2022-11-24 17:05:57.591 UTC [42] FATAL: el archivo de clave privada "/etc/ssl/private/ssl-cert-snakeoil.key" debe ser propiedad del usuario de la base de datos o de root
2022-11-24 17:05:57.591 UTC [42] LOG: el sistema de base de datos se ha apagado
I, [2022-11-24T17:06:02.567410 #1] INFO -- :
I, [2022-11-24T17:06:02.567949 #1] INFO -- : > su postgres -c 'createdb discourse' || true
createdb: error: no se pudo conectar a la base de datos template1: la conexión al servidor en el socket "/var/run/postgresql/.s.PGSQL.5432" falló: No existe tal archivo o directorio
¿Está el servidor ejecutándose localmente y aceptando conexiones en ese socket?
I, [2022-11-24T17:06:02.612636 #1] INFO -- :
I, [2022-11-24T17:06:02.612780 #1] INFO -- : > su postgres -c 'psql discourse -c "create user discourse;"' || true
psql: error: la conexión al servidor en el socket "/var/run/postgresql/.s.PGSQL.5432" falló: No existe tal archivo o directorio
¿Está el servidor ejecutándose localmente y aceptando conexiones en ese socket?
I, [2022-11-24T17:06:02.649900 #1] INFO -- :
I, [2022-11-24T17:06:02.650042 #1] INFO -- : > su postgres -c 'psql discourse -c "grant all privileges on database discourse to discourse;"' || true
psql: error: la conexión al servidor en el socket "/var/run/postgresql/.s.PGSQL.5432" falló: No existe tal archivo o directorio
¿Está el servidor ejecutándose localmente y aceptando conexiones en ese socket?
I, [2022-11-24T17:06:02.688245 #1] INFO -- :
I, [2022-11-24T17:06:02.688412 #1] INFO -- : > su postgres -c 'psql discourse -c "alter schema public owner to discourse;"'
psql: error: la conexión al servidor en el socket "/var/run/postgresql/.s.PGSQL.5432" falló: No existe tal archivo o directorio
¿Está el servidor ejecutándose localmente y aceptando conexiones en ese socket?
I, [2022-11-24T17:06:02.725728 #1] INFO -- :
I, [2022-11-24T17:06:02.725969 #1] INFO -- : Finalizando procesos asíncronos
FALLÓ
--------------------
Pups::ExecError: su postgres -c 'psql discourse -c "alter schema public owner to discourse;"' falló con retorno #<Process::Status: pid 54 exit 2>
Ubicación del fallo: /usr/local/lib/ruby/gems/2.7.0/gems/pups-1.1.1/lib/pups/exec_command.rb:117:in `spawn'
La ejecución falló con los parámetros "su postgres -c 'psql $db_name -c \"alter schema public owner to $db_user;\"'"
El arranque falló con código de salida 2
** EL ARRANQUE FALLÓ ** por favor, desplázate hacia arriba y busca mensajes de error anteriores, puede haber más de uno.
./discourse-doctor puede ayudar a diagnosticar el problema.
8c252b2f3146df27193b8a6966b36a75230460f92397cd206aa5540082090660
¿Puede alguien ayudar?"}