So, das habe ich nun alles gemacht, aber leider startet postgres weiterhin nicht
Und die Fehlermeldung im Log lautet wie??
Die 2. Paperless Instanz ist nicht mehr aktiv?
Hattest DU nicht gesagt, das du Paperless nochmal neu installiert hattest? Vielleicht hattest du vorab nicht alles beendet und entfernt.
Hattest Du auch Postgres geupdatet? Da meine Instanz mit 13 installiert worden ist. Vielleicht ist bei dem Update von Postgres was schief gelaufen. Aber nur als Vermutung.
Nein, Paperless habe ich neu installiert.
Bei Paperless habe ich die Version 2.14.7
Bei Postgres habe ich die Version:
Ich dachte, das wird alles automatisch upgedatet, wenn ich Paperless update. Da liege ich wohl falsch. Kann es sein das ich postgres Update muss? Falls ja, wie mache ich das?
Die Postgres Datenbank kann man nicht so einfach updaten, deshalb ist der Eintrag in der docker-compose schon richtig:
db:
image: docker.io/library/postgres:16
mich stören immer noch deine Volumes… kannst du mit dem Exporer auf der Synology auf den Ordner pgdata zugreifen, ist der gefüllt mit mehreren Ordnern so wie in diesem Beispiel?
Über den Finder nicht, da mir dort der Ordner „Docker“ nicht angezeigt wird.
Schaue ich direkt auf der DS in den Ordner pgdata sehe ich diesen Inhalt:
Und der Fehler in der Log Datei lautet immer noch gleich?
Nochmal die Rechte für die Ordner kontolliert???
Ich muss jetzt erstmal weg.Das mache ich morgen und hoffe, das es dann mit Deiner Hilfe ein Ende findet. Also wie gesagt - Vielen Dank für Deine Hilfe.
Hier ist nochmal der Fehler, welcher sich bei Postgres permanent wiederholt:
stdout https://www.postgresql.org/docs/current/auth-trust.html
2025/02/13 11:43:58 stdout See PostgreSQL documentation about "trust":
2025/02/13 11:43:58 stdout
2025/02/13 11:43:58 stdout connections without a password. This is *not* recommended.
2025/02/13 11:43:58 stdout You may also use "POSTGRES_HOST_AUTH_METHOD=trust" to allow all
2025/02/13 11:43:58 stdout
2025/02/13 11:43:58 stdout superuser. For example, "-e POSTGRES_PASSWORD=password" on "docker run".
2025/02/13 11:43:58 stdout You must specify POSTGRES_PASSWORD to a non-empty value for the
2025/02/13 11:43:58 stdout Error: Database is uninitialized and superuser password is not specified.
2025/02/13 11:42:57 stdout https://www.postgresql.org/docs/current/auth-trust.html
2025/02/13 11:42:57 stdout See PostgreSQL documentation about "trust":
2025/02/13 11:42:57 stdout
Ich weiß aber ehrlich gesagt nicht was ich tun muss, um den zu beheben. Könntest Du mir das eventuell Schritt für Schritt erklären?
Warum es einen Fehler mit dem Postgres Passwort anzeigt kann ich dir nicht sagen.
Wenn es um Datenbanken geht hab ich nicht wirklich den Durchblick.
Glaube auch nicht dass die docker-compose von Stefan fehlerhaft ist.
Bin zwar kein Fan wie er sie aufgezogen hat, aber sie hat schon bei vielen Usern funktioniert.
Poste doch aml die Docker-Compose und die Fehlermeldung im Synology Forum falls sich hier keiner mehr meldet der sich damit auskennt.
Da sind schon einige gute Leute unterwegs, die haben mir auch mal geholfen wo ich mit der Datenbank Probleme hatte.
VG
Ja okay, das werde ich machen.
Wie sieht den Deine pg_hba.conf im Ordner psqlxx aus?
Den Ordner psqlxx habe ich garnicht, bzw. wo sollte der sein?
Eine Datei pg_hba ist allerdings vorhanden. Die sieht so aus:
# PostgreSQL Client Authentication Configuration File
# ===================================================
#
# Refer to the "Client Authentication" section in the PostgreSQL
# documentation for a complete description of this file. A short
# synopsis follows.
#
# ----------------------
# Authentication Records
# ----------------------
#
# This file controls: which hosts are allowed to connect, how clients
# are authenticated, which PostgreSQL user names they can use, which
# databases they can access. Records take one of these forms:
#
# local DATABASE USER METHOD [OPTIONS]
# host DATABASE USER ADDRESS METHOD [OPTIONS]
# hostssl DATABASE USER ADDRESS METHOD [OPTIONS]
# hostnossl DATABASE USER ADDRESS METHOD [OPTIONS]
# hostgssenc DATABASE USER ADDRESS METHOD [OPTIONS]
# hostnogssenc DATABASE USER ADDRESS METHOD [OPTIONS]
#
# (The uppercase items must be replaced by actual values.)
#
# The first field is the connection type:
# - "local" is a Unix-domain socket
# - "host" is a TCP/IP socket (encrypted or not)
# - "hostssl" is a TCP/IP socket that is SSL-encrypted
# - "hostnossl" is a TCP/IP socket that is not SSL-encrypted
# - "hostgssenc" is a TCP/IP socket that is GSSAPI-encrypted
# - "hostnogssenc" is a TCP/IP socket that is not GSSAPI-encrypted
#
# DATABASE can be "all", "sameuser", "samerole", "replication", a
# database name, a regular expression (if it starts with a slash (/))
# or a comma-separated list thereof. The "all" keyword does not match
# "replication". Access to replication must be enabled in a separate
# record (see example below).
#
# USER can be "all", a user name, a group name prefixed with "+", a
# regular expression (if it starts with a slash (/)) or a comma-separated
# list thereof. In both the DATABASE and USER fields you can also write
# a file name prefixed with "@" to include names from a separate file.
#
# ADDRESS specifies the set of hosts the record matches. It can be a
# host name, or it is made up of an IP address and a CIDR mask that is
# an integer (between 0 and 32 (IPv4) or 128 (IPv6) inclusive) that
# specifies the number of significant bits in the mask. A host name
# that starts with a dot (.) matches a suffix of the actual host name.
# Alternatively, you can write an IP address and netmask in separate
# columns to specify the set of hosts. Instead of a CIDR-address, you
# can write "samehost" to match any of the server's own IP addresses,
# or "samenet" to match any address in any subnet that the server is
# directly connected to.
#
# METHOD can be "trust", "reject", "md5", "password", "scram-sha-256",
# "gss", "sspi", "ident", "peer", "pam", "ldap", "radius" or "cert".
# Note that "password" sends passwords in clear text; "md5" or
# "scram-sha-256" are preferred since they send encrypted passwords.
#
# OPTIONS are a set of options for the authentication in the format
# NAME=VALUE. The available options depend on the different
# authentication methods -- refer to the "Client Authentication"
# section in the documentation for a list of which options are
# available for which authentication methods.
#
# Database and user names containing spaces, commas, quotes and other
# special characters must be quoted. Quoting one of the keywords
# "all", "sameuser", "samerole" or "replication" makes the name lose
# its special character, and just match a database or username with
# that name.
#
# ---------------
# Include Records
# ---------------
#
# This file allows the inclusion of external files or directories holding
# more records, using the following keywords:
#
# include FILE
# include_if_exists FILE
# include_dir DIRECTORY
#
# FILE is the file name to include, and DIR is the directory name containing
# the file(s) to include. Any file in a directory will be loaded if suffixed
# with ".conf". The files of a directory are ordered by name.
# include_if_exists ignores missing files. FILE and DIRECTORY can be
# specified as a relative or an absolute path, and can be double-quoted if
# they contain spaces.
#
# -------------
# Miscellaneous
# -------------
#
# This file is read on server startup and when the server receives a
# SIGHUP signal. If you edit the file on a running system, you have to
# SIGHUP the server for the changes to take effect, run "pg_ctl reload",
# or execute "SELECT pg_reload_conf()".
#
# ----------------------------------
# Put your actual configuration here
# ----------------------------------
#
# If you want to allow non-local connections, you need to add more
# "host" records. In that case you will also need to make PostgreSQL
# listen on a non-local interface via the listen_addresses
# configuration parameter, or via the -i or -h command line switches.
# CAUTION: Configuring the system for local "trust" authentication
# allows any local user to connect as any PostgreSQL user, including
# the database superuser. If you do not trust all your local users,
# use another authentication method.
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all trust
# IPv4 local connections:
host all all 127.0.0.1/32 trust
# IPv6 local connections:
host all all ::1/128 trust
# Allow replication connections from localhost, by a user with the
# replication privilege.
local replication all trust
host replication all 127.0.0.1/32 trust
host replication all ::1/128 trust
host all all all scram-sha-256
Hast es dann etwas anders installiert.
Ist aber kein Thema. Hast ja die Datei gefunden. Sorry das ich noch mal nachfrage, Du hattest nochmal komplett neu aufgesetzt stimmts.
Ohne ein Backup eingespielt zu haben.
Sondern direkt neu aufgesetzt.
Grundsätzlich sieht es von der conf eigentlich gut aus. Er sollte normalerweise zugriffe auch ohne Passwort von Deiner internen IP von jedem zulassen.
Ändere mal die letzte Zeile in: host all all 0.0.0.0/0 md5, allerdings weiß ich nicht ob die 16 Version das noch zulässt.
Wenn nicht dann in host all all 0.0.0.0/0 scam-sha-256
Dann nochmal stoppen und neu starten. Natürlich ohne zu Updaten.
Mehr als nicht funktionieren kann es ja nicht :d
Nein, ich hatte es nicht neu aufgesetzt. Soll ich das trotzdem mal anpassen?
Ich sehe gerade das bei mir in der hab_config als letzte Zeile folgendes drinsteht:
host all all all scram-sha-256 - Die habe ich jetzt in host all all all scam-sha-256 geändert. Danach neugestartet, was aber bis jetzt noch keinen Erfolg zeigt.
Jetzt probiere ich den anderen Vorschlag von Dir aus
Mehr als Nichtfunktionieren kann es ja auch nicht.
OK. Dann hast du also direkt Postgres 16 installiert? Da ich die Masterclass nicht direkt kenne, weiß ich nicht was dort angegeben ist. Da bei mir Standardmäßig Postgres13 installiert wurde.
Ich habe es ja mit dem mda5 ausprobiert und jetzt wird es zumindest mal kurzzeitig grün:
Hier mal der Inhalt der Datei wie sie jetzt aussieht:
# PostgreSQL Client Authentication Configuration File
# ===================================================
#
# Refer to the "Client Authentication" section in the PostgreSQL
# documentation for a complete description of this file. A short
# synopsis follows.
#
# ----------------------
# Authentication Records
# ----------------------
#
# This file controls: which hosts are allowed to connect, how clients
# are authenticated, which PostgreSQL user names they can use, which
# databases they can access. Records take one of these forms:
#
# local DATABASE USER METHOD [OPTIONS]
# host DATABASE USER ADDRESS METHOD [OPTIONS]
# hostssl DATABASE USER ADDRESS METHOD [OPTIONS]
# hostnossl DATABASE USER ADDRESS METHOD [OPTIONS]
# hostgssenc DATABASE USER ADDRESS METHOD [OPTIONS]
# hostnogssenc DATABASE USER ADDRESS METHOD [OPTIONS]
#
# (The uppercase items must be replaced by actual values.)
#
# The first field is the connection type:
# - "local" is a Unix-domain socket
# - "host" is a TCP/IP socket (encrypted or not)
# - "hostssl" is a TCP/IP socket that is SSL-encrypted
# - "hostnossl" is a TCP/IP socket that is not SSL-encrypted
# - "hostgssenc" is a TCP/IP socket that is GSSAPI-encrypted
# - "hostnogssenc" is a TCP/IP socket that is not GSSAPI-encrypted
#
# DATABASE can be "all", "sameuser", "samerole", "replication", a
# database name, a regular expression (if it starts with a slash (/))
# or a comma-separated list thereof. The "all" keyword does not match
# "replication". Access to replication must be enabled in a separate
# record (see example below).
#
# USER can be "all", a user name, a group name prefixed with "+", a
# regular expression (if it starts with a slash (/)) or a comma-separated
# list thereof. In both the DATABASE and USER fields you can also write
# a file name prefixed with "@" to include names from a separate file.
#
# ADDRESS specifies the set of hosts the record matches. It can be a
# host name, or it is made up of an IP address and a CIDR mask that is
# an integer (between 0 and 32 (IPv4) or 128 (IPv6) inclusive) that
# specifies the number of significant bits in the mask. A host name
# that starts with a dot (.) matches a suffix of the actual host name.
# Alternatively, you can write an IP address and netmask in separate
# columns to specify the set of hosts. Instead of a CIDR-address, you
# can write "samehost" to match any of the server's own IP addresses,
# or "samenet" to match any address in any subnet that the server is
# directly connected to.
#
# METHOD can be "trust", "reject", "md5", "password", "scram-sha-256",
# "gss", "sspi", "ident", "peer", "pam", "ldap", "radius" or "cert".
# Note that "password" sends passwords in clear text; "md5" or
# "scram-sha-256" are preferred since they send encrypted passwords.
#
# OPTIONS are a set of options for the authentication in the format
# NAME=VALUE. The available options depend on the different
# authentication methods -- refer to the "Client Authentication"
# section in the documentation for a list of which options are
# available for which authentication methods.
#
# Database and user names containing spaces, commas, quotes and other
# special characters must be quoted. Quoting one of the keywords
# "all", "sameuser", "samerole" or "replication" makes the name lose
# its special character, and just match a database or username with
# that name.
#
# ---------------
# Include Records
# ---------------
#
# This file allows the inclusion of external files or directories holding
# more records, using the following keywords:
#
# include FILE
# include_if_exists FILE
# include_dir DIRECTORY
#
# FILE is the file name to include, and DIR is the directory name containing
# the file(s) to include. Any file in a directory will be loaded if suffixed
# with ".conf". The files of a directory are ordered by name.
# include_if_exists ignores missing files. FILE and DIRECTORY can be
# specified as a relative or an absolute path, and can be double-quoted if
# they contain spaces.
#
# -------------
# Miscellaneous
# -------------
#
# This file is read on server startup and when the server receives a
# SIGHUP signal. If you edit the file on a running system, you have to
# SIGHUP the server for the changes to take effect, run "pg_ctl reload",
# or execute "SELECT pg_reload_conf()".
#
# ----------------------------------
# Put your actual configuration here
# ----------------------------------
#
# If you want to allow non-local connections, you need to add more
# "host" records. In that case you will also need to make PostgreSQL
# listen on a non-local interface via the listen_addresses
# configuration parameter, or via the -i or -h command line switches.
# CAUTION: Configuring the system for local "trust" authentication
# allows any local user to connect as any PostgreSQL user, including
# the database superuser. If you do not trust all your local users,
# use another authentication method.
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all trust
# IPv4 local connections:
host all all 127.0.0.1/32 trust
# IPv6 local connections:
host all all ::1/128 trust
# Allow replication connections from localhost, by a user with the
# replication privilege.
local replication all trust
host replication all 127.0.0.1/32 trust
host replication all ::1/128 trust
host all all 0.0.0.0/0 md5
Vielleicht kann hier ja auch mal jemand der auch Postgres 16 nutzt zeigen wie seine Datei aussieht, damit ich das abgleichen kann. Das wäre super.
OK. Das andere hat gar nicht funktioniert?
Und noch die Frage, hattest du direkt Postgres 16 installiert?
Was sagt denn die Log Datei wenn es kurz grün wird.
Kann morgen nochmal genauer schauen.
Update:
Sofern du von 13 auf 16 gegangen bist. Gibt es wohl ab und zu Probleme mit der Verschlüsselung der Passwörter von md5 auf Scream.
Das gibt allerdings der Fehler eigentlich nicht her.
Solltest du aber direkt 16 gehabt habe würde es nicht passen.
Im Moment sind bei mir auch ???