Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

mgutt

Moderators
  • Joined

  • Last visited

Everything posted by mgutt

  1. Die KI hat ziemlichen Blödsinn vorgeschlagen. Alles außerhalb von /boot (USB-Stick) und /mnt liegt im RAM und geht nach Neustart verloren. Daher bringt es nichts da Dateien zu entfernen. Unraid erstellt sie bei einem Neustart einfach neu. Und die /shares/*.cfg zu löschen, bringt auch nicht viel, weil die dynamisch neu gebaut wird aus den Ordnern, die auf den Disks liegen. Aber dadurch resettet man zumindest alle Einstellungen pro Share, sofern das dein Ziel war. Die User löschen würde durch Entfernen von smbpasswd und passwd erfolgen. Allerdings enthält die shares/*.cfg auch die Usernamen, so dass man die eigentlich auch alle löschen muss. Ob es noch weitere relevante Files gibt, kann ich nicht sagen. Ich würde da eher über die GUI arbeiten, statt Config Files zu löschen.
  2. Was nun: Verschoben oder kopiert? Womit wurde zb verschoben? Mover? File Manager? Was ganz anderes? Von 1TB auf 600GB wäre zb völlig normal, wenn im File Manager die Option "use sparse option" aktiv war: Dadurch belegt ein img dann weniger Platz weil leere Bereiche der Disk "komprimiert" werden. Ob der mover das macht, weiß ich gerade nicht. Allerdings von 600GB noch mal runter auf 250GB klingt komisch. Wäre aber auch nicht absolut unrealistisch, wenn die VM so wenig Dateien hatte. Wie viel meinst du hätte Windows als Belegung angezeigt?
  3. Betrachte ein RAID als Komfortmerkmal. Es ist schön zu haben, wenn mal ein Drive ausfällt, weil man dann nicht gleich zum Backup greifen muss. Außerdem garantiert es bei Ausfall eines Drives, dass du nicht auf ein x Stunden altes Backup zurückgreifen musst. Nun stellt du dir dazu die Frage: Wäre es in der Regel schlecht, wenn die VMs aus einem x Stunden altem Backup wiederhergestellt werden müssen? Wenn ja, dann RAID, wenn nein: Backup auf HDD reicht. Dann zu den SSDs: Wenn Geld keine Rolle spielt, würde ich gar nicht lange überlegen. 2x 2TB und fertig. Soll es aber erstmal ohne zusätzliche Investition laufen, hätte ich es vermutlich so gemacht: 2x 256GB für Docker/appdata 1x 2TB VM Regelmäßige Backups Richtung Array HDDs Die Blue ist übrig: Nicht schlimm, gehört eh auf den Scheiterhaufen 😅 Warum geht das nicht? Fehlt das beim Dropdown als Ziel oder wie? Zeig mal bitte.
  4. Das eine ist das was die VM verwenden kann, das andere die tatsächliche Belegung auf dem Datenträger. Du kannst die Größe sogar nachträglich verkleinern: stoppe die VM Führe folgendes Kommando aus fallocate --dig-holes /path/to/vdisk.imgDadurch wird die Datei "sparse" (schlank). Das Kommando legt dazu Bereiche zusammen, die nur aus Nullen bestehen (= leer sind). Es ist eine Art "Komprimierung", wobei das direkt im Dateisystem passiert und daher keine zusätzliche Rechenleistung bedarf, wenn auf die Daten zugegriffen wird. Das Dateisystem merkt sich dann nicht z.B. NUL, NUL, NUL, NUL, ..., sondern nur ein Kürzel dafür wie z.B. 100xNUL. Insbesondere wenn man Backups macht, spart man dadurch natürlich massig Platz (vorausgesetzt die Kopier-Kommandos haben sparsiges Kopieren aktiv wie z.B. cp --sparse=always oder rsync --sparse. Was gegen Sparse spricht: Man kann übersehen, dass in Summe alle VMs eigentlich mehr Speicherplatz nutzen könnten als der Datenträger überhaupt bereitstellen kann. Also hat man z.B. 2x 500GB VMs, deren Sparse-Größe nur 100GB beträgt. Außerdem hat man die auf einem kleineren Datenträger mit gerade mal 256GB liegen. Nun schreiben die VMs mit der Zeit mehr und mehr Dateien. Das kann dann mit der Zeit dazu führen, dass der Datenträger bis zum letzten Byte vollgeschrieben wird und die VMs schmieren ab. Ein ähnliches Szenario hat man, wenn man parallel auf dem Datenträger Docker Container hat. Also man weiß faktisch nie, wie viel Platz effektiv belegt werden könnte. Man muss es sich also schlicht selbst merken / prüfen. Das Gegenteil des oben genannten Kommandos wäre (VM ebenfalls stoppen!): cp -v --sparse=never /path/to/vdisk.img /path/to/vdisk.img.copy mv -v /path/to/vdisk.img.copy /path/to/vdisk.img(es geht auch mit fallocate -l 60G vdisk.img, aber wenn die Größe versehentlich zu klein angegeben wird, wird das img eiskalt abgeschnitten und Daten gehen verloren. cp ist da deutlich sicherer, aber erfordert auch doppelten Speicherplatz während dem Kopieren). Ich persönlich bin ein Fan von sparse.
  5. Sorry, didn't know that Kingston has Consumer SSDs, too 😅
  6. Yeah, it's sadly valid for ALL enterprise SSDs. They don't support sleep states as consumer SSDs do.
  7. Sometimes Plex is going crazy after re-indexing the library / metadata und updates the list of the last added movies, tv shows, etc. This script: stops the Plex container (if needed) obtains the path to the database file obtains the SQLite binary fixes all dates by using the file modification time starts the Plex container (only if it was running before starting the script) Usually it should be only needed to be executed after a manual re-indexing, but I'm executing this script once a week through the Users Scripts Plugin to be sure its fixing once in a while: #!/bin/bash # shellcheck disable=SC2317 # #################### # # Sync Plex "added to library" date with file modification date # This script updates the added_at timestamp in Plex to match the actual file modification date # #################### # # #################### # # settings # #################### # plex_container="plex" backup_suffix=".before.added.update" # #################### # # functions # #################### # syslog_exit() { local msg="${1//\\n/$'\n'}" # convert literal \n to real newlines local script_name script_name="$(readlink -f "$0")" while IFS= read -r line; do [[ -n "$line" ]] && logger -t bash "$script_name: $line" done <<< "$msg" exit 1 } fatal() { [[ "$1" == *"\n"* ]] && echo -ne "$1" >&2 || echo "$1" >&2; syslog_exit "$1"; } # #################### # # script # #################### # # check if container exists if ! docker ps -a --format '{{.Names}}' | grep -q "^${plex_container}$"; then fatal "Error: Container '$plex_container' does not exist" fi # check if container is running container_is_running=false if docker ps --format '{{.Names}}' | grep -q "^${plex_container}$"; then container_is_running=true echo "Plex container is running" else echo "Plex container is not running (won't be started after this script)" fi echo "" # get plex config directory from container echo -n "Getting Plex config directory from container: " plex_config_dir=$(docker inspect "$plex_container" --format='{{range .Mounts}}{{if eq .Destination "/config"}}{{.Source}}{{end}}{{end}}') if [[ ! "$plex_config_dir" ]]; then fatal "Error: Could not determine Plex config directory from container '$plex_container'" fi echo "$plex_config_dir" echo "" # find the plex database file echo -n "Searching for Plex database file: " plex_db_path=$(find "$plex_config_dir" -type f -name "com.plexapp.plugins.library.db" 2>/dev/null | head -n 1) if [[ ! "$plex_db_path" ]]; then fatal "Error: Could not find Plex database file in '$plex_config_dir'" fi echo "$plex_db_path" echo "" # find plex sqlite binary echo -n "Searching for Plex SQLite binary: " plex_sqlite=$(find "$plex_config_dir" -type f -name "Plex SQLite" 2>/dev/null | head -n 1) if [[ ! "$plex_sqlite" ]]; then fatal "Error: Could not find Plex SQLite binary in '$plex_config_dir'" fi echo "$plex_sqlite" echo "" # stop plex container if running if [[ "$container_is_running" == true ]]; then echo -n "Stopping Plex container... " ! docker stop "$plex_container" && fatal "Error: Could not stop Plex container '$plex_container'" echo "stopped" echo "" fi # create backup echo -n "Creating database backup... " ! cp -f "$plex_db_path" "${plex_db_path}${backup_suffix}" && fatal "Error: Could not create backup of Plex database" echo "created ${plex_db_path}${backup_suffix}" echo "" # get all library section ids echo "Retrieving library sections..." library_ids=$("$plex_sqlite" "$plex_db_path" "SELECT id FROM library_sections;") if [[ ! "$library_ids" ]]; then echo "Error: No library sections found!" if [[ "$container_is_running" == true ]]; then echo -n "Starting Plex container... " ! docker start "$plex_container" && fatal "Error: Could not start Plex container '$plex_container'" echo "started" fi syslog_exit "No library sections found" fi echo "Found library sections:" "$plex_sqlite" "$plex_db_path" "SELECT id, name, section_type FROM library_sections;" | while IFS='|' read -r id name section_type; do echo "- ID: $id, Name: $name, Type: $section_type" done echo "" # update each library section echo "Updating added_at timestamps..." total_updated=0 for library_id in $library_ids; do library_name=$("$plex_sqlite" "$plex_db_path" "SELECT name FROM library_sections WHERE id = $library_id;") echo -n "Update library: $library_name (ID: $library_id): " # set added_at to the minimum updated_at from media_items updated=$("$plex_sqlite" "$plex_db_path" " UPDATE metadata_items SET added_at = ( SELECT MIN(m.updated_at) FROM media_items m WHERE m.metadata_item_id = metadata_items.id ) WHERE library_section_id = $library_id AND EXISTS (SELECT 1 FROM media_items m WHERE m.metadata_item_id = metadata_items.id); SELECT changes(); ") echo "$updated items updated" total_updated=$((total_updated + updated)) done echo "Total items updated: $total_updated" echo "" # start plex container only if it was running before if [[ "$container_is_running" == true ]]; then echo -n "Starting Plex container... " ! docker start "$plex_container" && fatal "Error: Could not start Plex container '$plex_container'" echo "started" echo "" fi
  8. Put the following script in your /boot/config/go file or add a script to the Users Scripts plugin and set it to "At First Array Start Only": This script adds a bandwith limit to all rsync processes as long the destination path of rsync is an array disk. For me 60 MB/s works really good. Feel free to adjust 60000 to your needs. Since I use it, my array is much more responsive while rsync is running. # ------------------------------------------------- # Throttle rsync transfers to array disks v1.0 # ------------------------------------------------- # rename original rsync [[ ! -f /usr/bin/rsync.orig ]] && mv /usr/bin/rsync /usr/bin/rsync.orig if [[ -f /usr/bin/rsync.orig ]]; then # create wrapper script cat <<'##EOF' | sed -E 's/^ {4}//' >/usr/bin/rsync #!/bin/bash # rsync wrapper to throttle transfers to /mnt/diskX # Check if destination is an Unraid array disk add_bwlimit= last_arg="${@: -1}" if [[ "$last_arg" =~ ^/mnt/disk[0-9]+ ]]; then add_bwlimit=1 fi # Check if --bwlimit is already present for arg in "$@"; do if [[ "$arg" == --bwlimit=* ]] || [[ "$arg" == --bwlimit ]]; then add_bwlimit= break fi done # execute rsync with bandwidth limit if [[ $add_bwlimit ]]; then exec -a /usr/bin/rsync /usr/bin/rsync.orig --bwlimit=60000 "$@" # KB/s = 60 MB/s # execute original rsync else exec -a /usr/bin/rsync /usr/bin/rsync.orig "$@" fi ##EOF # make wrapper executable chmod +x /usr/bin/rsync fi
  9. Was sind das für NVMe? Sind auch welche ohne DRAM dabei, dh die sind auf HMB angewiesen? Richtig "billige" Modelle, zb QLC ohne nennenswerte TLC Cache? Denk dran, dass Trim / Garbage Collection bei dem Array nicht funktioniert. Man sollte also zumindest bei der Parität sehr hochwertige NVMe verwenden, die auch ohne Trim schnell bleiben. Wie sind die NVMe von den Lanes her zur CPU angebunden? Hast du Last auf dem RAID, wenn die Geschwindigkeit mies ist? Sind deren Lanes die gleichen wie die von Array? Grundsätzlich hat das Array folgende Begrenzungen: Single Core CPU Berechnung der Parity, erlaubt je nach CPU aber immer noch 100 MB/s aufwärts (bei NVMe, genug freien Lanes und starker CPU auch 1000 MB/s aufwärts) Paralleles Lesen und Schreiben von einem Datenträger beim Schreiben von Daten, häufig bei der Parität (was verträgt die parallel, hat die exklusive Lanes, usw.) Wenn man zwei Parity hat, sollten die nicht auf den selben Lanes hängen bzw Parity sollte immer getrennt von allem anderen angebunden sein. Die langsamste, bei einem Transfer aktive, Disk/Parity beeinflusst die maximale Schreib-Rate Bei SATA kann zb schon ein rsync von disk1 auf disk2 die komplette disk2 unbenutzbar machen, weil SATA kein paralleles Lesen/Schreiben mag. Bei NVMe ist das normalerweise deutlich weniger ein Problem, da dort JEDE Lane einen Kanal zum Lesen und einen zum Schreiben hat. Dh 4 Lanes pro NVMe erlauben 8 parallele Transfers. Evtl kannst du mit dem Kommando schon mal herausfinden, welche der NVMe bei der Auslastung (Utilization) während dem Transfer voll ausgelastet sind: iostat -xm -y 1 2 | awk '{print $1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13, $22, $23}' | grep -v "0.00$" | column -t Und zu deiner Frage nach dem RAID: Hier verteilt sich alles parallel auf alle Datenträger. Also selbst bei weniger Lanes, ist der Durchsatz deutlich höher als beim Array.
  10. Liegt da bei dir noch eine wg1 File herum? root@horus:~# find /boot -name "*wg*" /boot/config/wireguard/wg0.conf /boot/config/wireguard/wg0.cfg /boot/config/wireguard/peers/peer-horus-wg0-1.conf /boot/config/wireguard/peers/peer-horus-wg0-1.png
  11. Ach so, den Schalter gibt es bei wg1 nicht. Hmmm 🤔
  12. Du musst die Ansicht von basic auf advanced umschalten. Keine Ahnung warum man das so komisch gemacht hat.
  13. Gibt es einen Cache? Hast du das Problem auch bei Read/Write auf dem Cache? Und apropos Read/Write. Gilt das mit den 10 MB/s auch bei Read vom Array?
  14. Ach, jemand anderes hatte geantwortet 🫣😅 Ok, cool. Auf den Fiber wollte ich bei Glasfaser auch wechseln. Aber grundsätzlich kann ich mir einfach nicht vorstellen, dass Unraid hier korrekt agiert. Sowie ich das verstanden habe, sind zwar mehrere MAC-Adressen pro IP erlaubt, aber nur sinnvoll, wenn man zb ein HA-Cluster hat, wo es Load Balancing oder Failover gibt.
  15. Also du auf OpenSense umgestellt hast, hast du da dann das Netzwerk Setup geändert oder alles so gelassen? Also zb auf VLAN umgestellt? Ich frage mich, was OpenSense anders macht. Die einzige Idee, die ich hier habe, ist dass wenn der Client die ARP-Broadcast-Anfrage versendet, dass OpenSense im Gegensatz zur Fritz!Box eine der beiden ARP-Antworten von Unraid verwirft. zb weil es erstmal intern abgleicht, welche MAC-Adresse ihm selbst bekannt sind. Oder aber die ARP-Anfragen gehen gar nicht erst zu Unraid durch, weil OpenSense die direkt selbst beantwortet?!
  16. Dann verstehe ich nicht wozu das virt0 device aud eth0 noch erzeugt wird 🤔
  17. Wenn du container mit eigenen IP-Adressen brauchst, musst du macvlan verwenden. Das geht nicht anders. Und bridging meint die Netzwerk Einstellungen (also "Netzwerkbrückung"). Die "bridge" in Docker ist was anderes. Ist bei dir aber eh aktiv, daher ist es bei dir wenn ein anderes Thema (hier geht es wie gesagt um PING Verluste, also deutliche Netzwerkprobleme).
  18. Nur durch Aktivierung von bridging, aber das "verbietet" Unraid wegen dem Kernel Bug: https://docs.unraid.net/unraid-os/release-notes/6.12.4/ Dh macvlan + bridging = Crash Gefahr Hast du host to custom network aktiviert? Laut dem Text hilft das:
  19. Ich habe oben eine Zusammenfassung ergänzt. Das wird aber vermutlich dein Problem nicht beheben, da bei macvlan ja meine ich jeder docker eine eigene MAC-Adresse bekommt oder nicht? Habe ich jedenfalls nicht getestet. Check einfach mal den Output von ip a und suche nach den IP/MACs, die du doppelt siehst. Die KI schlägt dieses command vor: for c in $(docker ps -q); do name=$(docker inspect -f '{{.Name}}' "$c" | sed 's#^/##') mac=$(docker inspect -f '{{range $k,$v := .NetworkSettings.Networks}}{{$v.MacAddress}}{{end}}' "$c") if [ -z "$mac" ]; then echo "--- $name ---" echo " (no MAC / host network mode)" continue fi echo "--- $name ---" host_if=$(ip -o link | awk -v mac="$mac" '$0 ~ mac {print $2}' | sed 's/://') if [ -n "$host_if" ]; then echo " MAC: $mac -> Host IF: $host_if" else echo " MAC: $mac -> (no host device, likely ipvlan)" fi doneIch erhalte das, weil bei ipvlan nach außen keine MAC-Adressen publiziert werden: --- nextcloud-mariadb --- MAC: 02:42:ac:11:00:04 -> (no host device, likely ipvlan) --- nextcloud --- MAC: 02:42:ac:11:00:05 -> (no host device, likely ipvlan) --- home-assistant --- (no MAC / host network mode) --- npm --- (no MAC / host network mode)
  20. Ist der Ordner auf der fehlenden Platte vorhanden? Wenn nein, dann wurde der warum auch immer nicht erstellt. In dem Fall könnte Share umbenennen helfen oder falls das nicht erwünscht ist, eben von Hand anlegen. Spielt aber technisch keine Rolle, wenn man eh alle als Ziel haben will. Unraid erstellt den dann irgendwann automatisch, wenn die Platte an der Reihe ist befüllt zu werden.
  21. Nun, dann darf es dem User nicht mehr möglich sein das bridging zu deaktivieren, solange dieser Workaound notwendig ist.
  22. ZusammenfassungIn den Netzwerk-Einstellungen muss bridging ("Netzwerkbrückung") immer aktiviert sein, egal ob ipvlan oder macvlan verwendet wird. Wenn bridging deaktiviert ist, verbreitet Unraid ansonsten pro Netzwerkbuchse zwei MAC-Adressen, wodurch Netzwerkprobleme resultieren können (Ladeprobleme in WebGUI, PING-Verluste, SMB Transfers extrem gestört, etc.). Technischer HintergrundUnraid erzeugt bei inaktivem bridging ein zusätzliches virtuelles Netzwerk-Gerät pro LAN-Buchse. Z.B. eth0 hat dann zusätzlich noch virt0@eth0. Dieses zweite Gerät ist für Docker gedacht und besitzt eine andere MAC-Adresse. D.h. wenn ihr Daten von einem Docker Container erhaltet, kommen diese - obwohl gleiche IP wie Unraid - von einer anderen MAC-Adresse. Was rein technisch erstmal in Ordnung ist, kollidiert aber mit ARP. Denn bei IPv4 ist es Standard, dass Clients in das Netzwerk reinrufen (broadcast) und fragen, welche MAC-Adresse eine IP-Adresse hat (= ARP). Siehe auch: https://de.wikipedia.org/wiki/Address_Resolution_Protocol Der Unraid Server beantwortet diese Anfrage, weil er die MAC-Adresse zu der IP kennt. Allerdings versendet er zwei Antworten, weil ihm eben zwei MAC-Adressen zu der IP bekannt sind. Der Client speichert dann per Zufall eine dieser beiden MAC-Adressen in seiner ARP Tabelle. Sollte sich der Client nun die MAC-Adresse von Docker gemerkt haben, kann dieser nicht mehr die Unraid WebGUI, Netzwerk-Freigaben, usw. erreichen. Sobald der Client dann wieder die MAC-Adresse von Unraid selbst in seiner ARP Tabelle gespeichert hat, läuft es wieder. Allerdings wechselt das ständig hin und her und das fühlt sich dann effektiv wie zufällige Netzwerkstörungen an. Fritz!BoxManche User berichten, dass das ein Problem sei, dass "nur" bei billiger Consumer Hardware auftritt. Beispielsweise trete das bei OpenSense nicht auf. Ich bleibe allerdings dabei, dass das Problem bei Unraid verursacht wird und OpenSense vermutlich einfach nur selbst auf die ARP-Anfragen als Proxy antwortet oder sonst wie verhindert, dass die doppelten ARP-Antworten von Unraid bis zum Client durchkommen. TL;DR Ich bin in den letzten Wochen echt wahnsinnig geworden, weil ich phasenweise je nach Last und Verbindungsdauer massive Performance-Probleme zu beklagen hatte: sehr langsame SMB Transfers 10% PING Verluste langsame GUI (stark verzögerte Aktualisierung) langsame Übernahme von Terminal-Eingaben Nun weiß ich aber endlich warum. Und zwar hatte ich folgendes eingestellt: Enable bonding: No Enable bridging: No Denn ich dachte "wozu". Ich habe ja keine Container auf br0. Was ich nun nicht wusste: Dadurch wechselt der Docker-Dienst AUTOMATISCH auf macvlan. Das war mir aber erst mal nicht bewusst. Ich fand irgendwann heraus, dass arp auf meinem Client für meinen Server eine falsche MAC-Adresse anzeigte: PS C:\Users\Marc> arp -a Schnittstelle: 192.168.178.84 --- 0xd Internetadresse Physische Adresse Typ 192.168.178.8 02-ee-e8-83-8a-5e dynamisch Dann machte ich mich beim Server auf die Suche gemacht und fand dort auch die MAC-Adresse: root@thoth:~# ip a | grep -B2 5e 9: vhost0@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq state UP group default qlen 500 link/ether 02:ee:e8:83:8a:5e brd ff:ff:ff:ff:ff:ff Doch woher kam die? Ich dachte erst an den VM-Dienst, aber der war nicht aktiv. bridging und bonding war ja wie gesagt auch aus und dann sah ich eben, dass docker auf macvlan lief und sich nicht mehr ändern ließ: Hier fand ich dann die Info, dass man bridging aktivieren MUSS, damit man ipvlan nutzen kann: https://www.reddit.com/r/unRAID/comments/1905g2v/in_unraid_6126_and_all_612x_versions_i_cant/ Daraufhin konnte ich dann zurück zu ipvlan und SOFORT war die "falsche" MAC-Adresse aus der arp Liste des Clients verschwunden und damit auch ALLE Netzwerkprobleme: Schnittstelle: 192.168.178.84 --- 0xd Internetadresse Physische Adresse Typ 192.168.178.8 88-c9-b3-b5-0e-ee dynamisch Laut KI (ich bin kein Netzwerker) ist es wohl so, dass bei aktivem macvlan der Docker Dienst hingeht und einen vhost0@eth0 Eintrag mit einer virtuellen MAC-Adresse erzeugt. Wenn Clients dann ARP Anfragen versenden, ist es Zufall, welche MAC-Adresse vom Server zurückkommt und wenn man Pech hat, ist es die vom Docker Dienst. Der Client sendet dann seinen Traffic nicht mehr an Unraid, sondern Docker. Der weiß wiederum nichts von SMB, WebGUI, Terminal, usw. und schmeißt ihn einfach weg = Netzwerkprobleme. Für mich fühlt sich das wie ein Bug in Unraid an. Aber das müsste @limetech bewerten. Meiner Ansicht nach sollte Unraid die vhost0@ethX Netzwerk-Geräte NUR dann erzeugen, wenn sie eine von Unraid ABWEICHENDE IP-Adresse besitzen. Also zB dann, wenn man einen Container mit einer anderen IP-Adresse startet.
  23. Das Log (siehe oben die Zeitstempel) zeigt 8 Sekunden zwischen Drücken der Power-Taste und dann bricht das Log abrupt ab. Dh du hast die Power-Taste gedrückt gehalten ohne dem Server die Chance zu geben herunterzufahren. Einfach 1x kurz drücken und warten. Falls nicht vorhanden empfehle ich einen Mainboard Speaker. Dann hast du auch akustisches Feedback, dass das Drücken erkannt wurde. Und wegen dem disabled: Eine Disk die gerade beschrieben wird und die dann abrupt vom Strom getrennt wird, kann einen korrupten Zustand hinterlassen. Vermutlich ist die deswegen rausgeflogen. Tipp: In den Wartungsmodus wechseln und überall den Health Check vom Dateisystem durchführen.
  24. Im SMART sehe ich keine Auffälligkeiten. Relevante Werte: Ist alles Null. Die beiden syslog Files im diagostics sind leider ziemlich nutzlos, weil in beiden gerade mal eine Stunde an Logs enthalten ist. Also quasi nichts. Du solltest syslog to flash drive aktivieren, damit die logs auch erhalten bleiben. außerdem empfehlen ich dir das skript, um bei fehlern eine benachrichtigung zu erhalten: https://forums.unraid.net/topic/121039-syslog-notify-create-notifications-if-specific-words-occur-in-the-logs/ was man aber erkennen kann. shutdown: letzter log eintrag: was erwartest du innerhalb von 8 sekunden? so ein shutdown dauert.
  25. In dem Artikel das ist im Grunde keine Anleitung, sondern ein Dirty Hack, weil man Unraid vorgaukelt, dass es dafür einen offiziellen Agenten gäbe, den es aber gar nicht gibt. zB kannst du bei den Unraid Benachrichtigungen irgendeine der vielen aktivieren. Danach findest du ein Shell Skript in: /boot/config/plugins/dynamix/notifications/agentsDas könnte man nun "umschreiben", um dann "ntfy" nutzen zu können. Besser wäre aber logischerweise, wenn man einen offiziellen Agenten dafür anfragen oder selbst entwickelt. Die Tage habe ich zB den für Discord optimiert: https://github.com/unraid/webgui/pull/2364 Ich halte es jetzt nicht für mega schwer sowas dann als Basis für einen neuen Agenten zu nehmen. Bei Bedarf kann ich den dann mal versuchen zu entwickeln. Laut KI hat ntfy selbst keine User-Verwaltung, sondern wenn kommt die durch den Container. Welchen nutzt du, wie sieht dein Container Template aus und hast du die Doku des Containers dazu gelesen?

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.