使用PostgreSQL版本在Kali / Debian上安装OpenVAS的问题

iaqfqrcu  于 2023-10-18  发布在  PostgreSQL
关注(0)|答案(3)|浏览(192)

在Kali Linux上安装OpenVAS后,运行gvm-setup命令按照说明设置GVM:https://linuxhint.com/install-openvas-kali-linux/
但是,出现了以下错误:

ERROR: The default postgresql version is not 13 required by libgvmd
Error: Use pg_upgradecluster to update your postgres cluster

所以,我检查了安装的PostgreSQL版本:

$ su postgres
$ psql --version
psql (PostgreSQL) 13.2 (Debian 13.2-1)

版本是13。如何完成gvm-setup

k2arahey

k2arahey1#

gvm-setup将在port 5432上查找PostgreSQL。如果您安装了多个版本的PostgreSQL,它们将被分配从5432开始的增量端口号。要检查其他版本的PostgreSQL,可以查看/etc/postgresql/目录。您可能会看到多个目录,对应于您安装的PostgreSQL版本。
您应该进入每个版本并编辑postgresql.conf文件,将PostgreSQL 13的端口号更改为5432,并将其他端口号分配给其他版本。如果你安装了PostgreSQL 12和13:
编辑PostgreSQL 12配置文件

$ nano /etc/postgresql/12/main/postgresql.conf

找到port = 5432行,并更改为:

port = 5433

编辑PostgreSQL 13配置文件

$ nano /etc/postgresql/13/main/postgresql.conf

找到port = 5433行,并更改为:

port = 5432

重新启动PostgreSQL:

systemctl restart postgres

然后再次运行gvm-setup

gvm-setup
lsmd5eda

lsmd5eda2#

错误消息告诉你,你应该升级你的postgres集群。您的系统中可能已经创建了一个更高版本的postgres集群,您可以使用以下命令进行检查:

sudo pg_lsclusters

然而,该自动生成的集群可能并不总是按预期运行(例如,它在与默认端口不同的端口上操作)。因此,最好执行手动集群升级(如果没有任何自动生成的集群,可以省略步骤1)。假设您希望从版本13升级到14:
1.删除自动生成的群集版本14(如果服务状态不是down,则使用--stop):

sudo pg_dropcluster --stop 14 main

1.将群集版本13迁移到版本14:

sudo pg_upgradecluster 13 main

1.您可以选择删除旧群集:

sudo pg_dropcluster --stop 13 main

就是这样!新集群将监听旧集群以前使用的端口。可能需要在systemd中启动或启用postgres服务,以便在其他应用程序中使用PostgreSQL。

bvhaajcl

bvhaajcl3#

这段文字是从这个网站https://gorails.com/guides/upgrading-postgresql-version-on-ubuntu-server它为我解决了:

ERROR: The default PostgreSQL version (15) is not 16 that is required by libgvmd
[-] ERROR: Use pg_upgradecluster to update your PostgreSQL cluster

如果你使用的是Ubuntu上的默认版本,你可以通过运行以下命令升级到最新的postgres:

sudo apt-get upgrade

若要查找计算机上当前安装的版本,可以运行以下命令:

$ dpkg --get-selections | grep postgres
postgresql-14                   install
postgresql-15                   install
postgresql-client               install
postgresql-client-14                install
postgresql-client-15                install
postgresql-client-common            install
postgresql-common               install

您还可以通过运行以下命令来列出计算机上的群集

$ pg_lsclusters
Ver Cluster Port Status Owner    Data directory               Log file
14 main    5432 online postgres /var/lib/postgresql/14/main /var/log/postgresql/postgresql-14-main.log
15 main    5433 online postgres /var/lib/postgresql/15/main /var/log/postgresql/postgresql-15-main.log

1.在我们做任何更改之前停止Postgres首先,我们需要停止任何使用postgres的服务,这样我们就可以安全地迁移数据库。

sudo service postgresql stop

1.重新配置新的Postgres版本的默认集群当Postgres软件包安装时,它们会创建一个默认集群供您使用。我们需要重命名新的postgres集群,这样当我们升级旧集群时,名称就不会冲突。

sudo pg_renamecluster 15 main main_pristine

1.将旧集群升级到最新版本将这里的版本(14)替换为您当前使用的旧版本Postgres。

sudo pg_upgradecluster 14 main

1.我们可以再次启动Postgres备份,这一次它应该运行新的postgres 15集群。

sudo service postgresql start

您还应该看到旧集群已关闭,而新版本的Postgres已启动:

$ pg_lsclusters
Ver Cluster       Port Status Owner    Data directory                       Log file
14  main          5434 down   postgres /var/lib/postgresql/14/main          /var/log/postgresql/postgresql-14-main.log
15  main          5432 online postgres /var/lib/postgresql/15/main          /var/log/postgresql/postgresql-15-main.log
15  main_pristine 5433 online postgres /var/lib/postgresql/15/main_pristine /var/log/postgresql/postgresql-15-main_pristine.log

1.删除旧群集在验证新群集工作正常且不再需要旧群集后,您可以选择删除旧群集。

sudo pg_dropcluster 14 main --stop

您也可以从新版本中删除原始数据库。

sudo pg_dropcluster 15 main_pristine --stop`enter code here`

相关问题