Super, danke für den Tip. werde ich mir anschauen und nein, gromox-cleaner kannst ich bis jetzt noch nicht 😉

crpb
Scheinbar war es nach dem grummunio-setup unter Debian 12 direkt aktiviert, aber auch wohl nie funktionable.
Ich habe den Dienst mal ohne änderung neu gestartet und mir den status ausgeben lassen. Leider finde ich zu dem Fehler so gar nixhts, evtl. weißt du ja warum der Fehler auftritt:

root@oppxchange:/var/spool/cron/crontabs# systemctl restart gromox-cleaner.service
Job for gromox-cleaner.service failed because of unavailable resources or another system error.
See "systemctl status gromox-cleaner.service" and "journalctl -xeu gromox-cleaner.service" for details.
root@oppxchange:/var/spool/cron/crontabs# systemctl status gromox-cleaner.service
× gromox-cleaner.service - Gromox mailbox cleaner
Loaded: loaded (/lib/systemd/system/gromox-cleaner.service; static)
Drop-In: /etc/systemd/system/gromox-cleaner.service.d
??override.conf
Active: failed (Result: resources)
TriggeredBy: ? gromox-cleaner.timer
CPU: 0
Mär 05 11:46:05 oppxchange systemd[1]: gromox-cleaner.service: Failed with result 'resources'.
Mär 05 11:46:05 oppxchange systemd[1]: Failed to start gromox-cleaner.service - Gromox mailbox cleaner.
Mär 05 11:48:58 oppxchange systemd[1]: gromox-cleaner.service: Failed to load environment files: No such file or directory
Mär 05 11:48:58 oppxchange systemd[1]: gromox-cleaner.service: Failed to run 'start' task: No such file or directory
Mär 05 11:48:58 oppxchange systemd[1]: gromox-cleaner.service: Failed with result 'resources'.
Mär 05 11:48:58 oppxchange systemd[1]: Failed to start gromox-cleaner.service - Gromox mailbox cleaner.
Mär 05 11:49:43 oppxchange systemd[1]: gromox-cleaner.service: Failed to load environment files: No such file or directory
Mär 05 11:49:43 oppxchange systemd[1]: gromox-cleaner.service: Failed to run 'start' task: No such file or directory
Mär 05 11:49:43 oppxchange systemd[1]: gromox-cleaner.service: Failed with result 'resources'.
Mär 05 11:49:43 oppxchange systemd[1]: Failed to start gromox-cleaner.service - Gromox mailbox cleaner.

  • crpb replied to this.

    Solche Dinge sollten auch in die AdminUI, wo diese präsent sind. Was nutzen versteckte Features, wenn diese nicht jeder kennen kann.

    SOliver

    Zeig mal bitte was hier raus kommt:

    systemctl cat gromox-cleaner

    Mär 05 11:49:43 oppxchange systemd[1]: gromox-cleaner.service: Failed to load environment files: No such file or directory

    Ich weiss schon was es ist. https://github.com/grommunio/gromox/pull/134

    Werde meine antwort oben anpassen mit dem override.

    EnvironmentFile=-/etc/gromox/gromox.cfg

      SOliver Scheinbar war es nach dem grummunio-setup unter Debian 12 direkt aktiviert, aber auch wohl nie funktionable.

      Ja das ist in Debian normal da die aktivierung von den diensten standardmäßig anders geregelt ist.

      crpb
      Ja da bin ich gerade auch gelandet, das es /etc/gromox/gromox.cfg nicht gibt.
      Ist das ein Minus vor dem Pfad?

      PS: selber schon im GIT in dem Patch gefunden, ja ist ein Minus 😉
      Ich teste es nachher und berichte, danke schon mal für die Hilfe.

      Offtopic: Mir ist gerade aufgefallen, das nun auch grommunio-chat für Debian seit heute im repo ist.

      crpb
      das war die Lösung, ich habe beides mal auf 1d gesetzt und der Papierkorb ist leer 😉

      root@oppxchange:/var/spool/cron/crontabs# systemctl daemon-reload
      root@oppxchange:/var/spool/cron/crontabs# systemctl restart gromox-cleaner.service
      root@oppxchange:/var/spool/cron/crontabs# systemctl status gromox-cleaner.service
      ? gromox-cleaner.service - Gromox mailbox cleaner
      Loaded: loaded (/lib/systemd/system/gromox-cleaner.service; static)
      Drop-In: /etc/systemd/system/gromox-cleaner.service.d
      ??override.conf
      Active: inactive (dead) since Wed 2025-03-05 16:20:14 CET; 12s ago
      TriggeredBy: ? gromox-cleaner.timer
      Process: 1758280 ExecStart=/usr/sbin/gromox-mbop foreach.here.mb ( purge-softdelete -t ${softdelete_purgetime} -r / ) ( purge-datafiles ) (code=exited, status=0/SUCCESS)
      Process: 1758284 ExecStart=/usr/sbin/gromox-mbop foreach.here.mb ( purge-softdelete -t ${softdelete_purgetime} -r / ) ( purge-datafiles ) ( emptyfld -R --delempty -t ${trashbin_purgetime} DELETED ) (code=exited, status=0/SUCCESS)
      Main PID: 1758284 (code=exited, status=0/SUCCESS)
      CPU: 73ms
      Mär 05 16:20:14 oppxchange gromox-mbop[1758284]: Folder 0xb: deleted 1 messages
      Mär 05 16:20:14 oppxchange gromox-mbop[1758284]: Folder 0xb: deleted 0 messages
      Mär 05 16:20:14 oppxchange gromox-mbop[1758284]: Folder 0x270001: deleted 0 messages
      Mär 05 16:20:14 oppxchange gromox-mbop[1758284]: Folder 0x270001: deleted due to --delempty
      Mär 05 16:20:14 oppxchange gromox-mbop[1758284]: Folder 0xb: deleted 0 messages
      Mär 05 16:20:14 oppxchange gromox-mbop[1758284]: Folder 0xb: deleted 0 messages
      Mär 05 16:20:14 oppxchange gromox-mbop[1758284]: Folder 0xb: deleted 0 messages
      Mär 05 16:20:14 oppxchange gromox-mbop[1758284]: Folder 0xb: deleted 0 messages
      Mär 05 16:20:14 oppxchange systemd[1]: gromox-cleaner.service: Deactivated successfully.
      Mär 05 16:20:14 oppxchange systemd[1]: Finished gromox-cleaner.service - Gromox mailbox cleaner.

      Andy Regeln lassen sich im WebUI erstellen. Die Frage ist, welche Anforderungen bestehen.

      Von was sprichst du da? Wo soll es da regeln geben um was zu löschen?

      gut zu hören, dass das mitlerweile eingebaut ist. Ich bin noch etwas irritiert ob der syntax bzg. der Zeitgangabe.
      Laut man-page und deinem override wird die Zeit mit -t in d(ays) angegeben. im orgiginal systemd script steht aber:
      ( purge-softdelete -d ${softdelete_purgetime} -r / )

      ist das ein bug im systemd script oder geht beides?

        segro
        Bei mir stand im /lib/systemd/system/gromox-cleaner.service folgendes drin unter Debian 12:

        Description=Gromox mailbox cleaner
        Requisite=gromox-http.service
        After=gromox-http.service
        
        [Service]
        # Fallback if EnvironmentFile hasn't got any value
        Environment=softdelete_purgetime=30d
        EnvironmentFile=/etc/gromox/gromox.cfg
        ExecStart=/usr/sbin/gromox-mbop foreach.here.mb ( purge-softdelete -t ${softdelete_purgetime} -r / ) ( purge-datafiles )
        MemoryDenyWriteExecute=yes
        PrivateDevices=yes
        PrivateNetwork=no
        PrivateUsers=no
        ProtectControlGroups=yes
        ProtectKernelModules=yes
        ProtectKernelTunables=yes
        SystemCallFilter=@default @file-system @basic-io @system-service
        Type=oneshot

        Dort habe ich mit nano nur folgendes geändert:
        EnvironmentFile=/etc/gromox/gromox.cfg
        in
        EnvironmentFile=-/etc/gromox/gromox.cfg

        Danach dann ein "systemctl daemon-reload"

        Im Anschluss dann die Änderung von @crpb in etwa übernommen 😉
        Mit "systemctl edit gromox-cleaner.service" die Datei angepasst, damit es auch ein Upgrade überlebt, mit folgendem Inhalt:

        ### Anything between here and the comment below will become the new contents of the file
        
        [Unit]
        Description=Gromox mailbox cleaner
        Requisite=gromox-http.service
        After=gromox-http.service
        
        [Service]
        # Fallback if EnvironmentFile hasn't got any value
        Environment=softdelete_purgetime=1d trashbin_purgetime=0d
        EnvironmentFile=-/etc/gromox/gromox.cfg
        ExecStart=/usr/sbin/gromox-mbop foreach.here.mb ( purge-softdelete -t ${softdelete_purgetime} -r / ) ( purge-datafiles ) ( emptyfld -R --delempty -t ${trashbin_purgetime} DELETED )
        MemoryDenyWriteExecute=yes
        PrivateDevices=yes
        PrivateNetwork=no
        PrivateUsers=no
        ProtectControlGroups=yes
        ProtectKernelModules=yes
        ProtectKernelTunables=yes
        SystemCallFilter=@default @file-system @basic-io @system-service
        Type=oneshot
        
        ### Lines below this comment will be discarded
        
        ### /lib/systemd/system/gromox-cleaner.service
        # [Unit]
        # Description=Gromox mailbox cleaner
        # Requisite=gromox-http.service
        # After=gromox-http.service
        # 
        # [Service]
        # # Fallback if EnvironmentFile hasn't got any value
        # Environment=softdelete_purgetime=30d
        # EnvironmentFile=-/etc/gromox/gromox.cfg
        # ExecStart=/usr/sbin/gromox-mbop foreach.here.mb ( purge-softdelete -t ${softdelete_purgetime} -r / ) ( purge-datafiles )
        # MemoryDenyWriteExecute=yes
        # PrivateDevices=yes
        # PrivateNetwork=no
        # PrivateUsers=no
        # ProtectControlGroups=yes
        # ProtectKernelModules=yes
        # ProtectKernelTunables=yes
        # SystemCallFilter=@default @file-system @basic-io @system-service
        # Type=oneshot

        Augenscheinlich funktioniert auch das mit dem Trashbin, ob sie auch aus dem zu "Wiederherstellen" verschwinden, sehe ich erst morgen,
        Also -t sollte der richtige Schalter sein.

        ok, dann scheint da in den EL9 (supported) packages was falsches drin zu stehen:

        root@mail.xxx.de:~# systemctl cat gromox-cleaner
        # /usr/lib/systemd/system/gromox-cleaner.service
        [Unit]
        Description=Gromox mailbox cleaner
        Requisite=gromox-http.service
        After=gromox-http.service
        
        [Service]
        # Fallback if EnvironmentFile hasn't got any value
        Environment=softdelete_purgetime=30d
        EnvironmentFile=/etc/gromox/gromox.cfg
        ExecStart=/usr/sbin/gromox-mbop foreach.here.mb ( purge-softdelete -d ${softdelete_purgetime} -r / ) ( purge-datafiles )
        MemoryDenyWriteExecute=yes
        PrivateDevices=yes
        PrivateNetwork=no
        PrivateUsers=no
        ProtectControlGroups=yes
        ProtectKernelModules=yes
        ProtectKernelTunables=yes
        SystemCallFilter=@default @file-system @basic-io @system-service
        Type=oneshot

          segro
          Ich habs nun einfach alles nochmal manuell getestet, da mein Server noch nicht produktiv im Einsatz ist:

          root@oppxchange:~# /usr/sbin/gromox-mbop foreach.here.mb purge-softdelete -d 0d -r /
          Unknown option: -d
          Usage: purge-softdelete [-r] [-t TIMESPEC] [-?|--help] [--usage]
          4 days later

          -d / -t in .service

          -> https://github.com/grommunio/gromox/pull/133/files

          segro Laut man-page und deinem override wird die Zeit mit -t in d(ays) angegeben. im orgiginal systemd script steht aber:
          ( purge-softdelete -d ${softdelete_purgetime} -r / )

          ist das ein bug im systemd script oder geht beides?

          Siehe da oben drüber

          © 2020-2024 grommunio GmbH. All rights reserved. | https://grommunio.com | Data Protection | Legal notice