Skip to main content

Instalación de productos SL sin un administrador de paquetes

La herramienta de actualización de los productos SL copia un paquete de instalación (.deb o .ipk) en el dispositivo de destino en segundo plano y, a continuación, lo instala. Esto requiere la instalación de un administrador de paquetes (dpkg o ipkg) en el dispositivo de destino. Si no hay un administrador de paquetes instalado, la herramienta de actualización no puede instalar un sistema en tiempo de ejecución

Sin embargo, aún es posible instalar manualmente el paquete si lo desea. Para los productos genéricos, esto se explica a continuación utilizando CODESYS Control​ for Linux V4.7.0.0 como ejemplo.

Importante

CODESYS Control no admite dispositivos con un sistema de archivos protegido (parcialmente) contra escritura.

Si su dispositivo tiene un sistema de archivos protegido contra escritura y tiene problemas al instalar o iniciar un producto, compruebe si los problemas persisten tras deshabilitar la protección contra escritura.

Instalación manual del sistema de tiempo de ejecución en el dispositivo de destino

  1. Tras la instalación del CODESYS Control​ for Linux paquete, los archivos necesarios se encuentran en el PC con 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 (para licencia)

    Copie estos archivos en el dispositivo de destino.

  2. Desempaque el paquete:

    $ ar -x codesyscontrol_linux_<Version>

    Se crean los siguientes archivos:

    • control.tar.gz: contiene los scripts que ejecuta el administrador de paquetes antes y después de la instalación o desinstalación. Esto no es relevante para la instalación manual.

    • data.tar.gz: contiene archivos binarios del sistema en tiempo de ejecución, bibliotecas, scripts de inicio y configuraciones

    • debian-binary: especifica la versión del paquete .deb. Esto no es relevante para la instalación manual.

  3. Desembale el data.tar.gz archivo. Cree una nueva carpeta para esto de antemano:

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

    En data/, ahora encontrará los archivos que son importantes para el funcionamiento del sistema de tiempo de ejecución:

    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. Ahora, el administrador de paquetes (dpkg o ipkg) normalmente copiaría esta estructura de directorios en el directorio raíz del sistema. Esto tiene que hacerse manualmente sin un administrador de paquetes:

    Cambiar a la data/ directorio donde se encuentra data.tar.gz archivo fue desempaquetado:

    $ cd data/
  5. Copie los directorios individuales a los respectivos directorios raíz del destino:

    Importante

    Si comete un error, este paso puede hacer que su dispositivo de destino quede inutilizable y tendrá que restablecerlo.

    $ sudo cp -r etc/* /etc
    $ sudo cp -r opt/* /opt
    $ sudo cp -r usr/* /usr
    $ sudo cp -r var/* /var
  6. Ahora el administrador de paquetes realizaría algunos pasos posteriores a la instalación para completar la instalación. Realice estos pasos manualmente:

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

    Si el codesysuser el grupo aún no existe en el dispositivo de destino y, a continuación, agréguelo.

    $ groupadd codesysuser

    Este grupo se utiliza para la API de extensión. Para más información, ver: Mecanismos de Seguridad

El sistema de tiempo de ejecución ya está instalado. Sin embargo, aún necesita el entorno de tiempo de ejecución de Codemeter.

Instalación manual del entorno de ejecución de Codemeter en el dispositivo de destino

  1. Tras la instalación del paquete CODESYS Control SL, el paquete .deb se guarda en <User>/CODESYS Control für Linux SL/Dependency/codemeter-lite_<Version>.deb .

    Copie también este paquete .deb en una carpeta vacía recién creada en el sistema de destino.

  2. Descomprima el paquete Debian.

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

    El control.tar.gz, data.tar.gz, debian-binary, y también _gpgorigin se extraen los archivos.

  3. Desembale el data.tar.gz archivo en una carpeta recién creada.

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

    Después de eso, los binarios y otros archivos, como bibliotecas y scripts, están disponibles en 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. Cambiar a la data/ directorio donde se encuentra data.tar.gz archivo fue desempaquetado:

    $ cd data/
  5. Ahora copie todo el directorio en el directorio raíz del dispositivo de destino:

    Importante

    Si comete un error, este paso puede hacer que su dispositivo de destino quede inutilizable y tendrá que restablecerlo.

    $ sudo cp -r etc/* /etc
    $ sudo cp -r lib/* /lib
    $ sudo cp -r usr/* /usr
    $ sudo cp -r var/* /var
  6. Ahora el paquete de Codemeter realizaría algunos pasos posteriores a la instalación para completar la instalación. Realice estos pasos 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. Ahora debe configurar el servicio Codemeter con el siguiente comando (inicie como root):

    CodemeterLin -x
    

La instalación de Codemeter Lite y el sistema de tiempo de ejecución ya está completa.

Instalación manual de la puerta de enlace perimetral:

Puede instalar Edge Gateway de la misma manera que el sistema de tiempo de ejecución y Codemeter.

  1. En la PC con Windows, el paquete se almacena en <user>/CODESYS Edge Gateway for Linux/Delivery/codesysedge_edgeamd64_<Version>.deb.

    Copie el paquete Debian en una carpeta nueva y vacía en el dispositivo de destino.

  2. Descomprima el paquete Debian:

    $ ar -x codesysedge_edgeamd64_<Version>.deb

    Los archivos control.tar.gz, data.tar.gz y debian-binary se extraen.

  3. Desembale el data.tar.gz archivo en una carpeta recién creada:

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

    Después de eso, los binarios y otros archivos, como bibliotecas y scripts, están disponibles en 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. Cambiar a la data/ directorio donde se encuentra data.tar.gz archivo fue desempaquetado:

    $ cd data/
  5. Ahora copie todo el directorio en el directorio raíz del dispositivo de destino:

    Importante

    Si comete un error, este paso puede hacer que su dispositivo de destino quede inutilizable y tendrá que restablecerlo.

    $ sudo cp -r etc/* /etc
    $ sudo cp -r opt/* /opt
    $ sudo cp -r usr/* /usr
    $ sudo cp -r var/* /var
  6. Vuelva a realizar los pasos de posprocesamiento del administrador de paquetes:

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

La puerta de enlace perimetral ya está instalada.

Inicio de Codemeter, el sistema de tiempo de ejecución y la puerta de enlace perimetral

Los paquetes instalados ahora se pueden iniciar:

  • Codemeter

    $ sudo /usr/sbin/CodeMeterLin

    Aviso

    Puede iniciar Codemeter con el -v bandera para obtener una salida extendida.

    Con la entrada de -Help, obtendrá ayuda sobre más funciones.

  • Sistema de tiempo de ejecución y puerta de enlace perimetral

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