Skip to content

Wenn dir der Redis-Server flöten geht....

Verschoben Redis
3 1 645
  • Ich glaube ich habe die letzten zwei Stunden gaaaaanz viel gelernt........

    Durch einen dummen Fehler ist mir unerwartet der Redis-Server abhanden gekommen 😞 Die Fehlersuche hat etwas Zeit in Anspruch genommen 🙂 Die Datensicherung hat aber gut funktioniert - ohne hätte ich jetzt hier in diesem Forum von vorne anfangen können. Es sind manchmal die kleinen Dingen, die einem ganz schön Nerven kosten können. Morgen dann für alle was ausführlicher, was genau passiert ist. Jetzt ab ins Bett...

  • An die Profis, besser jetzt nicht weiter lesen 😉

    Was war passiert? Ich hatte meine Nextcloud Instanz kaputt gemacht (ist ein anderes Thema), bin dann aus irgendeinem Grund auf den Root und habe mal ein

    apt update
    

    angestossen. Also, nichts besonderes, so wie immer. Es war schon was später (keine gute Idee) und so habe ich nicht genau hingesehen, was da reinkommt. Es war irgendwas mit zwei libs und redis-server. Und auf Return geklickt. Dann das.

    Preparing to unpack .../redis-server_3%3a3.2.6-3+deb9u3_amd64.deb ...
    Unpacking redis-server (3:3.2.6-3+deb9u3) over (3:3.2.6-3+deb9u2) ...
    Preparing to unpack .../redis-tools_3%3a3.2.6-3+deb9u3_amd64.deb ...
    Unpacking redis-tools (3:3.2.6-3+deb9u3) over (3:3.2.6-3+deb9u2) ...
    Setting up redis-tools (3:3.2.6-3+deb9u3) ...
    Processing triggers for systemd (232-25+deb9u11) ...
    Processing triggers for man-db (2.7.6.1-2) ...
    Setting up redis-server (3:3.2.6-3+deb9u3) ...
    Job for redis-server.service failed because of unavailable resources or another system error.
    See "systemctl status redis-server.service" and "journalctl -xe" for details.
    invoke-rc.d: initscript redis-server, action "start" failed.
    ● redis-server.service - Advanced key-value store
       Loaded: loaded (/lib/systemd/system/redis-server.service; enabled; vendor preset: enabled)
       Active: activating (auto-restart) (Result: resources) since Tue 2019-07-16 21:59:15 CEST; 3ms ago
         Docs: http://redis.io/documentation,
               man:redis-server(1)
      Process: 23442 ExecStopPost=/bin/run-parts --verbose /etc/redis/redis-server.post-down.d (code=exited, status=0/SUCCESS)
      Process: 23439 ExecStop=/bin/kill -s TERM $MAINPID ^[[0;1;31m(code=exited, status=1/FAILURE)^[[0m
      Process: 23435 ExecStop=/bin/run-parts --verbose /etc/redis/redis-server.pre-down.d (code=exited, status=0/SUCCESS)
      Process: 23430 ExecStartPost=/bin/run-parts --verbose /etc/redis/redis-server.post-up.d (code=exited, status=0/SUCCESS)
      Process: 23427 ExecStart=/usr/bin/redis-server /etc/redis/redis.conf (code=exited, status=0/SUCCESS)
      Process: 23422 ExecStartPre=/bin/run-parts --verbose /etc/redis/redis-server.pre-up.d (code=exited, status=0/SUCCESS)
     Main PID: 826 (code=exited, status=0/SUCCESS)
    

    Und Bam, Forum kaputt, Redis-Server läuft nicht mehr. Ich habe dann, vermutlich auch weil ich eigentlich schon ins Bett wollte, etwas gebraucht um überhaupt zu verstehen was da passiert war. Wenn man es geschnallt hat, ist es eigentlich relativ einfach.

    Durch die Aktualisierung wurde der Redis-Server auf dem Server aktualisiert. Nur dumm, das das Paket auf dem Server wesentlich aktueller ist, als das was aktualisiert wurde 😞 Warum, war das so? Der Redis-Server auf dem Root ist zu alt, so das ich irgendwann in der Anfangszeit der Redis-Server mal selbst gebaut habe. Das war mir in dem Moment aber nicht mehr so klar.

    Nachdem es dann Klick gemacht hatte, wusste ich was zu tuen war. Den Redis-Server runterhauen, aktuellen Redis-Server runterladen und bauen. Dann entsprechende Konfig und Datenbank wieder auf den Server schreiben, die Datenbank war nämlich weg! Glück, das mein Backupkonzept funktioniert.

    Nach einigen Hürden, ja es war spät, lief das Forum dann wieder. Puuh - Glück gehabt.

    Was lernt man daraus?

    • Ein gutes Backupkonzept ist absolut notwendig. Ich habe gemerkt, das ich da noch was verbessern kann.

    • Pakete die man selber baut, muss man daran hindern, das diese aktualisiert werden (Siehe unten)

    • Wenn es mal knallt, Ruhe bewahren. Man macht sonst nur noch mehr kaputt.

    Paket blocken

    Mit dem Befehl

    apt-mark hold redis-server
    

    kann man ein Paket von der Aktualisierung ausnehmen. Eine Liste der Pakete gibt es mit

    apt-mark showhold
    

    Damit müsste ich meinen dummen Fehler jetzt eigentlich für die Zukunft verhindert haben.

    Wenn hier jemand einen Fehler sieht, bitte ich um freundliche Korrektur. Ich bin mir da nicht so zu 100% sicher, das das was ich da geschrieben habe Sinn macht. Danke!

  • So, nach einer kleinen Pause und ein wenig nachdenken ist mir doch noch was eingefallen 😉

    Backports! Man so einfach!

    nano /etc/apt/sources.list
    

    Das folgende eintragen.

    # backports
    deb http://deb.debian.org/debian stretch-backports main
    

    Danach ein

    apt update
    

    Und dann schauen wir uns mal die Version an....

    apt -t stretch-backports search redis-server
    Sorting... Done
    Full Text Search... Done
    golang-github-stvp-tempredis-dev/stretch-backports 0.0~git20160122.0.83f7aae-1~bpo9+1 all
      Go package to start and stop temporary redis-server processes
    
    libtest-redisserver-perl/oldstable,oldstable 0.20-1 all
      redis-server runner for tests
    
    python-hiredis/oldstable,oldstable 0.2.0-1+b2 amd64
      redis protocol reader for Python 2.X using hiredis
    
    python3-hiredis/oldstable,oldstable 0.2.0-1+b2 amd64
      redis protocol reader for Python using hiredis
    
    redis/stretch-backports 5:5.0.3-3~bpo9+2 all
      Persistent key-value database with network interface (metapackage)
    
    redis-server/stretch-backports 5:5.0.3-3~bpo9+2 amd64 [residual-config]
      Persistent key-value database with network interface
    

    Und die habe ich gestern Abend gebaut.

    127.0.0.1:6379> INFO
    # Server
    redis_version:5.0.5
    

    Ok, das schmerzt jetzt 😛

  • OpenSource - Donations 2024

    Allgemeine Diskussionen opensource linux donations
    1
    0 Stimmen
    1 Beiträge
    295 Aufrufe
    Niemand hat geantwortet
  • Proxmox 8.1 released

    Linux proxmox linux
    1
    0 Stimmen
    1 Beiträge
    156 Aufrufe
    Niemand hat geantwortet
  • Vaultwarden auf Debian Bookworm 12 installieren!

    Angeheftet Linux vaultwarden bookworm linux
    6
    5
    0 Stimmen
    6 Beiträge
    4k Aufrufe
    I
    Vielen lieben Dank Nico! Jetzt läuft vaultwarden.
  • Firefox mit .deb Paket

    Linux debian firefox linux
    3
    2
    0 Stimmen
    3 Beiträge
    206 Aufrufe
    FrankMF
    Wer auch wie ich das Problem hat, das manche Webseiten keinen Text mehr anzeigen. Ich habe da was gefunden. https://neilzone.co.uk/2023/04/flatpak-firefox-112-not-showing-some-bitmap-fonts-in-debian
  • ZFS - Wichtige Befehle

    Linux zfs linux
    3
    0 Stimmen
    3 Beiträge
    887 Aufrufe
    FrankMF
    Heute mal drüber gestolpert, das es auch so was geben kann. root@pve2:~# zpool status pool: pool_NAS state: ONLINE status: Some supported and requested features are not enabled on the pool. The pool can still be used, but some features are unavailable. action: Enable all features using 'zpool upgrade'. Once this is done, the pool may no longer be accessible by software that does not support the features. See zpool-features(7) for details. scan: scrub repaired 0B in 00:20:50 with 0 errors on Sun Apr 13 00:44:51 2025 config: NAME STATE READ WRITE CKSUM pool_NAS ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 ata-WDC_WDS100T1R0A-68A4W0_230520800733 ONLINE 0 0 0 ata-WDC_WDS100T1R0A-68A4W0_230520801376 ONLINE 0 0 0 errors: No known data errors Was machen? Als erstes mal ein Backup angestoßen. Danach root@pve2:~# zpool get all pool_NAS | grep feature pool_NAS feature@async_destroy enabled local pool_NAS feature@empty_bpobj active local pool_NAS feature@lz4_compress active local pool_NAS feature@multi_vdev_crash_dump enabled local pool_NAS feature@spacemap_histogram active local pool_NAS feature@enabled_txg active local pool_NAS feature@hole_birth active local pool_NAS feature@extensible_dataset active local pool_NAS feature@embedded_data active local pool_NAS feature@bookmarks enabled local pool_NAS feature@filesystem_limits enabled local pool_NAS feature@large_blocks enabled local pool_NAS feature@large_dnode enabled local pool_NAS feature@sha512 enabled local pool_NAS feature@skein enabled local pool_NAS feature@edonr enabled local pool_NAS feature@userobj_accounting active local pool_NAS feature@encryption enabled local pool_NAS feature@project_quota active local pool_NAS feature@device_removal enabled local pool_NAS feature@obsolete_counts enabled local pool_NAS feature@zpool_checkpoint enabled local pool_NAS feature@spacemap_v2 active local pool_NAS feature@allocation_classes enabled local pool_NAS feature@resilver_defer enabled local pool_NAS feature@bookmark_v2 enabled local pool_NAS feature@redaction_bookmarks enabled local pool_NAS feature@redacted_datasets enabled local pool_NAS feature@bookmark_written enabled local pool_NAS feature@log_spacemap active local pool_NAS feature@livelist enabled local pool_NAS feature@device_rebuild enabled local pool_NAS feature@zstd_compress enabled local pool_NAS feature@draid enabled local pool_NAS feature@zilsaxattr disabled local pool_NAS feature@head_errlog disabled local pool_NAS feature@blake3 disabled local pool_NAS feature@block_cloning disabled local pool_NAS feature@vdev_zaps_v2 disabled local Das kommt von neuen Funktionen, die zu ZFS hinzugefügt wurden und bei Erstellung des Pools nicht vorhanden waren. Dann upgraden wir mal root@pve2:~# zpool upgrade pool_NAS This system supports ZFS pool feature flags. Enabled the following features on 'pool_NAS': zilsaxattr head_errlog blake3 block_cloning vdev_zaps_v2 Kontrolle root@pve2:~# zpool status pool: pool_NAS state: ONLINE scan: scrub repaired 0B in 00:20:50 with 0 errors on Sun Apr 13 00:44:51 2025 config: NAME STATE READ WRITE CKSUM pool_NAS ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 ata-WDC_WDS100T1R0A-68A4W0_230520800733 ONLINE 0 0 0 ata-WDC_WDS100T1R0A-68A4W0_230520801376 ONLINE 0 0 0 errors: No known data errors Features kontrollieren root@pve2:~# zpool get all pool_NAS | grep feature pool_NAS feature@async_destroy enabled local pool_NAS feature@empty_bpobj active local pool_NAS feature@lz4_compress active local pool_NAS feature@multi_vdev_crash_dump enabled local pool_NAS feature@spacemap_histogram active local pool_NAS feature@enabled_txg active local pool_NAS feature@hole_birth active local pool_NAS feature@extensible_dataset active local pool_NAS feature@embedded_data active local pool_NAS feature@bookmarks enabled local pool_NAS feature@filesystem_limits enabled local pool_NAS feature@large_blocks enabled local pool_NAS feature@large_dnode enabled local pool_NAS feature@sha512 enabled local pool_NAS feature@skein enabled local pool_NAS feature@edonr enabled local pool_NAS feature@userobj_accounting active local pool_NAS feature@encryption enabled local pool_NAS feature@project_quota active local pool_NAS feature@device_removal enabled local pool_NAS feature@obsolete_counts enabled local pool_NAS feature@zpool_checkpoint enabled local pool_NAS feature@spacemap_v2 active local pool_NAS feature@allocation_classes enabled local pool_NAS feature@resilver_defer enabled local pool_NAS feature@bookmark_v2 enabled local pool_NAS feature@redaction_bookmarks enabled local pool_NAS feature@redacted_datasets enabled local pool_NAS feature@bookmark_written enabled local pool_NAS feature@log_spacemap active local pool_NAS feature@livelist enabled local pool_NAS feature@device_rebuild enabled local pool_NAS feature@zstd_compress enabled local pool_NAS feature@draid enabled local pool_NAS feature@zilsaxattr enabled local pool_NAS feature@head_errlog active local pool_NAS feature@blake3 enabled local pool_NAS feature@block_cloning enabled local pool_NAS feature@vdev_zaps_v2 enabled local So, alle neuen Features aktiviert. Jetzt kann der Pool weiterhin seine Arbeit machen.
  • Restic - forget --keep-last 3 --prune

    Restic linux restic
    2
    0 Stimmen
    2 Beiträge
    667 Aufrufe
    FrankMF
    Ich habe mich damit noch ein wenig beschäftigt, die letzten drei zu behalten, ist nicht so optimal. Da es viele Optionen bei dem Befehl gibt, hier ein Ausschnitt Flags: -l, --keep-last n keep the last n snapshots -H, --keep-hourly n keep the last n hourly snapshots -d, --keep-daily n keep the last n daily snapshots -w, --keep-weekly n keep the last n weekly snapshots -m, --keep-monthly n keep the last n monthly snapshots -y, --keep-yearly n keep the last n yearly snapshots habe ich das ein wenig so angepasst, das ich denke es passt für mich. restic --password-file /root/passwd -r /media/NAS_neu/Restic/Home/ forget --keep-last 3 --keep-monthly 3 --prune Damit behalte ich auch die jeweils eines pro Monat. Und die letzten drei. Das sieht dann so aus. root@debian:~# ./backup2.sh repository 2f3f6147 opened successfully, password is correct Files: 38 new, 100 changed, 13268 unmodified Dirs: 0 new, 1 changed, 0 unmodified Added to the repo: 10.166 GiB processed 13406 files, 50.324 GiB in 3:24 snapshot 849f614c saved repository 2f3f6147 opened successfully, password is correct Applying Policy: keep the last 3 snapshots, 3 monthly snapshots snapshots for (host [debian], paths [/home/frank]): keep 5 snapshots: ID Time Host Tags Reasons Paths ------------------------------------------------------------------------------------ a7251cfd 2019-11-28 17:00:01 debian monthly snapshot /home/frank 283d4027 2019-12-31 17:00:01 debian monthly snapshot /home/frank ae2b96ec 2020-01-01 21:47:46 debian last snapshot /home/frank 079e00a6 2020-01-02 17:00:01 debian last snapshot /home/frank 849f614c 2020-01-03 21:08:45 debian last snapshot /home/frank monthly snapshot ------------------------------------------------------------------------------------ 5 snapshots remove 26 snapshots: ID Time Host Tags Paths ------------------------------------------------------------------ 896f16c2 2019-11-07 22:23:40 debian /home/frank b21bcf6d 2019-11-11 17:00:01 debian /home/frank f89248fb 2019-11-12 17:00:01 debian /home/frank 123ab546 2019-11-13 17:00:01 debian /home/frank b82d87d0 2019-11-18 17:00:01 debian /home/frank 040b0ab7 2019-11-19 17:00:01 debian /home/frank 7221d8ef 2019-11-20 17:00:01 debian /home/frank 84132a25 2019-11-21 17:00:01 debian /home/frank b558a52c 2019-11-25 17:00:01 debian /home/frank e5cc0c3e 2019-12-02 17:00:01 debian /home/frank 22423fa5 2019-12-03 17:00:01 debian /home/frank 39df1ab9 2019-12-04 17:00:01 debian /home/frank 98843457 2019-12-05 17:00:01 debian /home/frank b0cdd4b6 2019-12-09 17:00:01 debian /home/frank 828414f9 2019-12-10 17:00:01 debian /home/frank e34a27c3 2019-12-11 17:00:01 debian /home/frank 6e488c3b 2019-12-12 17:00:01 debian /home/frank 17898403 2019-12-16 17:00:01 debian /home/frank 1973305a 2019-12-17 17:00:01 debian /home/frank 9553bedd 2019-12-18 17:00:01 debian /home/frank fedf749d 2019-12-19 17:00:01 debian /home/frank 8e7cb876 2019-12-23 17:00:01 debian /home/frank 0bd0d102 2019-12-25 17:00:01 debian /home/frank 13d348b0 2019-12-26 17:00:01 debian /home/frank c7d960aa 2019-12-30 17:00:01 debian /home/frank f6ea9118 2020-01-01 17:00:01 debian /home/frank ------------------------------------------------------------------ 26 snapshots 26 snapshots have been removed, running prune counting files in repo building new index for repo [0:35] 100.00% 7806 / 7806 packs repository contains 7806 packs (46537 blobs) with 41.110 GiB processed 46537 blobs: 0 duplicate blobs, 0 B duplicate load all snapshots find data that is still in use for 5 snapshots [0:01] 100.00% 5 / 5 snapshots found 32654 of 46537 data blobs still in use, removing 13883 blobs will remove 0 invalid files will delete 715 packs and rewrite 752 packs, this frees 5.027 GiB [2:28] 100.00% 752 / 752 packs rewritten counting files in repo [0:01] 100.00% 6571 / 6571 packs finding old index files saved new indexes as [d137b425 f7caee99 a6e9711a] remove 35 old index files [1:13] 100.00% 1467 / 1467 packs deleted done using temporary cache in /tmp/restic-check-cache-916655151 repository 2f3f6147 opened successfully, password is correct created new cache in /tmp/restic-check-cache-916655151 create exclusive lock for repository load indexes check all packs check snapshots, trees and blobs read all data [7:47] 100.00% 6571 / 6571 items duration: 7:47 no errors were found root@debian:~# Am Ende seht ihr noch, wie Restic alle Files testet. Mein Script sieht jetzt so aus. #!/bin/bash # Script um mit Restic Daten automatisiert zu sichern! # Dient zum Sichern der Homepartition auf dem ROCKPro64 NAS! # Was soll gesichert werden? backup_pfad=/home/frank # Programm Start restic --password-file /root/passwd -r /media/NAS_neu/Restic/Home/ backup $backup_pfad --exclude-file=excludes.txt restic --password-file /root/passwd -r /media/NAS_neu/Restic/Home/ forget --keep-last 3 --keep-monthly 3 --prune # Testen restic --password-file /root/passwd -r /media/NAS_neu/Restic/Home/ check --read-data Das dann schön mit einem Cronjob laufen lassen und die Datensicherung ist erledigt
  • Proxmox - Offline

    Linux linux proxmox
    1
    0 Stimmen
    1 Beiträge
    295 Aufrufe
    Niemand hat geantwortet
  • Raid1 - Platte verschwunden!?

    Verschoben Linux linux
    1
    1
    1 Stimmen
    1 Beiträge
    456 Aufrufe
    Niemand hat geantwortet