Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Script für Ordner löschen auf einem NAS

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Script für Ordner löschen auf einem NAS

    This topic has been deleted. Only users with topic management privileges can see it.
    • N
      Nordischerjung @TT-Tom last edited by

      @tt-tom Moin,

      ja in den DPs steht dann schon zb Kamera Eingang in dem anderen 2023 und in dem anderen 04 drin

      leider geht das Mounten nicht, da iobroker in einem Unprivileged LXC läuft. Habe schon viel versucht, aber scheinbar geht es damit nicht, oder ich zu dusselig ( Was hier sehr naheliegen könnte 🙂 )

      maximal1981 T 2 Replies Last reply Reply Quote 0
      • maximal1981
        maximal1981 @Nordischerjung last edited by maximal1981

        @nordischerjung wenn du nicht zur NAS kommst, kannst auch nichts löschen

        EDIT: am host könntest du es mounten und ein bindmount machen

        N 1 Reply Last reply Reply Quote 0
        • N
          Nordischerjung @maximal1981 last edited by

          @maximal1981 sagte in Script für Ordner löschen auf einem NAS:

          EDIT: am host könntest du es mounten und ein bindmount machen

          wie geht das?

          maximal1981 1 Reply Last reply Reply Quote 0
          • maximal1981
            maximal1981 @Nordischerjung last edited by

            @nordischerjung dafür gibt es google und das proxmox Forum

            https://forum.proxmox.com/threads/mount-nfs-share-on-host-and-create-a-mount-point-in-a-unprivileged-container.119603/

            ein wenig kann man sich auch selbst durcharbeiten, wenn man schon die Begrifflichkeiten hat

            1 Reply Last reply Reply Quote 0
            • T
              TT-Tom @Nordischerjung last edited by

              @nordischerjung

              Also dein Button muss in ein Datenpunkt schreiben, diesen nutzt du dann als Trigger. Die anderen Datepunkte nutzt du mit dem Textbaustein „ erstelle Text aus“ und setzt den Pfad zusammen.

              Aber erst musst du das Problem mit dem Zugriff lösen und da kann ich dir leider nicht weiter helfen. Habe keine Container.

              N 1 Reply Last reply Reply Quote 0
              • N
                Nordischerjung @TT-Tom last edited by

                @tt-tom soweit habe ich es schon

                fa60abeb-ba87-4418-9713-75eef7746c6f-image.png

                nur wie lautet der Löschbefehl, muss ich es dann mit dem exec Baustein machen?

                Ja, das mounten ist natürlich noch das Problem. Ich hatte schon viel in den Foren gesucht und probiert, aber mit Backitup hatte ich es einfach nicht geschafft. Deshalb nutze ich dort immer noch FTP

                T 1 Reply Last reply Reply Quote 0
                • N
                  Nordischerjung last edited by Nordischerjung

                  Ich habe es jetzt erst einmal per FTP gelöst. Das funktioniert auch schon.

                  f9d355a4-9987-4cbf-8abc-d387780fbc98-image.png

                  const ftp = require('ftp');
                  
                  function deleteFolderOnNAS(folderPath) {
                  
                  console.log (folderPath);
                  
                  
                  const config = {
                    host: '192.168.170.70',
                    port: 21,
                    user: 'xxx',
                    password: 'xxx',
                  };
                  
                  const client = new ftp();
                  
                  client.on('ready', () => {
                  
                  console.log('Verbindung zum NAS per FTP erfolgreich hergestellt.');
                    client.list(folderPath, (err, list) => {
                      if (err) {
                        console.error('Fehler beim Überprüfen des Ordners:', err);
                        client.end();
                        return;
                      }
                  
                      if (list.length === 0) {
                        console.error('Der zu löschende Ordner existiert nicht, oder ist Leer');
                        client.end();
                        return;
                      }
                  
                      client.rmdir(folderPath, true, (err) => {
                        if (err) {
                          console.error('Fehler beim Löschen des Ordners:', err);
                        } else {
                          console.log('Ordner erfolgreich gelöscht.');
                        }
                  
                        client.end();
                      });
                    });
                  });
                  
                  client.on('error', (err) => {
                    console.error('Fehler beim Verbindungsaufbau:', err);
                  });
                  
                  client.connect(config);
                  }
                  
                  const folderPath = '/Videos/' + Kamera + '/' + Jahr + '/' + Monat; // Pfad zum zu löschenden Ordner
                  
                  deleteFolderOnNAS(folderPath);
                  

                  Ich würde jetzt gerne nur die Verbindungsmeldungen

                  Verbindung zum NAS per FTP erfolgreich hergestellt. oder 
                  Fehler beim Verbindungsaufbau 
                  

                  in die Varibale "Verbindung" schreiben

                  Und die anderen 3 (Fehler beim löschen usw) in die Var "Ordnervorh" schreiben.

                  Wie geht das denn?

                  Einfach mit

                  console.log('Verbindung zum NAS per FTP erfolgreich hergestellt.');
                  Verbindung = 'Verbindung zum NAS per FTP erfolgreich hergestellt.' ;
                  

                  hat es nicht funktioniert. Der LOG Eintrag kam aber

                  PS an dem Baustein hatte ich natürlich Variablen dran an Verbindung und Ordnervorh

                  T 2 Replies Last reply Reply Quote 0
                  • T
                    TT-Tom @Nordischerjung last edited by

                    @nordischerjung

                    Schau es mir heute Abend an, am Handy ist doof.

                    1 Reply Last reply Reply Quote 0
                    • T
                      TT-Tom @Nordischerjung last edited by

                      @nordischerjung

                      zum Ausführen benötigst du den exec Baustein.

                      hier Info zum EXEC Baustein

                      hier info zum Löschen unter Linux, damit muss aber dein Verzeichnis unter ioBroker gemountet sein

                      1 Reply Last reply Reply Quote 0
                      • T
                        TT-Tom @Nordischerjung last edited by TT-Tom

                        @nordischerjung sagte in Script für Ordner löschen auf einem NAS:

                        in die Varibale "Verbindung" schreiben
                        Und die anderen 3 (Fehler beim löschen usw) in die Var "Ordnervorh" schreiben.
                        Wie geht das denn?

                        möchtest du diese als Rückmeldung haben oder übergeben?

                        hier Findest du noch mal infos zu den Funktion

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        466
                        Online

                        31.7k
                        Users

                        79.8k
                        Topics

                        1.3m
                        Posts

                        blockly javascript
                        3
                        12
                        453
                        Loading More Posts
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes
                        Reply
                        • Reply as topic
                        Log in to reply
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                        The ioBroker Community 2014-2023
                        logo