Skip to main content

Installazione di prodotti SL senza un gestore pacchetti

Lo strumento di aggiornamento per i prodotti SL copia un pacchetto di installazione (.deb o .ipk) sul dispositivo di destinazione in background e quindi lo installa. Ciò richiede l'installazione di un gestore di pacchetti (dpkg o ipkg) sul dispositivo di destinazione. Se non è installato un gestore di pacchetti, lo strumento di aggiornamento non può installare un

Tuttavia, è ancora possibile installare manualmente il pacchetto se lo si desidera. Per i prodotti generici, questo è spiegato di seguito utilizzando CODESYS Control​ for Linux V4.7.0.0 come esempio.

Importante

CODESYS Control non supporta dispositivi con un file system (parzialmente) protetto da scrittura.

Se il tuo dispositivo ha un file system protetto da scrittura e hai problemi durante l'installazione o l'avvio di un prodotto, controlla se i problemi persistono dopo aver disabilitato la protezione da scrittura.

Installazione manuale del sistema runtime sul dispositivo di destinazione

  1. Dopo l'installazione del CODESYS Control​ for Linux pacchetto, i file richiesti si trovano sul PC Windows:

    • <user>/CODESYS Control for Linux SL/Delivery/codesyscontrol_linux_4.7.0.0-b.trunk.39_amd64.deb O

      <user>/CODESYS Control for Linux SL/Delivery/codesyscontrol_linux_4.7.0.0-b.trunk.39_amd64.ipk

    • <user>/CODESYS Control for Linux SL/Dependency/codemeter-lite_<Version>.deb (per licenza)

    Copia questi file sul dispositivo di destinazione.

  2. Disimballare il pacchetto:

    $ ar -x codesyscontrol_linux_<Version>

    Vengono creati i seguenti file:

    • control.tar.gz: Contiene gli script che il gestore pacchetti esegue prima e dopo l'installazione o la disinstallazione. Ciò non è rilevante per l'installazione manuale.

    • data.tar.gz: contiene binari di sistema di runtime, librerie, script di avvio e configurazioni

    • debian-binary: specifica la versione del pacchetto .deb. Ciò non è rilevante per l'installazione manuale.

  3. Disimballare il data.tar.gz file. Crea una nuova cartella per questo in anticipo:

    $ mkdir data
    $ tar -xf data.tar.gz -C data

    In data/, ora troverai i file importanti per il funzionamento del sistema runtime:

    data
    ├── etc
    │   ├── default
    │   │   └── codesyscontrol
    │   ├── init.d
    │   │   └── codesyscontrol
    │   └── codesyscontrol
    │       ├── 3S.dat
    │       ├── CODESYSControl.cfg
    │       └── CODESYSControl_User.cfg
    ├── opt
    │   └── codesys
    │       ├── bin
    │       │   └── codesyscontrol.bin
    │       ├── lib
    │       │   ├── libCmpHilscherCIFX.so
    │       │   └── libSysPci.so
    │       └── scripts
    │           ├── init-functions
    │           ├── init-vars
    │           ├── PlcWink.sh
    │           └── rts_set_baud.sh
    ├── usr
    │   └── share
    │       └── doc
    │           └── codesyscontrol
    │               └── copyright
    └── var
        └── opt
            └── codesys
                ├── bacstac.ini
                ├── cmact_licenses
                └── .SoftContainer_CmRuntime.wbb 
  4. Ora il gestore dei pacchetti (dpkg o ipkg) normalmente copia questa struttura di directory nella directory principale del sistema. Questo deve essere fatto manualmente senza un gestore di pacchetti:

    Cambia al data/ directory dove il data.tar.gz il file è stato decompresso:

    $ cd data/
  5. Copia le singole directory nelle rispettive directory root della destinazione:

    Importante

    Se commetti un errore, questo passaggio può rendere inutilizzabile il tuo dispositivo di destinazione e dovrai ripristinarlo.

    $ sudo cp -r etc/* /etc
    $ sudo cp -r opt/* /opt
    $ sudo cp -r usr/* /usr
    $ sudo cp -r var/* /var
  6. Ora il gestore pacchetti eseguirà alcuni passaggi post-installazione per completare l'installazione. Eseguire questi passaggi manualmente:

    $ sudo chmod a+rw /etc/codesyscontrol/CODESYSControl.cfg
    $ sudo chmod a+rw /etc/codesyscontrol/CODESYSControl_User.cfg

    Se il codesysuser il gruppo non esiste già sul dispositivo di destinazione, quindi aggiungilo.

    $ groupadd codesysuser

    Questo gruppo viene utilizzato per l'API di estensione. Per ulteriori informazioni, vedere: Meccanismi di sicurezza

Il sistema runtime è ora installato. Tuttavia, ha ancora bisogno dell'ambiente di runtime Codemeter.

Installazione manuale dell'ambiente di runtime Codemeter sul dispositivo di destinazione

  1. Dopo l'installazione del pacchetto CODESYS Control SL, il pacchetto .deb viene salvato in <User>/CODESYS Control für Linux SL/Dependency/codemeter-lite_<Version>.deb .

    Copia anche questo pacchetto .deb in una cartella vuota appena creata sul sistema di destinazione.

  2. Scompattare il pacchetto Debian.

    $ ar -x codemeter-lite_<Version>.deb

    IL control.tar.gz, data.tar.gz, debian-binary, e anche _gpgorigin i file vengono estratti.

  3. Disimballare il data.tar.gz file in una cartella appena creata.

    $ mkdir data
    $ tar -xf data.tar.gz -C data

    Successivamente, i file binari e altri file come librerie e script sono disponibili in data/:

    data
    ├── etc
    │   ├── init.d
    │   │   ├── codemeter
    │   │   └── codemeter-webadmin
    │   └── wibu
    │       └── CodeMeter
    │           └── Server.ini
    ├── lib
    │   ├── systemd
    │   │   └── system
    │   │       ├── codemeter.service
    │   │       └── codemeter-webadmin.service
    │   └── udev
    │       └── rules.d
    │           └── 60-codemeter-lite.rules
    ├── usr
    │   ├── bin
    │   │   ├── cmu
    │   │   └── codemeter-info
    │   ├── lib
    │   │   └── x86_64-linux-gnu
    │   │       ├── jni
    │   │       │   ├── libwibucmJNI64.so -> libwibucmJNI.so
    │   │       │   └── libwibucmJNI.so
    │   │       ├── libwibucmlin64-4.so -> libwibucm.so
    │   │       ├── libwibucmlin64.so -> libwibucm.so
    │   │       ├── libwibucmlin.so -> libwibucm.so
    │   │       └── libwibucm.so
    │   ├── sbin
    │   │   ├── CmWebAdmin
    │   │   └── CodeMeterLin
    │   └── share
    │       ├── bash-completion
    │       │   └── completions
    │       │       └── cmu
    │       ├── doc
    │       │   ├── CodeMeter
    │       │   │   ├── OpenSource_en.pdf
    │       │   │   └── README
    │       │   └── codemeter-lite
    │       │       ├── changelog.gz
    │       │       └── copyright
    │       └── man
    │           └── man1
    │               └── codemeter-info.1.gz
    └── var
        ├── lib
        │   └── CodeMeter
        │       ├── Backup
        │       ├── CmAct
        │       ├── CmCloud
        │       ├── NamedUser
        │       └── WebAdmin
        └── log
            └── CodeMeter
  4. Cambia al data/ directory dove il data.tar.gz il file è stato decompresso:

    $ cd data/
  5. Ora copia l'intera directory nella directory principale del dispositivo di destinazione:

    Importante

    Se commetti un errore, questo passaggio può rendere inutilizzabile il tuo dispositivo di destinazione e dovrai ripristinarlo.

    $ sudo cp -r etc/* /etc
    $ sudo cp -r lib/* /lib
    $ sudo cp -r usr/* /usr
    $ sudo cp -r var/* /var
  6. Ora il pacchetto Codemeter eseguirà alcuni passaggi post-installazione per completare l'installazione. Eseguire questi passaggi manualmente:

    $ sudo udevadm trigger -vn --subsystem-match=usb --attr-match=idVendor=064f | xargs -rn1 -d\\n udevadm trigger -b
    $ sudo mkdir -p "/etc/systemd/system/multi-user.target.wants/"
    $ sudo ln -sT /lib/systemd/system/codemeter.service /etc/systemd/system/multi-user.target.wants/codemeter.service
  7. Ora è necessario configurare il servizio Codemeter con il seguente comando (avvia come root):

    CodemeterLin -x
    

L'installazione di Codemeter Lite e del sistema runtime è ora completa.

Installazione manuale del gateway edge:

Puoi installare il gateway edge allo stesso modo del sistema di runtime e di Codemeter.

  1. Sul PC Windows, il pacchetto è memorizzato in <user>/CODESYS Edge Gateway for Linux/Delivery/codesysedge_edgeamd64_<Version>.deb.

    Copia il pacchetto Debian in una nuova cartella vuota sul dispositivo di destinazione.

  2. Scompattare il pacchetto Debian:

    $ ar -x codesysedge_edgeamd64_<Version>.deb

    I file control.tar.gz, data.tar.gz E debian-binary vengono estratti.

  3. Disimballare il data.tar.gz file in una cartella appena creata:

    $ mkdir data
    $ tar -xf data.tar.gz -C data

    Successivamente, i file binari e altri file come librerie e script sono disponibili in data/:

    data
    ├── etc
    │   ├── default
    │   │   └── codesysedge
    │   ├── init.d
    │   │   └── codesysedge
    │   └── codesysedge
    │       ├── Gateway.cfg
    │       ├── GatewayvControl.cfg
    │       └── Gateway_User.cfg
    ├── opt
    │   └── codesysedge
    │       ├── bin
    │       │   └── codesysedge.bin
    │       ├── lib
    │       └── scripts
    │           ├── rts_set_baud.sh
    │           └── startup.sh
    ├── usr
    │   └── share
    
    │       └── doc
    │           └── codesysedge
    │               └── copyright
    └── var
        └── opt
            └── codesysedge
  4. Cambia al data/ directory dove il data.tar.gz il file è stato decompresso:

    $ cd data/
  5. Ora copia l'intera directory nella directory principale del dispositivo di destinazione:

    Importante

    Se commetti un errore, questo passaggio può rendere inutilizzabile il tuo dispositivo di destinazione e dovrai ripristinarlo.

    $ sudo cp -r etc/* /etc
    $ sudo cp -r opt/* /opt
    $ sudo cp -r usr/* /usr
    $ sudo cp -r var/* /var
  6. Eseguire nuovamente i passaggi di post-elaborazione del gestore pacchetti:

    $ chmod a+rw /etc/codesysedge/Gateway.cfg
    $ chmod a+rw /etc/codesysedge/Gateway_User.cfg

Il gateway edge è ora installato.

Avvio di Codemeter, del sistema di runtime e del gateway edge

I pacchetti installati possono ora essere avviati:

  • Codemeter

    $ sudo /usr/sbin/CodeMeterLin

    Avviso

    Puoi avviare Codemeter con il file -v flag per ottenere l'output esteso.

    Con l'input di -Help, ottieni assistenza su più funzioni.

  • Sistema di runtime e gateway edge

    $ sudo /etc/init.d/codesyscontrol start
    $ sudo /etc/init.d/codesysedge start