From: Marcin Krol Date: Wed, 22 Aug 2018 11:58:14 +0000 (+0000) Subject: - reworked for versioned install to allow multiple versions on same host X-Git-Url: https://git.tld-linux.org/?p=packages%2Fpostgresql.git;a=commitdiff_plain;h=033304e995480cf81544eda98884bd84a4107f5e - reworked for versioned install to allow multiple versions on same host - dropped some foreign package deps - NFY --- diff --git a/per-version-dirs.patch b/per-version-dirs.patch new file mode 100644 index 0000000..46e8c45 --- /dev/null +++ b/per-version-dirs.patch @@ -0,0 +1,44 @@ +--- a/src/Makefile.global.in ++++ b/src/Makefile.global.in +@@ -120,7 +120,7 @@ libdir := @libdir@ + pkglibdir = $(libdir) + ifeq "$(findstring pgsql, $(pkglibdir))" "" + ifeq "$(findstring postgres, $(pkglibdir))" "" +-override pkglibdir := $(pkglibdir)/postgresql ++override pkglibdir := $(pkglibdir)/postgresql/@PG_MAJORVERSION@/lib + endif + endif + +@@ -168,7 +168,7 @@ endif # PGXS + + # These derived path variables aren't separately configurable. + +-includedir_server = $(pkgincludedir)/server ++includedir_server = $(pkgincludedir)/@PG_MAJORVERSION@/server + includedir_internal = $(pkgincludedir)/internal + pgxsdir = $(pkglibdir)/pgxs + +--- a/src/bin/pg_config/pg_config.c ++++ b/src/bin/pg_config/pg_config.c +@@ -27,6 +27,8 @@ + #include "port.h" + #include "common/config_info.h" + ++#include "../port/pg_config_paths.h" ++ + static const char *progname; + + /* +@@ -148,11 +150,7 @@ main(int argc, char **argv) + } + } + +- if (find_my_exec(argv[0], my_exec_path) < 0) +- { +- fprintf(stderr, _("%s: could not find own program executable\n"), progname); +- exit(1); +- } ++ snprintf(my_exec_path, sizeof(my_exec_path), "%s/%s", PGBINDIR, progname); + + configdata = get_configdata(my_exec_path, &configdata_len); + /* no arguments -> print everything */ diff --git a/postgresql.init b/postgresql.init index 647f2ec..ac82745 100644 --- a/postgresql.init +++ b/postgresql.init @@ -21,10 +21,10 @@ cd / PG_INIT_LOCALE=C # Get service config -if [ -f /etc/sysconfig/postgresql ]; then - . /etc/sysconfig/postgresql +if [ -f /etc/sysconfig/postgresql10 ]; then + . /etc/sysconfig/postgresql10 else - nls "Error: %s not found" /etc/sysconfig/postgresql + nls "Error: %s not found" /etc/sysconfig/postgresql10 nls " PostgreSQL can't be run." exit 1 fi @@ -73,7 +73,7 @@ fi pgstatus() { PG_STATUS="unknown" PG_PID="unknown" - output=$(LC_ALL=C TMPDIR=/tmp su postgres -c "/usr/bin/pg_ctl -D $1 status") + output=$(LC_ALL=C TMPDIR=/tmp su postgres -c "@pgsqlbindir@/pg_ctl -D $1 status") status=$? if [ $status -eq 3 ]; then @@ -94,7 +94,7 @@ pgstatus() { pgstart() { is_no "$RC_LOGGING" && fork=--fork msg_starting "PostgreSQL $1" - daemon $fork --user postgres /usr/bin/pg_ctl -s -w -D $1 start + daemon $fork --user postgres @pgsqlbindir@/pg_ctl -s -w -D $1 start } # @@ -106,11 +106,11 @@ pgsubsys() { for pgdir in $PG_DB_CLUSTERS; do pgstatus "$pgdir" if [ "$PG_STATUS" = "running" ]; then - touch /var/lock/subsys/postgresql + touch /var/lock/subsys/postgresql10 return fi done - rm -f /var/lock/subsys/postgresql + rm -f /var/lock/subsys/postgresql10 } # @@ -149,7 +149,7 @@ stop() { busy # is postgresql really alive? if ps -p "$PG_PID" >/dev/null; then - TMPDIR=/tmp su postgres -c "/usr/bin/pg_ctl -w -D $pgdir stop -m fast 2>&1 >/dev/null" + TMPDIR=/tmp su postgres -c "@pgsqlbindir@/pg_ctl -w -D $pgdir stop -m fast 2>&1 >/dev/null" pgstatus "$pgdir" if [ "$PG_STATUS" != "not running" ]; then fail @@ -215,7 +215,7 @@ case "$action" in busy # is postgresql really alive? if ps -p "$PG_PID" >/dev/null; then - TMPDIR=/tmp su postgres -c "/usr/bin/pg_ctl -D $pgdir $pgctlact 2>&1 >/dev/null" + TMPDIR=/tmp su postgres -c "@pgsqlbindir@/pg_ctl -D $pgdir $pgctlact 2>&1 >/dev/null" pgstatus "$pgdir" if [ "$PG_STATUS" = "running" ]; then ok @@ -249,7 +249,7 @@ case "$action" in mkdir -p $pgdir chmod 700 $pgdir chown postgres:postgres $pgdir - LC_ALL=$PG_INIT_LOCALE TMPDIR=/tmp su postgres -s /bin/sh -c "initdb -E UNICODE --data-checksums -D $pgdir" + LC_ALL=$PG_INIT_LOCALE TMPDIR=/tmp su postgres -s /bin/sh -c "@pgsqlbindir@/initdb -E UNICODE --data-checksums -D $pgdir" fi done echo $(nls "REMEMBER to setup password for user \"postgres\"")'!' diff --git a/postgresql.spec b/postgresql.spec index 299f21b..3306e81 100644 --- a/postgresql.spec +++ b/postgresql.spec @@ -1,9 +1,3 @@ -# TODO: -# - python 3 and python 2 subpackages? -# - subpackage *_plperl and *_plpython contribs? -# - think about pg_upgrade integration (sysconfig variable to allow upgrade from 8.3+ without dump/restore?) -# create postgresqlM.N packages with parts of old pgsql required by pg_upgrade -# - test init script (db initialization) # # Conditional build: %bcond_without tests # disable testing @@ -20,7 +14,8 @@ # %define beta %{nil} -%define mver 10 +%define pgver 10 +%define pgminver 5 Summary: PostgreSQL Data Base Management System Summary(de.UTF-8): PostgreSQL Datenbankverwaltungssystem @@ -32,24 +27,24 @@ Summary(ru.UTF-8): PostgreSQL - система управления базами Summary(tr.UTF-8): Veri Tabanı Yönetim Sistemi Summary(uk.UTF-8): PostgreSQL - система керування базами даних Summary(zh_CN.UTF-8): PostgreSQL 客户端程序和库文件 -Name: postgresql -Version: %{mver}.5 -Release: 1 +Name: postgresql%{pgver} +Version: %{pgver}.%{pgminver} +Release: 1.1 License: BSD Group: Applications/Databases -Source0: http://ftp.postgresql.org/pub/source/v%{version}/%{name}-%{version}.tar.bz2 +Source0: http://ftp.postgresql.org/pub/source/v%{version}/postgresql-%{version}.tar.bz2 # Source0-md5: a5fe5fdff2d6c28f65601398be0950df -Source1: %{name}.init +Source1: postgresql.init Source2: pgsql-Database-HOWTO-html.tar.gz # Source2-md5: 5b656ddf1db41965761f85204a14398e -Source3: %{name}.sysconfig -Patch0: %{name}-conf.patch -Patch1: %{name}-absolute_dbpaths.patch -Patch2: %{name}-ecpg-includedir.patch - -Patch4: %{name}-disable_horology_test.patch -Patch5: %{name}-heimdal.patch -Patch6: %{name}-link.patch +Source3: postgresql.sysconfig +Patch0: postgresql-conf.patch +Patch1: postgresql-absolute_dbpaths.patch +Patch2: postgresql-ecpg-includedir.patch +Patch3: per-version-dirs.patch +Patch4: postgresql-disable_horology_test.patch +Patch5: postgresql-heimdal.patch +Patch6: postgresql-link.patch URL: http://www.postgresql.org/ BuildRequires: autoconf >= 2.69 BuildRequires: automake @@ -93,7 +88,7 @@ Requires(pre): /usr/sbin/useradd Requires(triggerpostun): /bin/id Requires(triggerpostun): /usr/sbin/usermod Requires: %{name}-clients >= %{version}-%{release} -Requires: %{name}-libs = %{version}-%{release} +Requires: postgresql-libs = %{version}-%{release} Requires: rc-scripts >= 0.4.3.0 Requires: tzdata Obsoletes: postgresql-module-plpgsql @@ -102,8 +97,10 @@ Obsoletes: postgresql-server Obsoletes: postgresql-test BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) -%define _pgmoduledir %{_libdir}/postgresql -%define _pgsqldir %{_datadir}/postgresql/extension +%define pgsqldatadir %{_datadir}/postgresql/%{pgver} +%define pgsqllibdir %{_libdir}/postgresql/%{pgver} +%define moduledir %{pgsqllibdir}/lib +%define extensiondir %{pgsqldatadir}/extension %define _ulibdir /usr/lib @@ -143,81 +140,6 @@ The name was changed at the end of 1996 to PostgreSQL. PostgreSQL runs on Solaris, SunOS, HPUX, AIX, Linux, Irix, FreeBSD, and most flavours of Unix. -%description -l de.UTF-8 -PostgreSQL Datenbank-Managementsystem (früher als Postgres, dann als -Postgres95 bekannt). - -PostgreSQL ist eine Verbesserung des POSTGRES-DB-Managementsystems, -ein DBMS-Forschungsprototyp der nächsten Generation. Während es das -leistungsfähige Datenmodell und die reichhaltigen Datentypen von -POSTGRES beibehält, ersetzt es die PostQuel-Abfragesprache durch ein -Subset von SQL. PostgreSQL ist gratis, der gesamte Quellcode ist -verfügbar. - -Ein Team von Internet-Entwicklern befaßt sich mit PostgreSQL. Sie alle -sind auf der PostgreSQL-Entwickleradreßliste. Koordinator ist Marc G. -Fournier (scrappy@postgreSQL.org). Das Team ist verantwortlich für -alle aktuellen und künftigen Entwicklungen von PostgreSQL. - -Die Autoren von PostgreSQL 1.01 waren Andrew Yu und Jolly Chen. -Zahlreiche andere haben zur Portierung, zum Testen, Debugging und zur -Verbesserung des Code beigetragen. Den Original-Postgres-Code, von dem -sich PostgreSQL ableitet, verdanken wir der Arbeit vieler Doktoranden, -Studenten und Programmierern unter der Leitung von Professor Michael -Stonebraker an der University of California, Berkeley. - -Der ursprüngliche Name war Postgres. Als 1995 SQL-Funktionalität -hinzukam, wurde der Name in Postgres95 geändert. Ende 1996 schließlich -entschied man sich für PostgreSQL. - -PostgreSQL läuft auf Solaris, SunOS, HPUX, AIX, Linux, Irix, FreeBSD -und den meisten Unix-Systemen. - -%description -l es.UTF-8 -Administrador de Banco de Datos PostgreSQL (conocido anteriormente -como Postgres, y después como Postgres95). PostgreSQL es una -continuación mejorada del Sistema Administrador de Banco de Datos -POSTGRES, que era un prototipo de pesquisa para un SGBD de nueva -generación. Mientras PostgreSQL mantiene el potente modelo de datos y -los varios tipos de datos del POSTGRES, substituye el lenguaje de -consulta PostQuel por un subconjunto extendido de la SQL. PostgreSQL -es libre y tiene los fuentes disponibles. El desarrollo del PostgreSQL -se ejecutado por un equipo de estudiosos de Internet, todos suscritos -en la lista de desarrollo del PostgreSQL. El coordinador actual es -Marc G. Fournier (scrappy@postgreSQL.org). Este equipo es ahora -responsable por el desarrollo actual y futuro del PostgreSQL. - -%description -l fr.UTF-8 -Système de gestion de bases de données PostgreSQL (D'abord nommé -Postgres, puis Postgres95). - -PostgreSQL est une amélioration du système de gestion de bases de -données POSTGRES, un prototype de recherche de la génération suivant -DBMS. Tout en conservant le puissant modèle de donnée de et les types -de donée riches de Postgres, il remplace le langage de requêtes de -Postgres par un sous ensemble etendu de commandes SQL. PosrgreSQL est -libre, et ses sources sont disponibles. - -Le développement de PostgreSQL est actuellement réalisé via internet -parune équipe de développeurs inscrits sur la mailing-list de -développement de PostgreSQL. Le coordinateur actuel est Marc G -Fournier (scrappy@postgreSQL.org). Cette équipe est responsable du -développemen actuel et à venir de PostgreSQL. - -Les auteurs de PostgreSQL 1.01 étaient Andrew Yu et Jolly Chen. -Beaucoup d'autres ont contribué au portage, au test, au débogage et à -l'amélioration du code. Le code original de Postgres, duquel -PostgreSQL est dérivé, a été l'oeuvre d'étudiants de haut niveau, de -moins haut niveau, et de programmeurs travaillant sous la direction du -professeur Michael Stonebraker à l'université de Berkeley Californie. - -Le nom original du logiciel était Postgres. Quand les fonctionnalitées -SQL furent ajoutées en 1995, son nom est devenu Postgres95. Il a été -rebaptisé PostgreSQL en 1996. - -PostgreSQL tourne sur Solaris, SunOS, HPUX, AIX, Linux, Irix, FreeBSD, -et la plupart des Unix. - %description -l pl.UTF-8 System Zarządzania Bazą Danych PostgreSQL (dawniej znany jako Postgres, następnie jako Postgres95). @@ -249,92 +171,7 @@ PostgreSQL. PostgreSQL może być uruchomiony pod następującymi systemami: Solaris, SunOS, HPUX, AIX, Linux, Irix, FreeBSD i innymi systemami uniksowymi. -%description -l pt_BR.UTF-8 -Gerenciador de Banco de Dados PostgreSQL (conhecido anteriormente como -Postgres, e depois como Postgres95). - -O PostgreSQL é uma continuação melhorada do Sistema Gerenciador de -Banco de Dados POSTGRES, que era um protótipo de pesquisa para um SGBD -de nova geração. Enquanto o PostgreSQL mantém o poderoso modelo de -dados e os vários tipos de dados do POSTGRES, ele substitui a -linguagem de consulta PostQuel por um subconjunto estendido da SQL. O -PostgreSQL é livre e tem os fontes disponíveis. - -O desenvolvimento do PostgreSQL está sendo executado por uma equipe de -desenvolvedores da Internet, todos subscritores da lista de -desenvolvimento do PostgreSQL. O coordenador atual é Marc G. Fournier -(scrappy@postgreSQL.org). Esta equipe é agora responsável pelo -desenvolvimento atual e futuro do PostgreSQL. - -%description -l ru.UTF-8 -PostgreSQL - система управления базами данных (прежде известная как -Postgres, потом как Postgres95). - -PostgreSQL - это расширенная версия системы управления базами данных -POSTGRES, исследовательского прототипа DBMS следующей генерации. -Сохраняя мощную модель данных и богатый набор типов данных POSTGRES, -она заменяет язык запросов PostQuel расширенным набором SQL. -PostgreSQL бесплатен и поставляется в виде полного комплекта исходных -текстов. - -PostgreSQL разрабатывался командой Internet-разработчиков, подписанных -на список рассылки, посвященный разработке PostgreSQL. В настоящее -время координатором является Marc G. Fournier -(scrappy@postgreSQL.org). Эта команда в настоящее время отвечает за -все текущие и будущие разработки PostgreSQL. - -Авторами PostgreSQL 1.01 были Andrew Yu и Jolly Chen. Многие внесли -свой вклад в портирование, тестирование, отладку и улучшение кода. -Оригинальный код Postgres, от которого произошел PostgreSQL, был -создан усилиями студентов, аспирантов и персонала, работающего под -руководством профессора Michael Stonebraker в University of -California, Berkeley. - -Оригинальное название ПО в Berkeley было Postgres. Когда в 1995 году -была добавлена функциональность SQL, название изменилось на -Postgres95. В конце 1996 года оно еще раз изменилось и теперь это -PostgreSQL. - -PostgreSQL работает на Solaris, SunOS, HPUX, AIX, Linux, Irix, FreeBSD -и большинстве других разновидностей Unix. - -%description -l tr.UTF-8 -PostgreSQL, POSTGRES'den türemiş bir veri tabanı yönetim sistemidir -(DBMS). Güçlü veri modeli ve zengin POSTGRES veri tiplerini -desteklerken SQL'in genişletilmiş bir altkümesi yerine PostQuel -sorgulama dilini koyar. - -%description -l uk.UTF-8 -PostgreSQL - система керування базами даних (раніш відома як Postgres, -потім як Postgres95). - -PostgreSQL - це розширена версія системи керування базами даних -POSTGRES, дослідницького прототипу DBMS наступної генерації. -Зберігаючи потужну модель даних та багатий набір типів даних POSTGRES, -вона замінює мову запитів PostQuel розширеним набором SQL. PostgreSQL -безкоштовна та поставляється у вигляді повного комплекту вихідних -текстів. - -PostgreSQL розробляється командою Internet-програмістів, учасників -списку розсилки, присвяченого розробці PostgreSQL. Наразі -координатором є Marc G. Fournier (scrappy@postgreSQL.org). Ця команда -відповідає за всі поточні та майбутні розробки PostgreSQL. - -Авторами PostgreSQL 1.01 були Andrew Yu та Jolly Chen. Багато людей -внесли свій внесок в портування, тестування, відладку та покращення -коду. Оригінальний код Postgres, від якого походить PostgreSQL, був -створений зусиллями студентів, аспірантів та персоналу, який працював -під керівництвом професора Michael Stonebraker в University of -California, Berkeley. - -Оригінальна назва програми в Berkeley була Postgres. Коли в 1995 році -було додано функціональність SQL, назва змінилася на Postgres95. В -кінці 1996 року вона ще раз змінилась і зараз це PostgreSQL. - -PostgreSQL працює на Solaris, SunOS, HPUX, AIX, Linux, Irix, FreeBSD -та більшості інших різновидів Unix. - -%package devel +%package -n postgresql-devel Summary: PostgreSQL development header files and libraries Summary(de.UTF-8): PostgreSQL-Entwicklungs-Header-Dateien und Libraries Summary(es.UTF-8): Archivos de inclusión y bibliotecas PostgreSQL @@ -345,55 +182,23 @@ Summary(ru.UTF-8): PostgreSQL - хедеры и библиотеки разра Summary(tr.UTF-8): PostgreSQL başlık dosyaları ve kitaplıklar Summary(uk.UTF-8): PostgreSQL - хедери та бібліотеки програміста Group: Development/Libraries -Requires: %{name}-libs = %{version}-%{release} +Requires: postgresql-libs = %{version}-%{release} -%description devel +%description -n postgresql-devel This package contains header files and libraries required to compile applications that are talking directly to the PostgreSQL backend server. -%description devel -l de.UTF-8 -Dieses Paket enthält die Header-Dateien und Libraries, die zum -Kompilieren von Applikationen notwendig sind, die direkt mit dem -PostgreSQL-Backend-Server kommunizieren. - -%description devel -l es.UTF-8 -Este paquete contiene archivos de inclusión y bibliotecas requeridas -para compilación de aplicativos que se comunican directamente con el -servidor backend PostgreSQL. - -%description devel -l fr.UTF-8 -Ce package contient les fichiers d'en-tête et les bibliothéques -nécessaires pour compiler des applications ayant des échanges directs -avec le serveur du backend PostgreSQL. - -%description devel -l pl.UTF-8 +%description -n postgresql-devel -l pl.UTF-8 Pakiet zawiera nagłówki oraz biblioteki wymagane do kompilacji aplikacji łączących się bezpośrednio z serwerem PostgreSQL. -%description devel -l pt_BR.UTF-8 -Este pacote contém arquivos de inclusão e bibliotecas requeridas para -compilação de aplicativos que se comunicam diretamente com o servidor -backend PostgreSQL. - -%description devel -l ru.UTF-8 -Этот пакет содержит хедеры и библиотеки, необходимые для сборки -приложений, непосредственно взаимодействующих с сервером PostgreSQL. - -%description devel -l tr.UTF-8 -Bu paket, PostgreSQL sunucusuyla konuşacak yazılımlar geliştirmek için -gereken başlık dosyalarını ve kitaplıkları içerir. - -%description devel -l uk.UTF-8 -Цей пакет містить хедери та бібліотеки, необхідні для розробки -програм, які безпосередньо взаємодіють з сервером PostgreSQL. - %package backend-devel Summary: PostgreSQL backend development header files Summary(pl.UTF-8): PostgreSQL - pliki nagłówkowe dla backendu Group: Development/Libraries -Requires: %{name}-devel = %{version}-%{release} -Requires: %{name}-libs = %{version}-%{release} +Requires: postgresql-devel = %{version}-%{release} +Requires: postgresql-libs = %{version}-%{release} %description backend-devel This package contains header files required to compile functions that @@ -411,7 +216,8 @@ Summary(pt_BR.UTF-8): Clientes necessários para acessar o servidor PostgreSQL Summary(ru.UTF-8): Клиентские программы, необходимые для доступа к серверу PostgreSQL Summary(uk.UTF-8): Клієнтські програми, необхідні для доступу до сервера PostgreSQL Group: Applications/Databases -Requires: %{name}-libs = %{version}-%{release} +Requires: alternatives +Requires: postgresql-libs = %{version}-%{release} %description clients This package includes only the clients needed to access an PostgreSQL @@ -420,38 +226,11 @@ to connect to another PostgreSQL server, the this is the only package you need to install. Clients include several command-line utilities you can use to manage your databases on a remote PostgreSQL server. -%description clients -l es.UTF-8 -Este paquete incluye solamente los clientes necesarios para acceder un -servidor PostgreSQL. El servidor está en el paquete principal. - %description clients -l pl.UTF-8 Pakiet zawiera programy klienckie potrzebne dla dostępu do serwera PostgreSQL oraz narzędzia do zarządzania bazami działające z linii poleceń. Serwer znajduje się w głównym pakiecie. -%description clients -l pt_BR.UTF-8 -Este pacote inclui somente os clientes necessários para acessar um -servidor PostgreSQL. O servidor está no pacote principal. - -%description clients -l ru.UTF-8 -Этот пакет включает только клиентские программы и библиотеки, -необходимые для доступа к серверу PostgreSQL. Сервер входит в главный -пакет. Если вам надо только работать с другим сервером PostgreSQL, это -единственный пакет, который вам надо установить. - -Теперь пакеты с библиотеками для разных языков программирования (C, -C++, Perl и Tcl) разделены. Этот пакет включает только библиотеки для -языка C. - -%description clients -l uk.UTF-8 -Цей пакет містить тільки клієнтські програми та бібліотеки, необхідні -для доступу до сервера PostgreSQL. Сервер міститься в головному -пакеті. Якщо вам потрібно працювати з іншим сервером PostgreSQL, це -єдиний пакет, який вам треба встановити. - -Тепер пакети з бібліотеками для різних мов програмування (C, C++, Perl -і Tcl) розділені. Цей пакет містить тільки бібліотеки для мови C. - %package doc Summary: Documentation for PostgreSQL Summary(pl.UTF-8): Dodatkowa dokumantacja dla PostgreSQL @@ -465,7 +244,7 @@ etc., in HTML format. Pakiet ten zawiera dokumentację oraz HOWTO m.in. dla programistów, administratorów w formacie HTML. -%package libs +%package -n postgresql-libs Summary: PostgreSQL libraries Summary(es.UTF-8): Biblioteca compartida del PostgreSQL Summary(pl.UTF-8): Biblioteki dzielone programu PostgreSQL @@ -473,25 +252,18 @@ Summary(pt_BR.UTF-8): Biblioteca compartilhada do PostgreSQL Summary(zh_CN.UTF-8): PostgreSQL 客户所需要的共享库 Group: Libraries -%description libs +%description -n postgresql-libs PostgreSQL shared libraries. -%description libs -l es.UTF-8 -Este paquete contiene la biblioteca compartida para acceso al -PostgreSQL. - -%description libs -l pl.UTF-8 +%description -n postgresql-libs -l pl.UTF-8 Biblioteki dzielone programu PostgreSQL. -%description libs -l pt_BR.UTF-8 -Este pacote contém a biblioteca compartilhada para acesso ao -PostgreSQL. - %package ecpg Summary: Embedded SQL in C interface Summary(pl.UTF-8): Interfejs wbudowanego SQL-a w język C Group: Libraries -Requires: %{name}-libs = %{version}-%{release} +Requires: postgresql-libs = %{version}-%{release} +Requires: postgresql-ecpg-libs = %{version}-%{release} %description ecpg Embedded SQL in C interface. @@ -499,20 +271,34 @@ Embedded SQL in C interface. %description ecpg -l pl.UTF-8 Interfejs wbudowanego SQL-a w język C. -%package ecpg-devel +%package -n postgresql-ecpg-libs +Summary: PostgreSQL libraries +Summary(es.UTF-8): Biblioteca compartida del PostgreSQL +Summary(pl.UTF-8): Biblioteki dzielone programu PostgreSQL +Summary(pt_BR.UTF-8): Biblioteca compartilhada do PostgreSQL +Summary(zh_CN.UTF-8): PostgreSQL 客户所需要的共享库 +Group: Libraries + +%description -n postgresql-ecpg-libs +PostgreSQL shared libraries. + +%description -n postgresql-ecpg-libs -l pl.UTF-8 +Biblioteki dzielone programu PostgreSQL. + +%package -n postgresql-ecpg-devel Summary: Embedded SQL in C interface files Summary(pl.UTF-8): Pliki programistyczne interfejsu wbudowanego SQL-a w język C Group: Development/Libraries -Requires: %{name}-devel = %{version}-%{release} -Requires: %{name}-ecpg = %{version}-%{release} +Requires: postgresql-devel = %{version}-%{release} +Requires: postgresql-ecpg-devel = %{version}-%{release} -%description ecpg-devel +%description -n postgresql-ecpg-devel Embedded SQL in C interface files. -%description ecpg-devel -l pl.UTF-8 +%description -n postgresql-ecpg-devel -l pl.UTF-8 Pliki programistyczne interfejsu wbudowanego SQL-a w język C. -%package static +%package -n postgresql-ecpg-static Summary: PostgreSQL static libraries Summary(es.UTF-8): Bibliotecas estaticas PostgreSQL Summary(pl.UTF-8): Biblioteki statyczne programu PostgreSQL @@ -520,31 +306,29 @@ Summary(pt_BR.UTF-8): Bibliotecas estáticas PostgreSQL Summary(ru.UTF-8): Статические библиотеки для программирования с PostgreSQL Summary(uk.UTF-8): Статичні бібліотеки для програмування з PostgreSQL Group: Development/Libraries -Requires: %{name}-devel = %{version}-%{release} +Requires: postgresql-devel = %{version}-%{release} -%description static +%description -n postgresql-ecpg-static PostgreSQL static libraries. -%description static -l es.UTF-8 -Este paquete contiene bibliotecas estaticas requerida para compilación -de aplicativos que se comunican directamente con el servidor backend -PostgreSQL. - -%description static -l pl.UTF-8 +%description -n postgresql-ecpg-static -l pl.UTF-8 Biblioteki statyczne programu PostgreSQL. -%description static -l pt_BR.UTF-8 -Este pacote contém as bibliotecas estáticas requeridas para compilação -de aplicativos que se comunicam diretamente com o servidor backend -PostgreSQL. +%package -n postgresql-static +Summary: PostgreSQL static libraries +Summary(es.UTF-8): Bibliotecas estaticas PostgreSQL +Summary(pl.UTF-8): Biblioteki statyczne programu PostgreSQL +Summary(pt_BR.UTF-8): Bibliotecas estáticas PostgreSQL +Summary(ru.UTF-8): Статические библиотеки для программирования с PostgreSQL +Summary(uk.UTF-8): Статичні бібліотеки для програмування з PostgreSQL +Group: Development/Libraries +Requires: postgresql-devel = %{version}-%{release} -%description static -l ru.UTF-8 -Это отдельный пакет со статическими библиотеками, которые больше не -входят в %{name}-devel. +%description -n postgresql-static +PostgreSQL static libraries. -%description static -l uk.UTF-8 -Це окремий пакет зі статичними бібліотеками, які більш не входять в -%{name}-devel. +%description -n postgresql-static -l pl.UTF-8 +Biblioteki statyczne programu PostgreSQL. %package module-plperl Summary: PL/perl - PostgreSQL procedural language @@ -760,11 +544,11 @@ Miscellaneous PostgreSQL contrib modules. Różne moduły dołączone do PostgreSQL-a. %prep -%setup -q +%setup -q -n postgresql-%{version} %patch0 -p1 %{?with_absolute_dbpaths:%patch1 -p1} %patch2 -p1 - +%patch3 -p1 %patch4 -p1 %patch5 -p1 %patch6 -p1 @@ -781,6 +565,14 @@ find src -name \*.l -o -name \*.y | xargs touch %{__autoheader} %configure \ CFLAGS="%{rpmcflags} -DNEED_REENTRANT_FUNCS `uuid-config --cflags`" \ + --prefix=%{pgsqldatadir} \ + --bindir=%{pgsqllibdir}/bin \ + --sbindir=%{pgsqllibdir}/sbin \ + --includedir=%{_includedir} \ + --mandir=%{pgsqldatadir}/man \ + --datadir=%{pgsqldatadir} \ + --libdir=%{_libdir} \ + --docdir=%{pgsqldatadir}/doc \ --disable-rpath \ --enable-depend \ %{?with_systemtap:--enable-dtrace} \ @@ -821,7 +613,7 @@ done %install rm -rf $RPM_BUILD_ROOT install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/{rc.d/init.d,sysconfig}} \ - $RPM_BUILD_ROOT{/var/{lib/pgsql,log},%{_pgsqldir}} \ + $RPM_BUILD_ROOT/var/{lib/pgsql,log} \ $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} \ $RPM_BUILD_ROOT%{_mandir} \ $RPM_BUILD_ROOT/home/services/postgres @@ -845,8 +637,8 @@ done touch $RPM_BUILD_ROOT/var/log/pgsql -install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/postgresql -install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/postgresql +sed -e 's,@pgsqlbindir@,%{pgsqllibdir}/bin,g' %{SOURCE1} >$RPM_BUILD_ROOT/etc/rc.d/init.d/postgresql10 +install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/postgresql10 install -d howto tar zxf %{SOURCE2} -C howto @@ -860,38 +652,37 @@ tar zxf %{SOURCE2} -C howto for f in libpq5 pgscripts postgres psql initdb ecpg ecpglib6 \ plpgsql %{?with_perl:plperl} %{?with_python:plpython} \ pg_archivecleanup pg_basebackup pg_config pg_controldata pg_ctl pg_dump pg_resetwal pg_rewind pg_test_fsync pg_test_timing pg_upgrade pg_waldump; do - %find_lang $f-%{mver} + %find_lang $f-%{pgver} done # merge locales merge_lang() { - cat $(for f in $@; do echo ${f}-%{mver}.lang ; done) + cat $(for f in $@; do echo ${f}-%{pgver}.lang ; done) } merge_lang pgscripts postgres plpgsql \ pg_basebackup pg_controldata pg_resetwal pg_rewind pg_upgrade pg_test_fsync pg_test_timing pg_waldump > main.lang merge_lang psql initdb \ pg_archivecleanup pg_ctl pg_dump > clients.lang -merge_lang ecpg ecpglib6 > ecpg.lang %if %{with tcl} -%find_lang pltcl-%{mver} +%find_lang pltcl-%{pgver} %endif %if %{with selinux} -%{__mv} $RPM_BUILD_ROOT{%{_datadir}/postgresql/contrib,%{_pgsqldir}}/sepgsql.sql +%{__mv} $RPM_BUILD_ROOT{%{pgsqldatadir}/contrib,%{extensiondir}}/sepgsql.sql %endif -cp -p src/pl/plperl/ppport.h $RPM_BUILD_ROOT%{_includedir}/postgresql/server/ +cp -p src/pl/plperl/ppport.h $RPM_BUILD_ROOT%{_includedir}/postgresql/%{pgver}/server/ # package it...? nah, why bother. -%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/doc/postgresql/html +%{__rm} -r $RPM_BUILD_ROOT%{pgsqldatadir}/doc/html %clean rm -rf $RPM_BUILD_ROOT %pre PG_DB_CLUSTERS="" -if [ -f /etc/sysconfig/postgresql ]; then - . /etc/sysconfig/postgresql +if [ -f /etc/sysconfig/postgresql10 ]; then + . /etc/sysconfig/postgresql10 if [ -z "$PG_DB_CLUSTERS" -a -n "$POSTGRES_DATA_DIR" ]; then PG_DB_CLUSTERS="$POSTGRES_DATA_DIR" fi @@ -899,7 +690,7 @@ fi foundold=0 for pgdir in $PG_DB_CLUSTERS; do if [ -f $pgdir/PG_VERSION ]; then - if [ $(cat $pgdir/PG_VERSION) != '%{mver}' ]; then + if [ $(cat $pgdir/PG_VERSION) != '%{pgver}' ]; then echo "Found database(s) in older, incompatible format in cluster $pgdir." foundold=1 fi @@ -915,14 +706,6 @@ if [ "$foundold" = "1" ]; then echo "Alternatively you can use pg_upgrade for 8.3+ online upgrade with" echo "some restrictions: http://www.postgresql.org/docs/10.0/static/pgupgrade.html" echo - echo "Warning for upgrade from version *before* 7.2." - echo "Please note, that postgresql module path changed from" - echo "%{_libdir}/pgsql/module to %{_libdir}/postgresql. Change the path" - echo "in dump file before restore." - echo - echo "Warning for upgrade from version *before* 7.3." - echo "Reading following webpage is encouraged:" - echo "http://www.ca.postgresql.org/docs/momjian/upgrade_tips_7.3" exit 1 fi %groupadd -g 88 -r postgres @@ -934,127 +717,192 @@ if [ -n "`/bin/id -u postgres 2>/dev/null`" ]; then fi %post -/sbin/chkconfig --add postgresql -%service postgresql restart "postgresql server" +/sbin/chkconfig --add postgresql10 +%service postgresql10 restart "postgresql10 server" %preun if [ "$1" = "0" ]; then - %service postgresql stop - /sbin/chkconfig --del postgresql + %service postgresql10 stop + /sbin/chkconfig --del postgresql10 +fi + +%post clients +update-alternatives \ + --install %{_bindir}/clusterdb clusterdb %{pgsqllibdir}/bin/clusterdb %{pgver}%{pgminver} \ + --slave %{_mandir}/man1/clusterdb.1 clusterdb.1 %{pgsqldatadir}/man/man1/clusterdb.1* || : +update-alternatives \ + --install %{_bindir}/createdb createdb %{pgsqllibdir}/bin/createdb %{pgver}%{pgminver} \ + --slave %{_mandir}/man1/createdb.1 createdb.1 %{pgsqldatadir}/man/man1/createdb.1* || : +update-alternatives \ + --install %{_bindir}/createuser createuser %{pgsqllibdir}/bin/createuser %{pgver}%{pgminver} \ + --slave %{_mandir}/man1/createuser.1 createuser.1 %{pgsqldatadir}/man/man1/createuser.1* || : +update-alternatives \ + --install %{_bindir}/dropdb dropdb %{pgsqllibdir}/bin/dropdb %{pgver}%{pgminver} \ + --slave %{_mandir}/man1/dropdb.1 dropdb.1 %{pgsqldatadir}/man/man1/dropdb.1* || : +update-alternatives \ + --install %{_bindir}/dropuser dropuser %{pgsqllibdir}/bin/dropuser %{pgver}%{pgminver} \ + --slave %{_mandir}/man1/dropuser.1 dropuser.1 %{pgsqldatadir}/man/man1/dropuser.1* || : +update-alternatives \ + --install %{_bindir}/pg_archivecleanup pg_archivecleanup %{pgsqllibdir}/bin/pg_archivecleanup %{pgver}%{pgminver} \ + --slave %{_mandir}/man1/pg_archivecleanup.1 pg_archivecleanup.1 %{pgsqldatadir}/man/man1/pg_archivecleanup.1* || : +update-alternatives \ + --install %{_bindir}/pg_dump pg_dump %{pgsqllibdir}/bin/pg_dump %{pgver}%{pgminver} \ + --slave %{_mandir}/man1/pg_dump.1 pg_dump.1 %{pgsqldatadir}/man/man1/pg_dump.1* || : +update-alternatives \ + --install %{_bindir}/pg_dumpall pg_dumpall %{pgsqllibdir}/bin/pg_dumpall %{pgver}%{pgminver} \ + --slave %{_mandir}/man1/pg_dumpall.1 pg_dumpall.1 %{pgsqldatadir}/man/man1/pg_dumpall.1* || : +update-alternatives \ + --install %{_bindir}/pg_isready pg_isready %{pgsqllibdir}/bin/pg_isready %{pgver}%{pgminver} \ + --slave %{_mandir}/man1/pg_isready.1 pg_isready.1 %{pgsqldatadir}/man/man1/pg_isready.1* || : +update-alternatives \ + --install %{_bindir}/pg_restore pg_restore %{pgsqllibdir}/bin/pg_restore %{pgver}%{pgminver} \ + --slave %{_mandir}/man1/pg_restore.1 pg_restore.1 %{pgsqldatadir}/man/man1/pg_restore.1* || : +update-alternatives \ + --install %{_bindir}/psql psql %{pgsqllibdir}/bin/psql %{pgver}%{pgminver} \ + --slave %{_mandir}/man1/psql.1 pgsql.1 %{pgsqldatadir}/man/man1/psql.1* || : +update-alternatives \ + --install %{_bindir}/reindexdb reindexdb %{pgsqllibdir}/bin/reindexdb %{pgver}%{pgminver} \ + --slave %{_mandir}/man1/reindexdb.1 reindexdb.1 %{pgsqldatadir}/man/man1/reindexdb.1* || : +update-alternatives \ + --install %{_bindir}/vacuumdb vacuumdb %{pgsqllibdir}/bin/vacuumdb %{pgver}%{pgminver} \ + --slave %{_mandir}/man1/vacuumdb.1 vacuumdb.1 %{pgsqldatadir}/man/man1/vacuumdb.1* || : + +%postun clients +if [ $1 -eq 0 ]; then + update-alternatives --remove clusterdb %{pgsqllibdir}/bin/clusterdb || : + update-alternatives --remove createdb %{pgsqllibdir}/bin/createdb || : + update-alternatives --remove createuser %{pgsqllibdir}/bin/createuser || : + update-alternatives --remove dropdb %{pgsqllibdir}/bin/dropdb || : + update-alternatives --remove dropuser %{pgsqllibdir}/bin/dropuser || : + update-alternatives --remove pg_archivecleanup %{pgsqllibdir}/bin/pg_archivecleanup || : + update-alternatives --remove pg_dump %{pgsqllibdir}/bin/pg_dump || : + update-alternatives --remove pg_dumpall %{pgsqllibdir}/bin/pg_dumpall || : + update-alternatives --remove pg_isready %{pgsqllibdir}/bin/pg_isready || : + update-alternatives --remove pg_restore %{pgsqllibdir}/bin/pg_restore || : + update-alternatives --remove psql %{pgsqllibdir}/bin/psql || : + update-alternatives --remove reindexdb %{pgsqllibdir}/bin/reindexdb || : + update-alternatives --remove vacuumdb %{pgsqllibdir}/bin/vacuumdb || : fi -%post libs -p /sbin/ldconfig -%postun libs -p /sbin/ldconfig +%post -n postgresql-libs -p /sbin/ldconfig +%postun -n postgresql-libs -p /sbin/ldconfig -%post ecpg -p /sbin/ldconfig -%postun ecpg -p /sbin/ldconfig +%post -n postgresql-ecpg-libs -p /sbin/ldconfig +%postun -n postgresql-ecpg-libs -p /sbin/ldconfig %files -f main.lang %defattr(644,root,root,755) %doc COPYRIGHT README HISTORY doc/{bug.template,KNOWN_BUGS,MISSING_FEATURES,TODO} -%attr(754,root,root) /etc/rc.d/init.d/postgresql -%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/postgresql - -%attr(755,root,root) %{_bindir}/initdb -%attr(755,root,root) %{_bindir}/pg_basebackup -%attr(755,root,root) %{_bindir}/pg_controldata -%attr(755,root,root) %{_bindir}/pg_ctl -%attr(755,root,root) %{_bindir}/pg_resetwal -%attr(755,root,root) %{_bindir}/pg_receivewal -%attr(755,root,root) %{_bindir}/pg_recvlogical -%attr(755,root,root) %{_bindir}/pg_rewind -%attr(755,root,root) %{_bindir}/pg_test_fsync -%attr(755,root,root) %{_bindir}/pg_test_timing -%attr(755,root,root) %{_bindir}/pg_upgrade -%attr(755,root,root) %{_bindir}/pg_waldump -%attr(755,root,root) %{_bindir}/pgbench -%attr(755,root,root) %{_bindir}/postgres -%attr(755,root,root) %{_bindir}/postmaster - -%attr(755,root,root) %{_pgmoduledir}/ascii_and_mic.so -%attr(755,root,root) %{_pgmoduledir}/cyrillic_and_mic.so -%attr(755,root,root) %{_pgmoduledir}/dict_int.so -%attr(755,root,root) %{_pgmoduledir}/dict_snowball.so -%attr(755,root,root) %{_pgmoduledir}/dict_xsyn.so -%attr(755,root,root) %{_pgmoduledir}/euc*.so -%attr(755,root,root) %{_pgmoduledir}/latin2_and_win1250.so -%attr(755,root,root) %{_pgmoduledir}/latin_and_mic.so -%attr(755,root,root) %{_pgmoduledir}/libpqwalreceiver.so -%attr(755,root,root) %{_pgmoduledir}/pgoutput.so -%attr(755,root,root) %{_pgmoduledir}/plpgsql.so -%attr(755,root,root) %{_pgmoduledir}/utf8_and_*.so - -%dir %{_pgsqldir} -%{_pgsqldir}/plpgsql--*.sql -%{_pgsqldir}/plpgsql.control - -%dir %{_datadir}/postgresql -%{_datadir}/postgresql/*.bki -%{_datadir}/postgresql/*.sample -%{_datadir}/postgresql/*.description -%{_datadir}/postgresql/*.shdescription -%{_datadir}/postgresql/*.sql -%{_datadir}/postgresql/*.txt -%{_datadir}/postgresql/timezonesets -%{_datadir}/postgresql/tsearch_data - -%dir %{_datadir}/postgresql/contrib +%attr(754,root,root) /etc/rc.d/init.d/postgresql10 +%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/postgresql10 + +%attr(755,root,root) %{pgsqllibdir}/bin/initdb +%attr(755,root,root) %{pgsqllibdir}/bin/pg_basebackup +%attr(755,root,root) %{pgsqllibdir}/bin/pg_controldata +%attr(755,root,root) %{pgsqllibdir}/bin/pg_ctl +%attr(755,root,root) %{pgsqllibdir}/bin/pg_resetwal +%attr(755,root,root) %{pgsqllibdir}/bin/pg_receivewal +%attr(755,root,root) %{pgsqllibdir}/bin/pg_recvlogical +%attr(755,root,root) %{pgsqllibdir}/bin/pg_rewind +%attr(755,root,root) %{pgsqllibdir}/bin/pg_test_fsync +%attr(755,root,root) %{pgsqllibdir}/bin/pg_test_timing +%attr(755,root,root) %{pgsqllibdir}/bin/pg_upgrade +%attr(755,root,root) %{pgsqllibdir}/bin/pg_waldump +%attr(755,root,root) %{pgsqllibdir}/bin/pgbench +%attr(755,root,root) %{pgsqllibdir}/bin/postgres +%attr(755,root,root) %{pgsqllibdir}/bin/postmaster + +%attr(755,root,root) %{moduledir}/ascii_and_mic.so +%attr(755,root,root) %{moduledir}/cyrillic_and_mic.so +%attr(755,root,root) %{moduledir}/dict_int.so +%attr(755,root,root) %{moduledir}/dict_snowball.so +%attr(755,root,root) %{moduledir}/dict_xsyn.so +%attr(755,root,root) %{moduledir}/euc*.so +%attr(755,root,root) %{moduledir}/latin2_and_win1250.so +%attr(755,root,root) %{moduledir}/latin_and_mic.so +%attr(755,root,root) %{moduledir}/libpqwalreceiver.so +%attr(755,root,root) %{moduledir}/pgoutput.so +%attr(755,root,root) %{moduledir}/plpgsql.so +%attr(755,root,root) %{moduledir}/utf8_and_*.so + +%dir %{extensiondir} +%{extensiondir}/plpgsql--*.sql +%{extensiondir}/plpgsql.control + +%dir %{pgsqldatadir} +%{pgsqldatadir}/*.bki +%{pgsqldatadir}/*.sample +%{pgsqldatadir}/*.description +%{pgsqldatadir}/*.shdescription +%{pgsqldatadir}/*.sql +%{pgsqldatadir}/*.txt +%{pgsqldatadir}/timezonesets +%{pgsqldatadir}/tsearch_data + +%dir %{pgsqldatadir}/contrib %attr(700,postgres,postgres) /home/services/postgres %attr(700,postgres,postgres) %dir /var/lib/pgsql %attr(640,postgres,postgres) %config(noreplace) %verify(not md5 mtime size) /var/log/pgsql -%{_mandir}/man1/initdb.1* -%{_mandir}/man1/pg_basebackup.1* -%{_mandir}/man1/pg_controldata.1* -%{_mandir}/man1/pg_ctl.1* -%{_mandir}/man1/pg_resetwal.1* -%{_mandir}/man1/pg_receivewal.1* -%{_mandir}/man1/pg_recvlogical.1* -%{_mandir}/man1/pg_rewind.1* -%{_mandir}/man1/pg_waldump.1* -%{_mandir}/man1/pg_test_fsync.1* -%{_mandir}/man1/pg_test_timing.1* -%{_mandir}/man1/pg_upgrade.1* -%{_mandir}/man1/pgbench.1* -%{_mandir}/man1/postgres.1* -%{_mandir}/man1/postmaster.1* +%{pgsqldatadir}/man/man1/initdb.1* +%{pgsqldatadir}/man/man1/pg_basebackup.1* +%{pgsqldatadir}/man/man1/pg_controldata.1* +%{pgsqldatadir}/man/man1/pg_ctl.1* +%{pgsqldatadir}/man/man1/pg_resetwal.1* +%{pgsqldatadir}/man/man1/pg_receivewal.1* +%{pgsqldatadir}/man/man1/pg_recvlogical.1* +%{pgsqldatadir}/man/man1/pg_rewind.1* +%{pgsqldatadir}/man/man1/pg_waldump.1* +%{pgsqldatadir}/man/man1/pg_test_fsync.1* +%{pgsqldatadir}/man/man1/pg_test_timing.1* +%{pgsqldatadir}/man/man1/pg_upgrade.1* +%{pgsqldatadir}/man/man1/pgbench.1* +%{pgsqldatadir}/man/man1/postgres.1* +%{pgsqldatadir}/man/man1/postmaster.1* %files doc %defattr(644,root,root,755) %doc doc/src/sgml/html howto %{_examplesdir}/%{name}-%{version} -%files libs -f libpq5-%{mver}.lang +%files -n postgresql-libs -f libpq5-%{pgver}.lang %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libpq.so.*.* %attr(755,root,root) %ghost %{_libdir}/libpq.so.5 -%dir %{_pgmoduledir} -%files ecpg -f ecpg.lang +%files ecpg -f ecpg-%{pgver}.lang %defattr(644,root,root,755) -%attr(755,root,root) %{_bindir}/ecpg +%attr(755,root,root) %{pgsqllibdir}/bin/ecpg +%{pgsqldatadir}/man/man1/ecpg.1* + +%files -n postgresql-ecpg-libs -f ecpglib6-%{pgver}.lang %attr(755,root,root) %{_libdir}/libecpg.so.*.* %attr(755,root,root) %ghost %{_libdir}/libecpg.so.6 %attr(755,root,root) %{_libdir}/libecpg_compat.so.*.* %attr(755,root,root) %ghost %{_libdir}/libecpg_compat.so.3 %attr(755,root,root) %{_libdir}/libpgtypes.so.*.* %attr(755,root,root) %ghost %{_libdir}/libpgtypes.so.3 -%{_mandir}/man1/ecpg.1* -%files ecpg-devel +%files -n postgresql-ecpg-devel %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libecpg.so %attr(755,root,root) %{_libdir}/libecpg_compat.so %attr(755,root,root) %{_libdir}/libpgtypes.so %{_includedir}/ecpg* -%{_pkgconfigdir}/libecpg.pc -%{_pkgconfigdir}/libecpg_compat.pc -%{_pkgconfigdir}/libpgtypes.pc +%{_libdir}/pkgconfig/libecpg.pc +%{_libdir}/pkgconfig/libecpg_compat.pc +%{_libdir}/pkgconfig/libpgtypes.pc -%files devel -f pg_config-%{mver}.lang +%files -n postgresql-ecpg-static %defattr(644,root,root,755) -%attr(755,root,root) %{_bindir}/pg_config +%{_libdir}/libecpg.a +%{_libdir}/libecpg_compat.a +%{_libdir}/libpgtypes.a + +%files -n postgresql-devel -f pg_config-%{pgver}.lang +%defattr(644,root,root,755) +%attr(755,root,root) %{pgsqllibdir}/bin/pg_config %attr(755,root,root) %{_libdir}/libpq.so %dir %{_includedir}/postgresql %{_includedir}/libpq-events.h @@ -1072,256 +920,254 @@ fi %{_includedir}/postgresql/internal/pqexpbuffer.h %{_includedir}/postgresql/internal/libpq %{_includedir}/libpq -%{_pkgconfigdir}/libpq.pc -%{_mandir}/man1/pg_config.1* +%{_libdir}/pkgconfig/libpq.pc +%{pgsqldatadir}/man/man1/pg_config.1* %files backend-devel %defattr(644,root,root,755) -%{_includedir}/postgresql/server -%dir %{_pgmoduledir}/pgxs -%attr(755,root,root) %{_pgmoduledir}/pgxs/config -%{_pgmoduledir}/pgxs/src -%{_mandir}/man3/SPI_*.3* - -%files static +%dir %{_includedir}/postgresql/%{pgver} +%{_includedir}/postgresql/%{pgver}/server +%dir %{moduledir}/pgxs +%attr(755,root,root) %{moduledir}/pgxs/config +%{moduledir}/pgxs/src +%{pgsqldatadir}/man/man3/SPI_*.3* + +%files -n postgresql-static %defattr(644,root,root,755) -%{_libdir}/libecpg.a -%{_libdir}/libecpg_compat.a %{_libdir}/libpq.a %{_libdir}/libpgcommon.a %{_libdir}/libpgfeutils.a -%{_libdir}/libpgtypes.a %{_libdir}/libpgport.a %files clients -f clients.lang %defattr(644,root,root,755) -%attr(755,root,root) %{_bindir}/clusterdb -%attr(755,root,root) %{_bindir}/createdb -%attr(755,root,root) %{_bindir}/createuser -%attr(755,root,root) %{_bindir}/dropdb -%attr(755,root,root) %{_bindir}/dropuser -%attr(755,root,root) %{_bindir}/pg_archivecleanup -%attr(755,root,root) %{_bindir}/pg_dump -%attr(755,root,root) %{_bindir}/pg_dumpall -%attr(755,root,root) %{_bindir}/pg_isready -%attr(755,root,root) %{_bindir}/pg_restore -%attr(755,root,root) %{_bindir}/psql -%attr(755,root,root) %{_bindir}/reindexdb -%attr(755,root,root) %{_bindir}/vacuumdb - -%{_mandir}/man1/clusterdb.1* -%{_mandir}/man1/createdb.1* -%{_mandir}/man1/createuser.1* -%{_mandir}/man1/dropdb.1* -%{_mandir}/man1/dropuser.1* -%{_mandir}/man1/pg_archivecleanup.1* -%{_mandir}/man1/pg_dump.1* -%{_mandir}/man1/pg_dumpall.1* -%{_mandir}/man1/pg_isready.1* -%{_mandir}/man1/pg_restore.1* -%{_mandir}/man1/psql.1* -%{_mandir}/man1/reindexdb.1* -%{_mandir}/man1/vacuumdb.1* -%{_mandir}/man7/*.7* +%attr(755,root,root) %{pgsqllibdir}/bin/clusterdb +%attr(755,root,root) %{pgsqllibdir}/bin/createdb +%attr(755,root,root) %{pgsqllibdir}/bin/createuser +%attr(755,root,root) %{pgsqllibdir}/bin/dropdb +%attr(755,root,root) %{pgsqllibdir}/bin/dropuser +%attr(755,root,root) %{pgsqllibdir}/bin/pg_archivecleanup +%attr(755,root,root) %{pgsqllibdir}/bin/pg_dump +%attr(755,root,root) %{pgsqllibdir}/bin/pg_dumpall +%attr(755,root,root) %{pgsqllibdir}/bin/pg_isready +%attr(755,root,root) %{pgsqllibdir}/bin/pg_restore +%attr(755,root,root) %{pgsqllibdir}/bin/psql +%attr(755,root,root) %{pgsqllibdir}/bin/reindexdb +%attr(755,root,root) %{pgsqllibdir}/bin/vacuumdb + +%{pgsqldatadir}/man/man1/clusterdb.1* +%{pgsqldatadir}/man/man1/createdb.1* +%{pgsqldatadir}/man/man1/createuser.1* +%{pgsqldatadir}/man/man1/dropdb.1* +%{pgsqldatadir}/man/man1/dropuser.1* +%{pgsqldatadir}/man/man1/pg_archivecleanup.1* +%{pgsqldatadir}/man/man1/pg_dump.1* +%{pgsqldatadir}/man/man1/pg_dumpall.1* +%{pgsqldatadir}/man/man1/pg_isready.1* +%{pgsqldatadir}/man/man1/pg_restore.1* +%{pgsqldatadir}/man/man1/psql.1* +%{pgsqldatadir}/man/man1/reindexdb.1* +%{pgsqldatadir}/man/man1/vacuumdb.1* +%{pgsqldatadir}/man/man7/*.7* %if %{with perl} -%files module-plperl -f plperl-%{mver}.lang +%files module-plperl -f plperl-%{pgver}.lang %defattr(644,root,root,755) -%attr(755,root,root) %{_pgmoduledir}/plperl.so -%{_pgsqldir}/plperl--*.sql -%{_pgsqldir}/plperl.control -%{_pgsqldir}/plperlu--*.sql -%{_pgsqldir}/plperlu.control +%attr(755,root,root) %{moduledir}/plperl.so +%{extensiondir}/plperl--*.sql +%{extensiondir}/plperl.control +%{extensiondir}/plperlu--*.sql +%{extensiondir}/plperlu.control %endif %if %{with python} -%files module-plpython -f plpython-%{mver}.lang +%files module-plpython -f plpython-%{pgver}.lang %defattr(644,root,root,755) -%attr(755,root,root) %{_pgmoduledir}/plpython2.so -%{_pgsqldir}/plpython*--*.sql -%{_pgsqldir}/plpython*.control +%attr(755,root,root) %{moduledir}/plpython2.so +%{extensiondir}/plpython*--*.sql +%{extensiondir}/plpython*.control %endif %if %{with tcl} -%files module-pltcl -f pltcl-%{mver}.lang +%files module-pltcl -f pltcl-%{pgver}.lang %defattr(644,root,root,755) -%attr(755,root,root) %{_pgmoduledir}/pltcl.so -%{_pgsqldir}/pltcl*--*.sql -%{_pgsqldir}/pltcl*.control +%attr(755,root,root) %{moduledir}/pltcl.so +%{extensiondir}/pltcl*--*.sql +%{extensiondir}/pltcl*.control %endif %files module-dblink %defattr(644,root,root,755) -%attr(755,root,root) %{_pgmoduledir}/dblink.so -%{_pgsqldir}/dblink--*.sql -%{_pgsqldir}/dblink.control -%{_mandir}/man3/dblink*.3* +%attr(755,root,root) %{moduledir}/dblink.so +%{extensiondir}/dblink--*.sql +%{extensiondir}/dblink.control +%{pgsqldatadir}/man/man3/dblink*.3* %files module-lo %defattr(644,root,root,755) -%attr(755,root,root) %{_pgmoduledir}/lo.so -%{_pgsqldir}/lo--*.sql -%{_pgsqldir}/lo.control +%attr(755,root,root) %{moduledir}/lo.so +%{extensiondir}/lo--*.sql +%{extensiondir}/lo.control %files module-pg_trgm %defattr(644,root,root,755) -%attr(755,root,root) %{_pgmoduledir}/pg_trgm.so -%{_pgsqldir}/pg_trgm--*.sql -%{_pgsqldir}/pg_trgm.control +%attr(755,root,root) %{moduledir}/pg_trgm.so +%{extensiondir}/pg_trgm--*.sql +%{extensiondir}/pg_trgm.control %files module-pgcrypto %defattr(644,root,root,755) -%attr(755,root,root) %{_pgmoduledir}/pgcrypto.so -%{_pgsqldir}/pgcrypto--*.sql -%{_pgsqldir}/pgcrypto.control +%attr(755,root,root) %{moduledir}/pgcrypto.so +%{extensiondir}/pgcrypto--*.sql +%{extensiondir}/pgcrypto.control %if %{with selinux} %files module-sepgsql %defattr(644,root,root,755) -%attr(755,root,root) %{_pgmoduledir}/sepgsql.so -%{_pgsqldir}/sepgsql.sql +%attr(755,root,root) %{moduledir}/sepgsql.so +%{extensiondir}/sepgsql.sql %endif %files module-tablefunc %defattr(644,root,root,755) -%attr(755,root,root) %{_pgmoduledir}/tablefunc.so -%{_pgsqldir}/*tablefunc--*.sql -%{_pgsqldir}/*tablefunc.control +%attr(755,root,root) %{moduledir}/tablefunc.so +%{extensiondir}/*tablefunc--*.sql +%{extensiondir}/*tablefunc.control %files module-xml2 %defattr(644,root,root,755) -%attr(755,root,root) %{_pgmoduledir}/pgxml.so -%{_pgsqldir}/xml2--*.sql -%{_pgsqldir}/xml2.control +%attr(755,root,root) %{moduledir}/pgxml.so +%{extensiondir}/xml2--*.sql +%{extensiondir}/xml2.control %files contrib %defattr(644,root,root,755) %doc contrib/README -%attr(755,root,root) %{_bindir}/oid2name -%attr(755,root,root) %{_bindir}/pg_standby -%attr(755,root,root) %{_bindir}/vacuumlo -%attr(755,root,root) %{_pgmoduledir}/_int.so -%attr(755,root,root) %{_pgmoduledir}/adminpack.so -%attr(755,root,root) %{_pgmoduledir}/auth_delay.so -%attr(755,root,root) %{_pgmoduledir}/auto_explain.so -%attr(755,root,root) %{_pgmoduledir}/bloom.so -%attr(755,root,root) %{_pgmoduledir}/btree_gin.so -%attr(755,root,root) %{_pgmoduledir}/btree_gist.so -%attr(755,root,root) %{_pgmoduledir}/chkpass.so -%attr(755,root,root) %{_pgmoduledir}/citext.so -%attr(755,root,root) %{_pgmoduledir}/cube.so -%attr(755,root,root) %{_pgmoduledir}/earthdistance.so -%attr(755,root,root) %{_pgmoduledir}/file_fdw.so -%attr(755,root,root) %{_pgmoduledir}/fuzzystrmatch.so -%attr(755,root,root) %{_pgmoduledir}/hstore.so -%attr(755,root,root) %{_pgmoduledir}/isn.so -%attr(755,root,root) %{_pgmoduledir}/ltree.so -%attr(755,root,root) %{_pgmoduledir}/pageinspect.so -%attr(755,root,root) %{_pgmoduledir}/passwordcheck.so -%attr(755,root,root) %{_pgmoduledir}/pg_buffercache.so -%attr(755,root,root) %{_pgmoduledir}/pg_freespacemap.so -%attr(755,root,root) %{_pgmoduledir}/pg_prewarm.so -%attr(755,root,root) %{_pgmoduledir}/pg_stat_statements.so -%attr(755,root,root) %{_pgmoduledir}/pg_visibility.so -%attr(755,root,root) %{_pgmoduledir}/pgrowlocks.so -%attr(755,root,root) %{_pgmoduledir}/pgstattuple.so -%attr(755,root,root) %{_pgmoduledir}/postgres_fdw.so -%attr(755,root,root) %{_pgmoduledir}/seg.so -%attr(755,root,root) %{_pgmoduledir}/sslinfo.so -%attr(755,root,root) %{_pgmoduledir}/tcn.so -%attr(755,root,root) %{_pgmoduledir}/tsm_system_rows.so -%attr(755,root,root) %{_pgmoduledir}/tsm_system_time.so -%attr(755,root,root) %{_pgmoduledir}/unaccent.so -%attr(755,root,root) %{_pgmoduledir}/uuid-ossp.so -%{_pgsqldir}/adminpack--*.sql -%{_pgsqldir}/adminpack.control -%{_pgsqldir}/bloom--*.sql -%{_pgsqldir}/bloom.control -%{_pgsqldir}/btree_gin--*.sql -%{_pgsqldir}/btree_gin.control -%{_pgsqldir}/btree_gist--*.sql -%{_pgsqldir}/btree_gist.control -%{_pgsqldir}/chkpass--*.sql -%{_pgsqldir}/chkpass.control -%{_pgsqldir}/citext--*.sql -%{_pgsqldir}/citext.control -%{_pgsqldir}/cube--*.sql -%{_pgsqldir}/cube.control -%{_pgsqldir}/dict_int--*.sql -%{_pgsqldir}/dict_int.control -%{_pgsqldir}/dict_xsyn--*.sql -%{_pgsqldir}/dict_xsyn.control -%{_pgsqldir}/earthdistance--*.sql -%{_pgsqldir}/earthdistance.control -%{_pgsqldir}/file_fdw--*.sql -%{_pgsqldir}/file_fdw.control -%{_pgsqldir}/fuzzystrmatch--*.sql -%{_pgsqldir}/fuzzystrmatch.control -%{_pgsqldir}/hstore--*.sql -%{_pgsqldir}/hstore.control -%{_pgsqldir}/intarray--*.sql -%{_pgsqldir}/intarray.control -%{_pgsqldir}/intagg--*.sql -%{_pgsqldir}/intagg.control -%{_pgsqldir}/isn--*.sql -%{_pgsqldir}/isn.control -%{_pgsqldir}/ltree--*.sql -%{_pgsqldir}/ltree.control -%{_pgsqldir}/pageinspect--*.sql -%{_pgsqldir}/pageinspect.control -%{_pgsqldir}/pg_buffercache--*.sql -%{_pgsqldir}/pg_buffercache.control -%{_pgsqldir}/pg_freespacemap--*.sql -%{_pgsqldir}/pg_freespacemap.control -%{_pgsqldir}/pg_prewarm--*.sql -%{_pgsqldir}/pg_prewarm.control -%{_pgsqldir}/pg_stat_statements--*.sql -%{_pgsqldir}/pg_stat_statements.control -%{_pgsqldir}/pg_visibility--*.sql -%{_pgsqldir}/pg_visibility.control -%{_pgsqldir}/pgrowlocks--*.sql -%{_pgsqldir}/pgrowlocks.control -%{_pgsqldir}/pgstattuple--*.sql -%{_pgsqldir}/pgstattuple.control -%{_pgsqldir}/postgres_fdw--*.sql -%{_pgsqldir}/postgres_fdw.control -%{_pgsqldir}/seg--*.sql -%{_pgsqldir}/seg.control -%{_pgsqldir}/sslinfo--*.sql -%{_pgsqldir}/sslinfo.control -%{_pgsqldir}/tcn--*.sql -%{_pgsqldir}/tcn.control -%{_pgsqldir}/tsm_system_rows--*.sql -%{_pgsqldir}/tsm_system_rows.control -%{_pgsqldir}/tsm_system_time--*.sql -%{_pgsqldir}/tsm_system_time.control -%{_pgsqldir}/unaccent--*.sql -%{_pgsqldir}/unaccent.control -%{_pgsqldir}/uuid-ossp--*.sql -%{_pgsqldir}/uuid-ossp.control +%attr(755,root,root) %{pgsqllibdir}/bin/oid2name +%attr(755,root,root) %{pgsqllibdir}/bin/pg_standby +%attr(755,root,root) %{pgsqllibdir}/bin/vacuumlo +%attr(755,root,root) %{moduledir}/_int.so +%attr(755,root,root) %{moduledir}/adminpack.so +%attr(755,root,root) %{moduledir}/auth_delay.so +%attr(755,root,root) %{moduledir}/auto_explain.so +%attr(755,root,root) %{moduledir}/bloom.so +%attr(755,root,root) %{moduledir}/btree_gin.so +%attr(755,root,root) %{moduledir}/btree_gist.so +%attr(755,root,root) %{moduledir}/chkpass.so +%attr(755,root,root) %{moduledir}/citext.so +%attr(755,root,root) %{moduledir}/cube.so +%attr(755,root,root) %{moduledir}/earthdistance.so +%attr(755,root,root) %{moduledir}/file_fdw.so +%attr(755,root,root) %{moduledir}/fuzzystrmatch.so +%attr(755,root,root) %{moduledir}/hstore.so +%attr(755,root,root) %{moduledir}/isn.so +%attr(755,root,root) %{moduledir}/ltree.so +%attr(755,root,root) %{moduledir}/pageinspect.so +%attr(755,root,root) %{moduledir}/passwordcheck.so +%attr(755,root,root) %{moduledir}/pg_buffercache.so +%attr(755,root,root) %{moduledir}/pg_freespacemap.so +%attr(755,root,root) %{moduledir}/pg_prewarm.so +%attr(755,root,root) %{moduledir}/pg_stat_statements.so +%attr(755,root,root) %{moduledir}/pg_visibility.so +%attr(755,root,root) %{moduledir}/pgrowlocks.so +%attr(755,root,root) %{moduledir}/pgstattuple.so +%attr(755,root,root) %{moduledir}/postgres_fdw.so +%attr(755,root,root) %{moduledir}/seg.so +%attr(755,root,root) %{moduledir}/sslinfo.so +%attr(755,root,root) %{moduledir}/tcn.so +%attr(755,root,root) %{moduledir}/tsm_system_rows.so +%attr(755,root,root) %{moduledir}/tsm_system_time.so +%attr(755,root,root) %{moduledir}/unaccent.so +%attr(755,root,root) %{moduledir}/uuid-ossp.so +%{extensiondir}/adminpack--*.sql +%{extensiondir}/adminpack.control +%{extensiondir}/bloom--*.sql +%{extensiondir}/bloom.control +%{extensiondir}/btree_gin--*.sql +%{extensiondir}/btree_gin.control +%{extensiondir}/btree_gist--*.sql +%{extensiondir}/btree_gist.control +%{extensiondir}/chkpass--*.sql +%{extensiondir}/chkpass.control +%{extensiondir}/citext--*.sql +%{extensiondir}/citext.control +%{extensiondir}/cube--*.sql +%{extensiondir}/cube.control +%{extensiondir}/dict_int--*.sql +%{extensiondir}/dict_int.control +%{extensiondir}/dict_xsyn--*.sql +%{extensiondir}/dict_xsyn.control +%{extensiondir}/earthdistance--*.sql +%{extensiondir}/earthdistance.control +%{extensiondir}/file_fdw--*.sql +%{extensiondir}/file_fdw.control +%{extensiondir}/fuzzystrmatch--*.sql +%{extensiondir}/fuzzystrmatch.control +%{extensiondir}/hstore--*.sql +%{extensiondir}/hstore.control +%{extensiondir}/intarray--*.sql +%{extensiondir}/intarray.control +%{extensiondir}/intagg--*.sql +%{extensiondir}/intagg.control +%{extensiondir}/isn--*.sql +%{extensiondir}/isn.control +%{extensiondir}/ltree--*.sql +%{extensiondir}/ltree.control +%{extensiondir}/pageinspect--*.sql +%{extensiondir}/pageinspect.control +%{extensiondir}/pg_buffercache--*.sql +%{extensiondir}/pg_buffercache.control +%{extensiondir}/pg_freespacemap--*.sql +%{extensiondir}/pg_freespacemap.control +%{extensiondir}/pg_prewarm--*.sql +%{extensiondir}/pg_prewarm.control +%{extensiondir}/pg_stat_statements--*.sql +%{extensiondir}/pg_stat_statements.control +%{extensiondir}/pg_visibility--*.sql +%{extensiondir}/pg_visibility.control +%{extensiondir}/pgrowlocks--*.sql +%{extensiondir}/pgrowlocks.control +%{extensiondir}/pgstattuple--*.sql +%{extensiondir}/pgstattuple.control +%{extensiondir}/postgres_fdw--*.sql +%{extensiondir}/postgres_fdw.control +%{extensiondir}/seg--*.sql +%{extensiondir}/seg.control +%{extensiondir}/sslinfo--*.sql +%{extensiondir}/sslinfo.control +%{extensiondir}/tcn--*.sql +%{extensiondir}/tcn.control +%{extensiondir}/tsm_system_rows--*.sql +%{extensiondir}/tsm_system_rows.control +%{extensiondir}/tsm_system_time--*.sql +%{extensiondir}/tsm_system_time.control +%{extensiondir}/unaccent--*.sql +%{extensiondir}/unaccent.control +%{extensiondir}/uuid-ossp--*.sql +%{extensiondir}/uuid-ossp.control %if %{with perl} -%attr(755,root,root) %{_pgmoduledir}/hstore_plperl.so -%{_pgsqldir}/hstore_plperl--*.sql -%{_pgsqldir}/hstore_plperl.control -%{_pgsqldir}/hstore_plperlu--*.sql -%{_pgsqldir}/hstore_plperlu.control +%attr(755,root,root) %{moduledir}/hstore_plperl.so +%{extensiondir}/hstore_plperl--*.sql +%{extensiondir}/hstore_plperl.control +%{extensiondir}/hstore_plperlu--*.sql +%{extensiondir}/hstore_plperlu.control %endif %if %{with python} -%attr(755,root,root) %{_pgmoduledir}/hstore_plpython2.so -%attr(755,root,root) %{_pgmoduledir}/ltree_plpython2.so -%{_pgsqldir}/hstore_plpythonu--*.sql -%{_pgsqldir}/hstore_plpythonu.control -%{_pgsqldir}/hstore_plpython2u--*.sql -%{_pgsqldir}/hstore_plpython2u.control -%{_pgsqldir}/hstore_plpython3u--*.sql -%{_pgsqldir}/hstore_plpython3u.control -%{_pgsqldir}/ltree_plpythonu--*.sql -%{_pgsqldir}/ltree_plpythonu.control -%{_pgsqldir}/ltree_plpython2u--*.sql -%{_pgsqldir}/ltree_plpython2u.control -%{_pgsqldir}/ltree_plpython3u--*.sql -%{_pgsqldir}/ltree_plpython3u.control +%attr(755,root,root) %{moduledir}/hstore_plpython2.so +%attr(755,root,root) %{moduledir}/ltree_plpython2.so +%{extensiondir}/hstore_plpythonu--*.sql +%{extensiondir}/hstore_plpythonu.control +%{extensiondir}/hstore_plpython2u--*.sql +%{extensiondir}/hstore_plpython2u.control +%{extensiondir}/hstore_plpython3u--*.sql +%{extensiondir}/hstore_plpython3u.control +%{extensiondir}/ltree_plpythonu--*.sql +%{extensiondir}/ltree_plpythonu.control +%{extensiondir}/ltree_plpython2u--*.sql +%{extensiondir}/ltree_plpython2u.control +%{extensiondir}/ltree_plpython3u--*.sql +%{extensiondir}/ltree_plpython3u.control %endif -%{_mandir}/man1/oid2name.1* -%{_mandir}/man1/pg_standby.1* -%{_mandir}/man1/vacuumlo.1* +%{pgsqldatadir}/man/man1/oid2name.1* +%{pgsqldatadir}/man/man1/pg_standby.1* +%{pgsqldatadir}/man/man1/vacuumlo.1* diff --git a/postgresql.sysconfig b/postgresql.sysconfig index f3f4735..b5b122e 100644 --- a/postgresql.sysconfig +++ b/postgresql.sysconfig @@ -4,20 +4,15 @@ # Edit postgresql.conf file in database cluster directory to configure # PostgreSQL. If you want to start more than one PostgreSQL instance, # you should change TCP/IP port, at least. -# -# Under systemd each cluster is started under a different postgresql@.service -# instance, the default being postgresql@var-lib-pgsql.service -# -# To enable a new one use; /bin/systemctl enable postgresql@${instance}.service # locale used at service postgresql init # PG_INIT_LOCALE=C # standard setting -PG_DB_CLUSTERS="/var/lib/pgsql" +PG_DB_CLUSTERS="/var/lib/pgsql/10" # predictable usage -# PG_DB_CLUSTERS="/var/lib/pgsql/01 /var/lib/pgsql/02" +# PG_DB_CLUSTERS="/var/lib/pgsql/10/01 /var/lib/pgsql/10/02" # new database disk arrived -# PG_DB_CLUSTERS="/var/lib/pgsql/01 /var/lib/pgsql/02 /mnt/db/01" +# PG_DB_CLUSTERS="/var/lib/pgsql/10/01 /var/lib/pgsql/10/02 /mnt/db/10/01"