안녕하세요! 오늘 포럼을 정해진 절차대로(관리자 > 대시보드 > 업그레이드) 2.4.0에서 업그레이드했습니다.
그 후, 나머지 업그레이드를 계속 진행하기 위해 업그레이드 화면으로 돌아갔을 때 다음과 같은 메시지가 나타났습니다.
현재 실행 중인 Discourse 이미지의 버전이 오래되었습니다.
최신 이미지를 실행할 때까지 웹 UI를 통한 업그레이드는 비활성화됩니다.이를 수행하려면 SSH를 사용하여 서버에 로그인한 다음 다음을 실행하세요:
cd /var/discourse git pull ./launcher rebuild app
지금까지는 새로운 문제가 없었습니다. 터미널을 열고 가상 머신에 접속한 후 항상 그랬던 것처럼 해당 단계를 따랐지만, 이제 이전에는 본 적 없는 오류를 받고 있습니다. 로그는 다음과 같습니다.
root@foro:/var/discourse# ./launcher rebuild app
Ensuring launcher is up to date
Fetching origin
Launcher is up-to-date
cd /pups && git pull && /pups/bin/pups --stdin
Already up to date.
I, [2020-07-03T17:40:38.599175 #1] INFO -- : Loading --stdin
I, [2020-07-03T17:40:38.608573 #1] INFO -- : > apt-get remove -y postgresql-10 postgresql-client-10 postgresql-contrib-10
I, [2020-07-03T17:40:40.109309 #1] INFO -- : Reading package lists...
Building dependency tree...
Reading state information...
Package 'postgresql-10' is not installed, so not removed
Package 'postgresql-client-10' is not installed, so not removed
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
I, [2020-07-03T17:40:40.110000 #1] INFO -- : > apt-get update && apt-get install -y postgresql-9.5 postgresql-client-9.5 postgresql-contrib-9.5
debconf: delaying package configuration, since apt-utils is not installed
I, [2020-07-03T17:40:49.742789 #1] INFO -- : Get:1 http://security.debian.org/debian-security buster/updates InRelease [65.4 kB]
Get:2 http://apt.postgresql.org/pub/repos/apt buster-pgdg InRelease [84.6 kB]
Hit:3 http://deb.debian.org/debian buster InRelease
Get:4 http://deb.debian.org/debian buster-updates InRelease [51.9 kB]
Get:5 https://deb.nodesource.com/node_10.x buster InRelease [4,584 B]
Get:6 http://security.debian.org/debian-security buster/updates/main amd64 Packages [208 kB]
Get:7 http://apt.postgresql.org/pub/repos/apt buster-pgdg/main amd64 Packages [177 kB]
Get:8 http://deb.debian.org/debian buster-updates/main amd64 Packages.diff/Index [3,688 B]
Get:9 http://deb.debian.org/debian buster-updates/main amd64 Packages 2020-06-04-2016.16.pdiff [1,101 B]
Get:10 http://deb.debian.org/debian buster-updates/main amd64 Packages 2020-06-07-1403.53.pdiff [439 B]
Get:11 http://deb.debian.org/debian buster-updates/main amd64 Packages 2020-06-13-2000.26.pdiff [552 B]
Get:11 http://deb.debian.org/debian buster-updates/main amd64 Packages 2020-06-13-2000.26.pdiff [552 B]
Get:12 https://deb.nodesource.com/node_10.x buster/main amd64 Packages [768 B]
Fetched 599 kB in 1s (686 kB/s)
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
Suggested packages:
postgresql-doc-9.5 libdbd-pg-perl
The following NEW packages will be installed:
postgresql-9.5 postgresql-client-9.5 postgresql-contrib-9.5
0 upgraded, 3 newly installed, 0 to remove and 13 not upgraded.
Need to get 5,700 kB of archives.
After this operation, 27.2 MB of additional disk space will be used.
Get:1 http://apt.postgresql.org/pub/repos/apt buster-pgdg/main amd64 postgresql-client-9.5 amd64 9.5.22-1.pgdg100+1 [1,252 kB]
Get:2 http://apt.postgresql.org/pub/repos/apt buster-pgdg/main amd64 postgresql-9.5 amd64 9.5.22-1.pgdg100+1 [3,985 kB]
Get:3 http://apt.postgresql.org/pub/repos/apt buster-pgdg/main amd64 postgresql-contrib-9.5 amd64 9.5.22-1.pgdg100+1 [463 kB]
Fetched 5,700 kB in 0s (27.1 MB/s)
Selecting previously unselected package postgresql-client-9.5.
(Reading database ... 43929 files and directories currently installed.)
Preparing to unpack .../postgresql-client-9.5_9.5.22-1.pgdg100+1_amd64.deb ...
Unpacking postgresql-client-9.5 (9.5.22-1.pgdg100+1) ...
Selecting previously unselected package postgresql-9.5.
Preparing to unpack .../postgresql-9.5_9.5.22-1.pgdg100+1_amd64.deb ...
Unpacking postgresql-9.5 (9.5.22-1.pgdg100+1) ...
Selecting previously unselected package postgresql-contrib-9.5.
Preparing to unpack .../postgresql-contrib-9.5_9.5.22-1.pgdg100+1_amd64.deb ...
Unpacking postgresql-contrib-9.5 (9.5.22-1.pgdg100+1) ...
Setting up postgresql-client-9.5 (9.5.22-1.pgdg100+1) ...
update-alternatives: warning: forcing reinstallation of alternative /usr/share/postgresql/12/man/man1/psql.1.gz because link group psql.1.gz is broken
Setting up postgresql-9.5 (9.5.22-1.pgdg100+1) ...
Creating new PostgreSQL cluster 9.5/main ...
/usr/lib/postgresql/9.5/bin/initdb -D /var/lib/postgresql/9.5/main --auth-local peer --auth-host md5
The files belonging to this database system will be owned by user "postgres".
This user must also own the server process.
The database cluster will be initialized with locale "C.UTF-8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".
Data page checksums are disabled.
fixing permissions on existing directory /var/lib/postgresql/9.5/main ... ok
creating subdirectories ... ok
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting default timezone ... Etc/UTC
selecting dynamic shared memory implementation ... posix
creating configuration files ... ok
creating template1 database in /var/lib/postgresql/9.5/main/base/1 ... ok
initializing pg_authid ... ok
initializing dependencies ... ok
creating system views ... ok
loading system objects' descriptions ... ok
creating collations ... ok
creating conversions ... ok
creating dictionaries ... ok
setting privileges on built-in objects ... ok
creating information schema ... ok
loading PL/pgSQL server-side language ... ok
vacuuming database template1 ... ok
copying template1 to template0 ... ok
copying template1 to postgres ... ok
syncing data to disk ... ok
Success. You can now start the database server using:
/usr/lib/postgresql/9.5/bin/pg_ctl -D /var/lib/postgresql/9.5/main -l logfile start
Ver Cluster Port Status Owner Data directory Log file
9.5 main 5433 down postgres /var/lib/postgresql/9.5/main /var/log/postgresql/postgresql-9.5-main.log
update-alternatives: warning: forcing reinstallation of alternative /usr/share/postgresql/12/man/man1/postmaster.1.gz because link group postmaster.1.gz is broken
invoke-rc.d: could not determine current runlevel
invoke-rc.d: policy-rc.d denied execution of start.
Setting up postgresql-contrib-9.5 (9.5.22-1.pgdg100+1) ...
Processing triggers for postgresql-common (213.pgdg100+1) ...
Building PostgreSQL dictionaries from installed myspell/hunspell packages...
Removing obsolete dictionary files:
I, [2020-07-03T17:40:49.743707 #1] INFO -- : > mkdir -p /shared/postgres_run
I, [2020-07-03T17:40:49.747572 #1] INFO -- :
I, [2020-07-03T17:40:49.748032 #1] INFO -- : > chown postgres:postgres /shared/postgres_run
I, [2020-07-03T17:40:49.750621 #1] INFO -- :
I, [2020-07-03T17:40:49.751119 #1] INFO -- : > chmod 775 /shared/postgres_run
I, [2020-07-03T17:40:49.753527 #1] INFO -- :
I, [2020-07-03T17:40:49.753870 #1] INFO -- : > rm -fr /var/run/postgresql
I, [2020-07-03T17:40:49.756586 #1] INFO -- :
I, [2020-07-03T17:40:49.756966 #1] INFO -- : > ln -s /shared/postgres_run /var/run/postgresql
I, [2020-07-03T17:40:49.759345 #1] INFO -- :
I, [2020-07-03T17:40:49.759525 #1] INFO -- : > socat /dev/null UNIX-CONNECT:/shared/postgres_run/.s.PGSQL.5432 || exit 0 && echo postgres already running stop container ; exit 1
2020/07/03 17:40:49 socat[1570] E connect(6, AF=1 "/shared/postgres_run/.s.PGSQL.5432", 36): No such file or directory
I, [2020-07-03T17:40:49.764619 #1] INFO -- :
I, [2020-07-03T17:40:49.764790 #1] INFO -- : > rm -fr /shared/postgres_run/.s*
I, [2020-07-03T17:40:49.768012 #1] INFO -- :
I, [2020-07-03T17:40:49.768201 #1] INFO -- : > rm -fr /shared/postgres_run/*.pid
I, [2020-07-03T17:40:49.771186 #1] INFO -- :
I, [2020-07-03T17:40:49.771329 #1] INFO -- : > mkdir -p /shared/postgres_run/9.5-main.pg_stat_tmp
I, [2020-07-03T17:40:49.773782 #1] INFO -- :
I, [2020-07-03T17:40:49.774066 #1] INFO -- : > chown postgres:postgres /shared/postgres_run/9.5-main.pg_stat_tmp
I, [2020-07-03T17:40:49.776490 #1] INFO -- :
I, [2020-07-03T17:40:49.782041 #1] INFO -- : File > /etc/service/postgres/run chmod: +x chown:
I, [2020-07-03T17:40:49.788039 #1] INFO -- : File > /etc/runit/3.d/99-postgres chmod: +x chown:
I, [2020-07-03T17:40:49.788568 #1] INFO -- : > chown -R root /var/lib/postgresql/9.5/main
I, [2020-07-03T17:40:49.799608 #1] INFO -- :
I, [2020-07-03T17:40:49.799833 #1] INFO -- : > [ ! -e /shared/postgres_data ] && install -d -m 0755 -o postgres -g postgres /shared/postgres_data && sudo -E -u postgres /usr/lib/postgresql/9.5/bin/initdb -D /shared/postgres_data || exit 0
I, [2020-07-03T17:40:49.802712 #1] INFO -- :
I, [2020-07-03T17:40:49.802859 #1] INFO -- : > chown -R postgres:postgres /shared/postgres_data
I, [2020-07-03T17:40:49.823259 #1] INFO -- :
I, [2020-07-03T17:40:49.823552 #1] INFO -- : > chown -R postgres:postgres /var/run/postgresql
I, [2020-07-03T17:40:49.827629 #1] INFO -- :
I, [2020-07-03T17:40:49.828112 #1] INFO -- : Replacing data_directory = '/var/lib/postgresql/9.5/main' with data_directory = '/shared/postgres_data' in /etc/postgresql/9.5/main/postgresql.conf
I, [2020-07-03T17:40:49.828954 #1] INFO -- : Replacing (?-mix:#?listen_addresses *=.*) with listen_addresses = '*' in /etc/postgresql/9.5/main/postgresql.conf
I, [2020-07-03T17:40:49.829559 #1] INFO -- : Replacing (?-mix:#?synchronous_commit *=.*) with synchronous_commit = $db_synchronous_commit in /etc/postgresql/9.5/main/postgresql.conf
I, [2020-07-03T17:40:49.830168 #1] INFO -- : Replacing (?-mix:#?shared_buffers *=.*) with shared_buffers = $db_shared_buffers in /etc/postgresql/9.5/main/postgresql.conf
I, [2020-07-03T17:40:49.830753 #1] INFO -- : Replacing (?-mix:#?work_mem *=.*) with work_mem = $db_work_mem in /etc/postgresql/9.5/main/postgresql.conf
I, [2020-07-03T17:40:49.831385 #1] INFO -- : Replacing (?-mix:#?default_text_search_config *=.*) with default_text_search_config = '$db_default_text_search_config' in /etc/postgresql/9.5/main/postgresql.conf
I, [2020-07-03T17:40:49.831981 #1] INFO -- : > install -d -m 0755 -o postgres -g postgres /shared/postgres_backup
I, [2020-07-03T17:40:49.835928 #1] INFO -- :
I, [2020-07-03T17:40:49.836456 #1] INFO -- : Replacing (?-mix:#?max_wal_senders *=.*) with max_wal_senders = $db_max_wal_senders in /etc/postgresql/9.5/main/postgresql.conf
I, [2020-07-03T17:40:49.837120 #1] INFO -- : Replacing (?-mix:#?wal_level *=.*) with wal_level = $db_wal_level in /etc/postgresql/9.5/main/postgresql.conf
I, [2020-07-03T17:40:49.837800 #1] INFO -- : Replacing (?-mix:#?checkpoint_segments *=.*) with checkpoint_segments = $db_checkpoint_segments in /etc/postgresql/9.5/main/postgresql.conf
I, [2020-07-03T17:40:49.838367 #1] INFO -- : Replacing (?-mix:#?logging_collector *=.*) with logging_collector = $db_logging_collector in /etc/postgresql/9.5/main/postgresql.conf
I, [2020-07-03T17:40:49.838967 #1] INFO -- : Replacing (?-mix:#?log_min_duration_statement *=.*) with log_min_duration_statement = $db_log_min_duration_statement in /etc/postgresql/9.5/main/postgresql.conf
I, [2020-07-03T17:40:49.839599 #1] INFO -- : Replacing (?-mix:^#local +replication +postgres +peer$) with local replication postgres peer in /etc/postgresql/9.5/main/pg_hba.conf
I, [2020-07-03T17:40:49.840164 #1] INFO -- : Replacing (?-mix:^host.*all.*all.*127.*$) with host all all 0.0.0.0/0 md5 in /etc/postgresql/9.5/main/pg_hba.conf
I, [2020-07-03T17:40:49.840674 #1] INFO -- : > HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/9.5/bin/postmaster -D /etc/postgresql/9.5/main
I, [2020-07-03T17:40:49.843014 #1] INFO -- : > sleep 5
2020-07-03 17:40:49.929 UTC [1589] LOG: database system was shut down at 2020-07-03 17:35:44 UTC
2020-07-03 17:40:49.935 UTC [1589] LOG: MultiXact member wraparound protections are now enabled
2020-07-03 17:40:49.939 UTC [1593] LOG: autovacuum launcher started
2020-07-03 17:40:49.939 UTC [1586] LOG: database system is ready to accept connections
I, [2020-07-03T17:40:54.846567 #1] INFO -- :
I, [2020-07-03T17:40:54.847806 #1] INFO -- : > su postgres -c 'createdb discourse' || true
createdb: error: could not connect to database template1: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
I, [2020-07-03T17:40:54.926943 #1] INFO -- :
I, [2020-07-03T17:40:54.927231 #1] INFO -- : > su postgres -c 'psql discourse -c "create user discourse;"' || true
psql: error: could not connect to server: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
I, [2020-07-03T17:40:55.015051 #1] INFO -- :
I, [2020-07-03T17:40:55.015594 #1] INFO -- : > su postgres -c 'psql discourse -c "grant all privileges on database discourse to discourse;"' || true
psql: error: could not connect to server: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
I, [2020-07-03T17:40:55.091507 #1] INFO -- :
I, [2020-07-03T17:40:55.091839 #1] INFO -- : > su postgres -c 'psql discourse -c "alter schema public owner to discourse;"'
psql: error: could not connect to server: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
I, [2020-07-03T17:40:55.167810 #1] INFO -- :
I, [2020-07-03T17:40:55.168235 #1] INFO -- : Terminating async processes
I, [2020-07-03T17:40:55.168298 #1] INFO -- : Sending INT to HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/9.5/bin/postmaster -D /etc/postgresql/9.5/main pid: 1586
2020-07-03 17:40:55.168 UTC [1586] LOG: received fast shutdown request
2020-07-03 17:40:55.168 UTC [1586] LOG: aborting any active transactions
2020-07-03 17:40:55.170 UTC [1593] LOG: autovacuum launcher shutting down
2020-07-03 17:40:55.172 UTC [1590] LOG: shutting down
2020-07-03 17:40:55.189 UTC [1590] LOG: database system is shut down
FAILED
--------------------
Pups::ExecError: su postgres -c 'psql discourse -c "alter schema public owner to discourse;"' failed with return #<Process::Status: pid 1618 exit 2>
Location of failure: /pups/lib/pups/exec_command.rb:112:in `spawn'
exec failed with the params "su postgres -c 'psql $db_name -c \"alter schema public owner to $db_user;\"'"
a10b0d1db8256d70432e08508f453835a4bd7dce8f4ac601b6be1031bb3ce01b
** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one.
./discourse-doctor may help diagnose the problem.
root@foro:/var/discourse#
모든 일반적인 해결 방법(그리고 "끄고 다시 켜기"까지 포함)을 시도해 보았지만, 여기서 약간 혼란스럽습니다. 왜 데이터베이스에 접근할 수 있는지 이해할 수 없습니다 ![]()