Beiträge von tuxflo

    die benötige Software einfach über APT direkt auf dem NAS installieren?

    Nein kannst du nicht. Auf dem Betriebssystem QTS, welches auf dem NAS läuft gibt es keine apt basierende Paketverwaltung. Im Prinzip kannst du den in der Doku aufgeführen Befehl 1 zu 1 auch auf dem NAS ausführen (wenn du dich per SSH einloggst). Oder du "übersetzt" die Aufrufe in die GUI der Container Station, was auch nicht wirklich kompliziert ist.

    Das einzige Problem was ich sehe ist diese Zeile: --device=/dev/ttyACM0 hier habe ich bisher Probleme gehabt, weil das für serielle Geräte verwendete Kernelmodul zu spät geladen wird. Konkret heißt das, dass du nach einem Neustart Probleme bekommen könntest, wenn der Container auch automatisch gestartet werden soll. Ggf. kannst du hier mit einem Cron Job Abhilfe schaffen.

    Ich persönlich habe auch einen Conbee 2, habe mir aber vor kurzem einen Raspi 3 als Smarthome Hub mit Home Assistant eingerichtet. Das ist um ein vielfaches einfacher, als dem NAS diese Funktionen beizubringen.

    Nur weiss ich nicht wie dies zu bewerkstelligen ist, da mir Baikal eben als Applikation installiert wurde.

    Wenn das so ist, dann kann ich nur sagen: Finger weg davon. Insbesondere, wenn du scheinbar nicht ohne weiteres weißt, was unter welchem Port läuft, kann ich nur dringend davon abraten so was selbst zu hosten.
    Ganz ehrlich wenn du Kalender Sync möchtest, dann gibt es Anbieter die dir das für 1€ pro Monat sicher und fix und fertig mit Anleitungen für alle Clients und einer Weboberfläche zur Verfügung stellen und da bekommst du sogar noch eine E-Mail Adresse gratis dazu. Wenn du die Zeit die du hier in Bastelei investierst mal als Stundenlohn gegenrechnest, wirst du sehen, dass sich das bei so einem Kenntnisstand nicht lohnt. Mal abgesehen davon, dass du auch noch die Zeit mitrechnen musst, wenn mal was nicht klappt.
    Wenn es dir aber um das Basteln, die Technik und Wissenserwerb geht, dann solltest du ein extra Gerät dafür nutzen wie z.B. einen Raspberry Pi oder ein NAS wo keine "wichtigen" Daten drauf sind. Und du solltest dir vorher mal ein paar Grundlagen anschauen (Ports, TCP/IP, DynDNS, VPN u.s.w.).

    ich habe gewisse Zweifel, ob das mit dem --device=/dev/ttyACM0 auf dem QNAP so funktionieren wird

    Die Zweifel sind berechtigt. Das funktioniert so ohne weiteres nicht. Grund dafür ist, dass Container unter Umständen schon gestartet werden bevor die Kernelmodule für solche Geräte beim Start des NAS geladen werden. Man müsste also eine Startverzögerung einbauen. Ich selbst habe das leider noch nicht gelöst bekommen...

    Wäre es eine Möglichkeit, das NAS heruntzerzufahren, die betreffende Film-Festplatte herauszunehmen und per USB-SATA Adapter an meinen Mac zu hängen und dann z.B. mit DiskDrill oder einem ähnlichen Tool zu durchsuchen?

    Aus meiner Erfahrung kann ich diese Frage mit einem klaren "Nein" beantworten. Denn in der Regel sind auch statische Volumes bei Qnap eben nicht "einfach" mit ext4 Formatiert, sondern mit einem eigenen Dateisystem. Dazu müsstest du dich mit drdb und ähnlichen Dingen befassen. Ich habe es auch nach vielen Versuchen unter Linux zumindest nicht hinbekommen die alten Platten aus meiner TS-251+ zu mounten.
    Ist für mich übrigens ein Grund, warum mein nächstes NAS vermutlich nicht aus dem Hause QNAP sein wird, obwohl ich sonst rundum zufrieden und begeistert bin. Aber so ein Vendor-Lock-In für Daten die mir wichtig sind ist für mich ein No-Go.

    Edit: Falls du es trotzdem selbst versuchen willst, im englischsprachigen QNAP Forum haben das auch schon Leute versucht: https://forum.qnap.com/viewtopic.php?t=143408

    Und selbst wenn die Anwendungen die gleichen Ports verwenden wollen: der Vorteil an Docker ist, dass man das einfach bei der Erstellung des Containers ummappen kann. Entweder über die Container Station GUI in den Netzwerkeinstellungen oder über die Kommandozeile mit dem Flag -p.

    Also ich will ja nicht unhöflich sein, aber ich frage mich wie du einen LXC Container per Kommandozeile administrieren willst, wenn du die oben genannte Fehlermeldung nicht mal richtig interpretieren und ggf. beheben kannst...


    Aber selbst wenn man den oben genannten Fehler per opkg install getopt behebt, treten nur weitere Fehler auf, weil die LXC-Templates die QNAP liefert scheinbar ewig alt sind. Wie dem auch sei man kann trotzdem einen 20.04 Container erstellen in dem man sich ein das Template "local" zur Hilfe nimmt und ein wenig anpasst (das QNAP eigene tar kommt scheinbar mit J nicht zurecht)


    Hier eine "Schritt für Schritt Anleitung" welche im wesentlichen hierauf basiert https://ubuntu.com/tutorials/create-custom-lxd-images#3-creating-basic-system-installation:


    1. debootstrap installieren (opkg install debootstrap


    2. in ein temporäres Verzeichnis wechseln, wo man die Daten zwischenspeichern kann (ich habe /homes/admin gewählt) cd /share/CACHEDEV1_DATA/homes/admin/

    3. debootstrap starten um das rootfs zu initialisieren: debootstrap --arch=amd64 focal focal-lxc  (jetzt sind quasi alle Dateien der 20.04 Version im Ordner "focal-lxc")


    4. root passwort vergeben: chroot focal-lxc/ /bin/bash und dann per passwd ein neues Passwort setzen

    5. Das Root Dateisystem packen: tar -cvzf rootfs.tar.gz -C focal-lxc/ . 

    6. eine metadata.yaml Datei anlegen. Entweder von Hand oder man nimmt die, die auch bei der Linux Station mitgeliefert wird: cp /share/CACHEDEV1_DATA/.qpkg/ubuntu-hd/lxd-config/ubuntu-2004/metadata.yaml .  und passt sie dann entsprechend an vim metadata.yaml (der aktuelle Zeitstempel kann mit date +%s generiert werden.


    Inhalt der metadata.yaml:

    Code
    architecture: "x86_64"
    creation_date: 1606913739
    properties:
    architecture: "x86_64"
    description: "custom Ubuntu 2004"
    os: "ubuntu"
    release: "focal"


    7. eine config Datei anlegen: touch config

    8. metadata.yaml und config packen: tar -cvzf metadata.tar.gz metadata.yaml config 


    Bis hierher unterscheidet sich das Prozedere eigentlich nicht von der Erstellung eines normalen Images. Unter normalen Umständen würde man dann einfach das "locale" Template verwenden um aus dem Image einen Container zu erstellen. Qnap liefert das aber leider nicht mit, darum muss man sich hier selbst helfen...


    9. das Template lxc-local anlegen: hier mussten ein paar Änderungen vorgenommen werden, da der tar Befehl von QNAP das Flag J nicht kennt. Die Datei muss ohne die Endung .txt unter /usr/share/lxc/templates/lxc-local abgelegt werden und ausführbar gemacht werden (chmod +x /usr/share/lxc/templates/lxc-local


    10. Mit Hilfe des Templates kann es jetzt an die Erstellung des Containers gehen: lxc-create -t local -n ubuntu_focal -- --fstree rootfs.tar.gz --metadata metadata.tar.gz

    11. Nach Abschluss des Prozesses sollte der Container erstellt und nutzbar sein. Zum ersten start am besten im "Foreground" Modus (-F) starten: lxc-start -n ubuntu_focal -F



    Dann sollte sowas zu sehen sein:

    Code
    Ubuntu 20.04 LTS nas console
    
    nas login: 

    und man kann sich dann mit dem in Schritt 4 vergebenen Passwort als Benutzer root einloggen können.

    Aber ich wünsche mir eigentlich nur einen schlanken Linux-Server den ich per Terminal bediene.

    Ok, wenn dem so ist, sollte dich auch nix davon abhalten dir einen 20.04 Container mit dem Kommandozeilentool zu erstellen:

    Code
     lxc-create -t download -n ubuntu -- --dist ubuntu --release focal --arch amd64

    Also die einfachste Variante wäre vermutlich, wenn du dir einfach die Linux Station installierst. Denn die ist nix anderes als ein LXC Container mit einer erweiterten Konfiguration. Als Bonus bekommst du eine fertige Bridge Network Konfiguration mit dazu, das manuell unter QTS zu machen ist sonst nämlich ein echter Kampf und hat bei mir neulich dazu geführt, dass das NAS über LAN gar nicht mehr erreichbar war.

    Ich habe schon mal versucht meine alten Daten von meiner TS-251+ runter zu bekommen -> erfolglos. Obwohl ich kein nennenswertes RAID einsetze ist die "Standardpartitionierung" in Thin und Thick Volumes von QNAP alles andere als Standard und ich habe es auch nach etlichen Stunden nicht hinbekommen. Bei mir lief es dann tatsächlich darauf hinaus, dass ich mir das gleiche NAS Modell nochmal neu gekauft habe, die Platten habe ich allerdings immernoch hier. Also falls jemand was herausfindet: immer her mit den Infos


    P.S.: Ich hatte auch schon zum Test das Erweiterungsgehäuse hier, in der Hoffnung, dass dieses vielleicht die Partitionen erkennt und ich die Daten transferieren kann leider war auch das Erfolglos.

    Ich verstehe das Problem noch nicht so ganz. Der Docker Daemon läuft doch als root user, kann man dann nicht einfach im jeweiligen Container die Rechte so setzen wie man das gern hätte? Mit meinem IRToy Device (welches intern auch als /dev/ttyACM0 erkannt wird) kann ich jedenfalls problemlos aus dem Container arbeiten, wenn ich das Gerät via --device /dev/ttyACM0:/dev/ttyACM0 beim docker run Befehl mitgebe ohne das ich vorher irgendwelche Berechtigungen anpassen muss.

    Die Frage wäre ja eigentlich "nur" wie man die armhf Anwendung auf dem arm64 System des TS-230 ans laufen bekommt.

    Die einfache Antwort darauf ist: gar nicht. Selbst wenn du es unter Umständen hinbekommen könntest eine einzelne Komponente zum Laufen zu bringen, wie willst du denn sicherstellen, dass alle beteiligten Komponenten (verschiedene Server Dienste, OCR Erkennung, Ordnerüberwachung, Datenbank) auch richtig gestartet werden und miteinander kommunizieren können (wie chef1 ja auch schon geschrieben hat)?
    Weiterhin würde ich so ein "selbstgestricktes" System auf keinen Fall für die tatsächliche Verwaltung von (wichtigen) Dokumenten nutzen. Wenn du das System zunächst nur mal testen willst, kannst du das mittels Docker auf jedem beliebigen 64 Bit Rechner oder eben einem Raspi machen.

    Also EuroDNS unterstützt die CGI-Technik schlicht nicht und schlägt als einzige Möglichkeit den ddclient vor.

    Hmmm OK, aber dann würde ich vermutlich eher den DNS Anbieter wechseln :S
    Inwx kann glaube ich von Haus aus auch DynDNS ohne sowas wie ddclient.

    und zwar als vollwertiges Linux als virtuelle Maschine,

    Wenn du dich mit Containern (noch) nicht auskennst kann das die einfachste Lösung sein. Andernfalls ist es für Sachen die auch in Containern laufen können Ressourcenverschwendung.

    Kann man NICs oder anderweitigen Geräten auch "händisch" eine IPv6 vergeben wie analog IPv4?

    Ja natürlich kannst du das und im Gegensatz zu IPv4 kannst du eben, wie schon oben beschrieben, diese Adresse einfach zusätzlich verwenden ohne auf die andere verzichten zu müssen. Niemand hindert dich deinen Geräten Adressen a la ::3 oder ::42 zu geben.


    Einfaches, praktisches Beispiel für die Verwendung von fe80 Adressen:
    Router Konfiguration: du bist per SSH auf deinem Router eingeloggt, nimmst Änderungen vor und drückst einmal zu schnell auf "Enter" ohne dir den Befehl nochmal genau anzuschauen und hast dich durch die Konfig selbst ausgesperrt. Mit IPv4 musst du jetzt schauen, dass du irgendwie über eine serielle Schnittstelle wieder auf das Teil kommst um die falsche Konfig wieder zu beheben. Bei IPv6 suchst du einfach nach der entsprechenden Link Local Adresse (diese kann über einen ping ermittelt werden), machst ein ssh [f380::xxxxx] und behebst die Konfig.

    Mod: Zitat ohne Quellenangabe ... korrigiert! :handbuch::arrow: Die Zitat Funktion des Forums richtig nutzen

    Ich für mich halte nichts davon und habe das Gefühl, dass damit versucht wird das nachzubilden, was wir vom NAT her gewohnt waren. Von mir aus soll jedes einzelne meiner Geräte identifizierbar sein.

    Das hat weniger was mit NAT zu tun, als damit, dass heutzutage tausende Werbetreibende einen ziemlichen Aufriss machen um Nutzer so gut es geht "wiedererkennbar" zu machen. Dafür gibt es Tracking Pixel, Browser Fingerprints und was weiß ich noch für Techniken. Ohne die Verwendung der Privacy Extensions wäre das für diese Branche ein Fest, da sie dich dann nicht nur zu Hause identifizieren können, sondern auch noch in jedem anderen Netz wo sich dein Gerät einwählt und damit z.B. ohne weiteres sehen, dass du gerade im Urlaub bist und z.B. in welchem Hotel du da wohnst. Aber auch hier hindert dich niemand daran das zu ändern:


    Code
    cat >> /etc/sysctl.conf <<EOT
    net.ipv6.conf.all.use_tempaddr=0
    net.ipv6.conf.default.use_tempaddr=0
    EOT
    
    sysctl -p


    Die Vergabemechanismen sind in der Tat ziemlich komplex, hier habe ich selbst auch noch Nachholbedarf. Hier kommt es maßgeblich darauf an ob man möchte das sich das Netz mehr oder minder selbst verwaltet (durch die automatische Generierung von IPv6 Adressen) oder ob man da selbst Hand anlegen möchte.

    Zum Thema:

    Danke für den Link, ich hab sber keine Lautsprecher am Rechner. Bin da Minimalistisch veranlagt.

    die Podcast Episoden sind auch sehr lang, ich würde empfehlen sie entweder bei einer längeren Fahrt oder unterwegs zu hören (wie alle anderen Podcasts auch :))

    Danke fürs Aufteilen!

    Kann eine NIC mit IPv6 etwa mehrere IPs binden?

    Ja genau. Mit IPv6 muss das sogar der Fall sein, weil es bestimmte Adressen mit einem bestimmten Scope gibt. Zum Beispiel sind alle Adressen die mit fe80 anfangen stets "Link local" Adressen und werden nicht ins Internet geroutet.

    Ich glaube mich dunkel erinnern zu können, daß man "0000" durch "::" ersetzen kann.

    Ja genau. Durch eine geschickte Anordnung von Nullen kann man auch in IPv6 "kurze" IP Adressen haben. Kombiniert mit der Fähigkeit mehrere Adressen zu haben kannst du dann wahlweise über die eine oder die andere darauf zugreifen.

    Ich fand das Thema doch schon sehr verwirrend und komplex,

    Ja, direkt einfach ist es nicht, aber das ist IPv4 auch nicht. Hier hat man sich halt nur über die Dauer dran gewöhnt. Die erwähnten Funktionen muss man meiner Meinung nach in großen Teilen auch nicht in und auswendig kennen um IPv6 für den Heimgebrauch einsetzen zu können.


    Für eine Einführung in die Thematik in Audioform kann ich die folgenden Podcast Episoden nur wärmstens empfehlen: https://cre.fm/cre197-ipv6 und https://requestforcomments.de/archives/412 beide mit Clemens Schrimpe der ein ziemlich guter Erklärbär ist (meiner Meinung nach).


    Im Großen und Ganzen will ich ja auch nicht darauf hinaus, dass man IPv4 von jetzt auf gleich ersetzen soll, nur tut es einem absolut nicht weh IPv6 einfach "anzuschalten" und dadurch ggf. sogar ein paar Vorteile des Protokolls nutzen zu können (wie z.B. die länger ausbleibende Zwangstrennung, oder die Verwendung von Link Local Adressen ohne die bestehende Konfiguration abändern zu müssen).

    Ipv4 -> NAT/Portfreigabe. Daran hat man sich gewöhnt und im Laufe der Jahre verinnerlicht.

    Das kannst du, wenn du denn willst mit IPv6 genauso handhaben. Eine Fritzbox ist z.B. ab Werk auch mit IPv6 genau so eingestellt.


    Ich kenne die IPv4-Adressen meiner Geräte @Home überwiegend auswendig. Für alles andere hab ich ne gepflegte Doku.

    Und jetzt merk Dir mal nur eine IPv6. Weiß nicht, bin da halt etwas konservativ.

    Da solltest du dich tatsächlich nochmal ein wenig mit dem Thema befassen, IPv6 Adressen können sogar kürzer als IPv4 Adressen sein. Und dadurch das jedes Interface immer mehrere Adressen unterstützt kannst du wahlweise über eine lange (automatisch generierte oder zugewiesene) oder eben über eine kurze Adresse wie ::3 oder auch über eine IPv4 ähnliche Adresse mit Prefix wie 2001:192:168:1:3 möglich.


    Ich sehe darin halt eine weitere Ebene in der Komplexität wo auch viele Stolpersteine lauern.

    Einer der Hauptgedanken bei der Erstellung des Protokolls war es (soweit ich das mitbekommen habe), eben Komplexität zu entfernen. Das merkt man auch daran, dass man einer Adresse z.B. direkt ansieht in welchem Gültigkeitsbereich sie liegt, oder daran, dass man ohne jegliche Konfiguration direkt mit Geräten kommunizieren kann ohne das man seine aktuelle Netzwerkkonfiguration abändern muss (Zum Beispiel weil ein Hersteller der Meinung ist, das man sein Webinterface immer nur über eine hartcodierte IPv4 Adresse erreichen soll).

    Demnach mein Tipp: mal ein paar Minuten Zeit nehmen und sich die Sache mal anschauen (ggf. über ein Youtube Tutorial oder halt klassisch per Buch) lohnt sich. Dann vielleicht mal mit wenigen Geräten testen und ausprobieren und später das ganze LAN darauf umstellen :P

    Du meinst IPv6? Ich bin froh, davon noch verschont zu sein. :)

    Will das Thema hier eigentlich nicht noch weiter ins Off bringen, aber darf ich trotzdem fragen warum? Ich höre/lese solche Aussagen immer wieder und kann es mir tatsächlich nicht erklären, welche (sinnvollen) Gründe gegen IPv6 sprechen.

    rednag

    auch jedesmal nach einem Connect die öffentliche IPv4.

    Dann frag doch mal deinen Anbieter, ob er die auch ein aktuelles Internet Protokoll bereitstellen kann :P.
    Denn dort wird, soweit ich das mitbekommen habe, auch seltener "zwangsgetrennt", weil es durch die hohe Anzahl an Adressen schlicht und ergreifend nicht notwendig ist.


    Zum eigentlichen Thema:

    Der dyn. DNS-Dienst auf der QNAP-Box ist leider auch nicht brauchbar.

    warum denn genau nicht? Ich betreibe den für meine VPN Verbindung schon seit Jahren ohne Probleme. Ist allemal einfacher als sich auf dem nativen Hostsystem des NAS mit Perl Abhängigkeiten rumzuärgern. Und wenn es doch unbedingt die oben beschriebene Software sein muss, dann würde ich für diese Zwecke einen Ubuntu Dockercontainer verwenden, in dem du ganz normal per apt install die benötigten Sachen installieren kannst.