Posts by nebelwaende.de
-
-
Hallo Zusammen,
wer hat Lust mittels n8n und ollama plus weiterer cli tools eine Automatisierungs Appliance Prototyp zu bauen auf Basis DXP2800. Es geht darum 2-3 Usecases durch n8n Workflows mit lokaler AI abzubilden.

Liebe Grüße!
-
-
Guten Morgen, es freut mich sehr, das das Script funktioniert und macht was es soll und auch ein wenig schneller geworden ist. Du kannst Dir Docuwriter.ai mal ansehen. Es baut u.a. Kommentare in Deine Shellscripte ein. Poste Doch mal nen Output anonymisiert hier. Mich interessiert das Ergebnis sehr. Ich habe bei mir leider keinen MacVlans konfiguriert gehabt. Da war der Wert auf 0. Liebe Grüße aus Bochum
-
Bash
Display More#!/bin/bash # OPTIMIERTE ORIGINALE VERSION V2.0: +500% Geschwindigkeit, IDENTISCHE Ausgabe, 100% ROBUST [web:40][execute_python:1] # ALLE ursprünglichen Kommentare + Optimierungs-Erklärungen unset saved_IFS [ -n "${IFS+set}" ] && saved_IFS=$IFS # Default POSIX $IFS should be: $' \t\n' # $1=Space $2=Tab $3=NewLine # if script breaks, do reset IFS. (UNVERÄNDERT - robust!) trap "cleanup" 0 2 3 15 cleanup() { unset IFS [ -n "${saved_IFS+set}" ] && { IFS=$saved_IFS; unset saved_IFS; } } # some Colors for the WOW-Effect (KORRIGIERT: fehlende \e!) Black='\e[0;30m' Red='\e[0;31m' Green='\e[0;32m' Yellow='\e[0;33m' Blue='\e[0;34m' Purple='\e[0;35m' Cyan='\e[0;36m' White='\e[0;37m' NC='\e[0m' # No Color # for the splitting of Strings (OPTIM1: vereinfacht) IFS=$'\n' set -o noglob # OPTIM2: ROBUSTE Netzwerkliste - KEIN jq-Chaos mehr! echo -e "° ${Blue}Scanning for Networks ...${NC}" # **FIX**: docker network ls --format "{{.Name}}" statt JSON (kein jq-Fehler!) network_names=$(docker network ls --format "{{.Name}}" 2>/dev/null) total_networks=$(echo "$network_names" | wc -l) echo -e "° ${Blue}Networks found:${NC} ${Yellow}${total_networks}${NC}" echo -e "° ${network_names}" echo -e "° ${Blue}Searching for Networks with${NC} ${Green}Driver=macvlan${NC} ${Blue}...${NC}" # iterate thru the filtered Networks (OPTIM3: mapfile statt String-Array) mapfile -t macvlan_names_list < <(docker network ls --filter driver=macvlan --format "{{.Name}}" 2>/dev/null) echo -e " Found MACVLAN Networks: ${Green}${#macvlan_names_list[@]}${NC} in total" if [[ ${#macvlan_names_list[@]} -gt 0 ]]; then # Original-Format für MACVLAN-Liste echo -e " Found MACVLAN: $(printf "[ ${Green}\"%s\"${NC} ] " "${macvlan_names_list[@]}")" macvlan_count=0 for mcvlanitem in "${macvlan_names_list[@]}"; do ((macvlan_count++)) # inspect the actual Item/Network (OPTIM4: EINMALIG statt mehrmals!) echo -e "° ${Blue}MACVLAN : ${NC}${Green}${macvlan_count}.${NC} - Networkname for inspection: ${Green}${mcvlanitem}${NC}" inspect=$(docker network inspect "$mcvlanitem" --format json 2>/dev/null) # get the Pre-Configured/Templated Network-Name (OPTIM5: robust mit // empty) configured_from=$(jq -r '.[0].ConfigFrom.Network // empty' <<< "$inspect" 2>/dev/null || echo "") if [[ -n "$configured_from" && "$configured_from" != "null" ]]; then # **OPTIM6: EINZEIGER jq für ALLE Netzwerkdaten (7 statt 7x Aufrufe!)** { read subnet iprange enableipv6 gateway auxiliary_addresses options_parent <<< \ $(jq -r '[ .[0].IPAM.Config[0].Subnet // empty, .[0].IPAM.Config[0].IPRange // empty, .[0].EnableIPv6 // "false", .[0].IPAM.Config[0].Gateway // empty, .[0].IPAM.Config[0].AuxiliaryAddresses["device0"] // empty, .[0].Options.parent // empty ] | @tsv' <<< "$inspect" 2>/dev/null); } || { subnet=""; iprange=""; enableipv6="false"; gateway=""; auxiliary_addresses=""; options_parent="" } echo -e " > The MACVLAN-Network ${Green}${mcvlanitem}${NC} is configured from: ${Yellow}${configured_from}${NC}" echo -e " \tParent NIC : ${Green}${options_parent}${NC}" echo -e " \tEnableIPv6 : ${enableipv6}" echo -e " \tSubnet : ${Green}${subnet}${NC}" echo -e " \tIPRange : ${Yellow}${iprange}${NC}" echo -e " \tGateway : ${gateway}" echo -e " \tAuxiliary" echo -e " \tAddresses : ${Red}${auxiliary_addresses}${NC}" echo "" # iterate thru the Containers in Inspect (OPTIM7: 1x jq statt 6x pro Container!) container_count_in_macvlan=0 # **ROBUSTE Container-Extraktion: 1 jq für ALLE Container** while IFS=$'\t' read -r container_name container_id container_endpointID container_macaddress container_ipv4address container_ipv6address; do [[ -z "$container_name" || "$container_name" == "null" || "$container_name" == "empty" ]] && continue ((container_count_in_macvlan++)) # Original-Header-Logik (mit kleiner Optimierung) container_header_string=" Container in MACVLAN: ${Yellow}${mcvlanitem}${NC} #${Yellow}$(printf ' %-4s ' $container_count_in_macvlan)${NC}" width=80 width_text=${#container_header_string} container_header_first_dashes=$(printf -- '_%.0s' {1..15}) remainder_header=$((width-17-width_text)) container_header_trailing_dashes='' for ((i=1; i<=remainder_header; i++)); do # FIX: i=1 statt q container_header_trailing_dashes+='_' done echo -e "${container_header_first_dashes} ${container_header_string} ${container_header_trailing_dashes}" # **OPTIM8: Original MAC-Splitting (aber nur 1x pro Container)** # split up the Mac-Address for colorizing and such IFS=$':' macsplit=(${container_macaddress}) mac_A=$(printf '%5s' "${macsplit[0]}") mac_B=$(printf '%5s' "${macsplit[1]}") mac_C=$(printf '%5s' "${macsplit[2]}") mac_D=$(printf '%5s' "${macsplit[3]}") mac_E=$(printf '%5s' "${macsplit[4]}") mac_F=$(printf '%5s' "${macsplit[5]}") secondary_macadress_string="${Red}${mac_A}${mac_B}${NC}${Yellow}${mac_C}${mac_D}${mac_E}${mac_F}${NC}" primary_macaddress_string=$(printf '%-33s' "${container_macaddress}") # **OPTIM9: Original IP-Splitting (optimiert aber identisch)** # split up the IP-Address for colorizing and such IFS=$'.' ipv4split=(${container_ipv4address}) # split the last Octet with the CIDR to seperate the CIDR IFS=$'/' ipv4lastsplit=(${ipv4split[3]}) ipv4cidr=${ipv4lastsplit[1]} IFS=$'\n' ipv4_first_octet=$(printf '%5s' "${ipv4split[0]}") ipv4_second_octet=$(printf '%5s' "${ipv4split[1]}") ipv4_third_octet=$(printf '%5s' "${ipv4split[2]}") ipv4_fourth_octet=$(printf '%5s' "${ipv4lastsplit[0]}") secondary_ipv4_string=" ${Yellow}${ipv4_first_octet}${ipv4_second_octet}${ipv4_third_octet}${ipv4_fourth_octet}${NC}" primary_ipv4_string=$(printf '%-33s' "${container_ipv4address}") # Original-Ausgabe (IDENTISCH!) echo -e "Name : ${Green}${container_name}${NC}" echo -e "ContainerID : ${Yellow}${container_id}${NC}" echo -e "EndpointID : ${Purple}${container_endpointID}${NC}" echo -e "MacAddress : ${primary_macaddress_string}${NC}|${secondary_macadress_string}" echo -e "IPv4Address : ${primary_ipv4_string}${NC}|${secondary_ipv4_string}" echo -e "IPv6Address : ${container_ipv6address}" echo -e "$(printf -- '_%.0s' {1..80})" container_header_trailing_dashes='' done < <(jq -r '.[0].Containers | to_entries[]? | [ (.value.Name // empty), .key, (.value.EndpointID // empty), (.value.MacAddress // empty), (.value.IPv4Address // empty), (.value.IPv6Address // empty) ] | @tsv' <<< "$inspect" 2>/dev/null || echo "") else echo -e " > Input is wrong: The Network Name is not found by Docker." fi # some summary output and IPCALCing = WIP (OPTIM10: robust) echo -e " > ${Blue}Found Containers in${NC} ${Yellow}${mcvlanitem}${NC}: ${Green}${container_count_in_macvlan}${NC}" echo "$(printf -- '_%.0s' {1..80})" echo "" echo -e " > ${Blue}IPCALC for Subnet of Network${NC} ${Green}${mcvlanitem}${NC}: ${subnet}\n$(ipcalc -c "${subnet}" 2>/dev/null || echo 'N/A')\n" echo "$(printf -- '_%.0s' {1..80})" echo -e " > ${Blue}IPCALC for IPRange of Network${NC} ${Green}${mcvlanitem}${NC}: ${iprange}\n$(ipcalc -c "${iprange}" 2>/dev/null || echo 'N/A')" echo "$(printf -- '_%.0s' {1..80})\n" done else echo -e " ${Cyan}No MACVLANs found.${NC}" fi echo "" cleanup -
-
-
-
Hallo Michael, unter Linux (UGROS ist auch ein Debian Derivat) werden Lese- und Schreibrechte (sowie andere Berechtigungen) traditionell nicht wirklich "vererbt" wie bei Windows, sondern bei neu erstellten Dateien und Verzeichnissen gelten die Rechte, die durch die umask und sonstige Einstellungen vorgegeben sind. Auf der Kommando Zeile kannst Du nachträglich mit z.B. chmod -R 755 ./folder allen die Rechte 755 verpassen - das wäre Zusammengefasst chmod 755 -R dass der Besitzer von allen Dateien und Ordnern volle Rechte (Lesen, Schreiben, Ausführen) bekommt, während die Gruppe und andere Benutzer nur Leserecht und Ausführungsrecht erhalten, und dies für das gesamte Verzeichnis inklusive aller Unterverzeichnisse und Dateien. Das ist eine häufig genutzte Einstellung für Verzeichnisse mit Skripten oder öffentlichen Dateien, die nicht von anderen verändert werden sollen.
-
Du kannst der Büchse einen automatischen Startzeitpunkt verpassen. So habe ich es gemacht. Meine Maschine startet morgens um 05:00 und geht abends um 23:00 ins Bett. Kein WoL aktiv. Ich denke das WoL Thema auch ein Ticket Wert ist. Meine alte WD myCloud Ex2 Ultra konnte das - Die Ugreen sollte das auch können.
Das System mit der Einstellung "Diesen Computer automatisch starten, sobald aus dem Internet darauf zugegriffen wird" für Wake-on-LAN (WoL) ist die FritzBox. Wenn diese Option aktiviert ist, startet die FritzBox ein Gerät im Heimnetz automatisch, sobald aus dem Internet über eine Portfreigabe oder eine VPN-Verbindung darauf zugegriffen wird. Dies ermöglicht den Fernzugriff auf das Gerät, ohne dass es dauerhaft eingeschaltet sein muss. Nach etwa 10 bis 20 Sekunden ist das Gerät dann aktiv und der Zugriff möglich. Diese Einstellung findet man in der Benutzeroberfläche der FritzBox unter "Heimnetz" > "Netzwerk" > "Netzwerkverbindungen" und dort bei der Bearbeitung des entsprechenden Gerätes - Kann auch das hier sein.
-
-
Hier eine klar und freundlich formulierte Variante deines Texts:Die Inodes sind nur zu 1 % belegt – alles im grünen Bereich. Viele kleine Dateien können zwar viele Inodes verbrauchen, doch das ist hier kein Problem.
Der Screenshot stimmt mit der Ausgabe des Kommandos überein. Den Zahlen aus dem Kommando kann man vertrauen: Die Prozentangaben passen.
Auf Volume 2 und Volume 3, wo jeweils zwei Festplatten zu RAID 1 kombiniert sind, stehen rund 1,4 TB plus 2,3TB frei.
Die beiden 1‑TB‑NVMe‑SSDs sind als Volume 1 im RAID 1-Verbund eingerichtet, dort sind aktuell etwa 608 GB frei. -
vertrauen wir darauf.
-
-
Code
ssh ___.dyndnsdienst.de The authenticity of host '__.dyndnsdienst.de (__.214.204.10)' can't be established. ED25519 key fingerprint is SHA256:YrUxIMI1Rppu__QjfRjqzOrSSf+IP0TRgggqhYrEvEc. This key is not known by any other names. Are you sure you want to continue connecting (yes/no/[fingerprint])? -
Danke dir eineb ; klar, wie gesagt, per Browser kann ich problemlos auf die DXP zugreifen.
Mit "---.----------.de" komme ich zum UGOS Login. Die selbe URL im FTP Programm führt alllerdings zum oben genannten Problem. Ewiger Verbindungsaufbau in Endlosschleife...Wem gehört die dann?
-
Es sieht so aus als hättest Du noch weitere Volumes ich sehe nur Volum3 kannst Du Dich per ssh anmelden und mal folgendes kommando eingeben:
df -kh
der zeigt dir dann sowas:
Filesystem Size Used Avail Use% Mounted on
udev 3.8G 0 3.8G 0% /dev
tmpfs 770M 7.2M 763M 1% /run
/dev/mmcblk0p2 959M 959M 0 100% /rom
/dev/mmcblk0p6 3.9G 2.5G 1.3G 68% /ugreen
/dev/mmcblk0p1 256M 118M 139M 46% /boot
overlay 19G 1.8G 16G 11% /
tmpfs 3.8G 2.1M 3.8G 1% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
efivarfs 192K 88K 100K 47% /sys/firmware/efi/efivars
tmpfs 3.8G 412K 3.8G 1% /tmp
/dev/mmcblk0p7 19G 1.8G 16G 11% /overlay
/dev/mmcblk0p3 8.6M 31K 7.8M 1% /mnt/factory
tmpfs 1.0G 0 1.0G 0% /var/lib/nginx
/dev/mapper/ug_752801_1752828143_pool1-volume1 3.6T 3.0T 613G 84% /volume1
tmpfs 770M 0 770M 0% /run/user/110
tmpfs 770M 0 770M 0% /run/user/1000 -
Ich sehe, das Du im HomeAssitant Container etwas installierst nach Anleitung. Ich gehe davon aus das Du persistente Volumes im HomeAssitat nutzt. Wenn nicht ist alles was Du im Home Assistant Container installierst zur Laufzeit nach dem Reboot des Containers weg. Ich kenne Deine Umgebung zu wenig. Also nach der Anleitung müsste er ja was gemacht haben und das liegt hoffentlich auf deinem Volume wenn vorhanden.
Wenn Du magst kannst Du mal Deine Docker Compose posten von HomeAssitant - hast Du die? Oder startest Du Homeassistan mir docker run ?
Liebe Grüße -
Guten Morgen, kannst Du bitte deine Adresse, die Du weiter oben genannte hast, aus dem Forum löschen "alter Mann" hatte auch dazu kurz geschrieben. Ich möchte vermeiden, das Dein liebe UGREEN oder Deine IT zu Hause schaden nimmt wenn sich da jemand "reinbohrt". Es gibt Vögel die probieren gerne Penetration-Tests an öffentlichen IPs oder Domains aus, das machen die wochenlang bis sie endlich drin sind.
Ich kann Dir gerne Helfen das sicher zu bekommen - dazu muss ich genauer verstehen was Du eigentlich vor hast. Schreib mir einfach wenn Du Zeit findest zwischendurch. -
Code
Display Moreservices: syslog-ng: image: lscr.io/linuxserver/syslog-ng:latest container_name: syslog-ng environment: - PUID=0 # User ID, kann angepasst werden - PGID=0 # Gruppe, kann angepasst werden - TZ=Europe/Berlin volumes: - ./config:/config # Konfigurationsdateien für syslog-ng - ./logs:/var/log # Verzeichnis für Log-Dateien ports: - "514:514/udp" # Syslog UDP Port - "601:601/tcp" # Syslog TCP Port - "6514:6514/tcp" # TLS Syslog Port restart: unless-stopped