Anwendungen

Veeam PostgreSQL-Konfigurationsdatenbank verschieben

06. Juli 2025 · Anwendungen · andreas · Kein Kommentar

Leider ist bei der Installation von Veeam Backup & Replication 12 keine Möglichkeit vorgesehen, den Speicherort der Konfigurationsdatenbank frei zu wählen. Diese landet immer im Verzeichnis “C:\Program Files\PostgreSQL\15\data”, was insbesondere bei der Sicherung von Ordnerfreigaben in Kombination mit einer kleinen Systempartition zu Problemen führen kann.

postgresql-x64-15

Der Speicherort lässt sich aber mit wenig Aufwand nachträglich ändern:

  • Eine Sicherung der Veeam-Konfiguration erstellen
  • Alle Veeam- sowie den PostgreSQL-Dienst stoppen
  • Den Ordner “C:\Program Files\PostgreSQL\15\data” an einen neuen Platz verschieben oder kopieren
  • Den Parameter “-D” des Datenbank-Diensts “postgresql-x64-15” in der Registry anpassen und dort den neuen Pfad eintragen.
    Alternativ kann die Anpassung auch mit Hilfe des Befehls “sc” erfolgen:
sc config postgresql-x64-15 binPath= "\"C:\\Program Files\\PostgreSQL\\15\\bin\\pg_ctl.exe\" runservice -N \"postgresql-x64-15\" -D \"NEUERPFAD\" -w"
  • Den PostgreSQL-Dienst starten und überprüfen, ob die Datenbank läuft
  • Alle Veeam-Dienste starten
  • Veeam-Funktionalität testen

Firefox-Meldung: Ältere Version von Firefox gestartet

09. Mai 2025 · Anwendungen · andreas · Kein Kommentar

Seit einigen Versionen weigert sich Firefox, Profile zu öffnen, welche von einer neueren Version des Browsers erzeugt oder geöffnet wurden.

Statt den Benutzer eine Wahlmöglichkeit “Auf eigenes Risiko öffnen” zu bieten, bleiben nur die Möglichkeiten, Firefox entweder zu schließen oder ein neues Profil zu erstellen:

Ältere Version von Firefox gestartet

Wer das Profil trotzdem in einer älteren Browserversion verwenden möchte, kann zu einem einfachen Trick greifen:

Über die Eingabe “about:profiles” lässt sich die Pofilübersicht des Browsers öffnen und mit einem Klick auf “Ordner öffnen” der Ordner des zu ändernden Profils. In diesem gibt es eine Textdatei “compatibility.ini”, in welcher der Wert der Zeile

compatibility.ini
... LastVersion=128.10.0_20250421121556/20250421121556 ...

z.B. auf

compatibility.ini
... LastVersion=0 ...

geändert werden kann. Beim nächsten Start des Browsers (ggf. mit Parameter “-p” zum Aufruf des Profilmanagers) kann dann das Profil geöffnet werden.


PDF-Dateien mit Ghostscript komprimieren

13. April 2025 · Anwendungen · andreas · Kein Kommentar

Um PDF-Dateien zu komprimieren, reicht Ghostscript, das auf den meisten Linux-Systemen sowieso installiert ist. An einfachsten und schnellsten geht es über die Kommandozeile:

$ gs -sDEVICE=pdfwrite -dPDFSETTINGS=/screen -dNOPAUSE -dQUIET -dBATCH -sOutputFile=<AUSGABEDATEI.pdf> <EINGABEDATEI.pdf>

Mit dem Schalter “-dPDFSETTINGS” können verschiedene Qualitätsstufen vorgewählt werden. Eine detaillierte Übersicht über die dadurch gesetzten Einstellungen liefert die Tabelle “Distiller Parameters”, eine Änderung der Auflösung enthaltener Bilder kann über den Schalter “-dColorImageResolution” gesteuert werden:

$ gs -sDEVICE=pdfwrite -dPDFSETTINGS=/printer -dColorImageResolution=100 -dNOPAUSE -dQUIET -dBATCH -sOutputFile=<AUSGABEDATEI.pdf> <EINGABEDATEI.pdf>

App hat unerwartete Berechtigung: android.permission.OTHER_SENSORS

05. April 2025 · Anwendungen · andreas · 2 Kommentare

Bei der Installation des Fossify SMS Messenger aus dem F-Droid Store hat mich eine Meldung irritiert:

App hat unerwartete Berechtigung: android.permission.OTHER_SENSORS

Die Meldung wird von F-Droid in Zusammenhang mit GrapheneOS erzeugt, der zugehörige Hinweis findet sich in der Ankündigung zu F-Droid 1.22

  • show toast when APK has more permissions than expected (if your Android distro injects extra permissions, you’ll know)

in Kombination mit dem GrapheneOS-Forum:

The network and sensors permissions don’t exist on regular Android. They have been added by GrapheneOS. As such, apps don’t know how to request them. Leaving them on by default is done to maintain compatibility. [Quelle]

Für was Sensoren verwendet weren (können), kann man der Entwicklerdokumentation zu Android entnehmen:

Most Android-powered devices have built-in sensors that measure motion, orientation, and various environmental conditions. These sensors are capable of providing raw data with high precision and accuracy, and are useful if you want to monitor three-dimensional device movement or positioning, or you want to monitor changes in the ambient environment near a device. [Quelle]

Ob eine App tatsächlich Zugriff auf die Sensoren benötigt bzw. darauf haben soll(te), kann man bei GrapheneOS im Gegensatz zu anderen Android-Distributionen einstellen. Ein Entzug der Berechtigung kann allerdings zu Problemen führen, sollte eine App das Fehlen von Berechtigungen nicht abfangen.

2025-06-26: Herkunft und Grund der Meldung präzisiert, siehe Kommentar von Frederik.

WordPress-Kommentar zu einem anderen Beitrag verschieben

16. März 2025 · Anwendungen · andreas · Kein Kommentar

WordPress bietet standardmäßig keine Möglichkeit, einen Kommentar zwischen verschiedenenen Beiträgen zu verschieben. Das Vorgehen hierbei ist aber recht ähnlich dem Verschieben aller Kommentare.

Zunächt müssen die IDs der beiden Beiträge ermittelt werden, zwischen denen verschoben werden soll sowie die ID des zu verschiebenden Kommentars. Wer das nicht direkt in der Datenbank erledigen will, kann die WordPress-Oberfläche zu Rate ziehen: einfach beim jeweiligen Artikel bzw. Kommentar auf “Bearbeiten” klicken und die ID aus der URL entnehmen, z.B. “/wp-admin/post.php?post=4392&action=edit” und “/wp-admin/comment.php?action=editcomment&c=6493”.

Dann kann der Kommentar verschoben werden:

UPDATE wp_comments SET comment_post_ID = <ID_neuer_Beitrag> WHERE comment_ID = <ID_Kommentar>;

Anschließend muß noch die Anzahl der zu den Beiträgen vorhandenen Kommentare korrigiert werden, was mit zwei weiteren SQL-Befehlen erledig ist:

UPDATE wp_posts SET comment_count = (SELECT COUNT(*) FROM wp_comments WHERE comment_post_ID = <ID_alter_Beitrag> AND comment_approved = 1) WHERE ID = <ID_alter_Beitrag>; UPDATE wp_posts SET comment_count = (SELECT COUNT(*) FROM wp_comments WHERE comment_post_ID = <ID_neuer_Beitrag> AND comment_approved = 1) WHERE ID = <ID_neuer_Beitrag>;