Directories of the firmware components

Note: Phoenix Contact recommends operating the PLCnext Control device with an SD card if it supports SD card operation. For some PLCnext Control devices, operation with an SD card is mandatory. Refer to the user manual of your PLCnext Control device.

You can access the controller via SFTP or via SSH, view the directories and files in the Linux® file system (on the internal flash memory and on the SD card), and modify them if necessary. 

Directories and files that Phoenix Contact provides are stored on the internal flash memory of the controller. If you make changes to the directories or files, the Linux® operating system generates an Overlay File System. It is used to combine contents of a read-only partition with a read-write partition. The read-write partition is stored either at the external SD card or (if no SD card is present) in a dedicated partition of the internal flash memory.

Major directories in the root file system

Note:  marks different directories on Secure-by-default devices launched 2025 or newer (e. g. VPLCNEXT CONTROL 1000); for folder restrictions see Access control lists.

Directory Contents

/opt/plcnext

Home directory of the admin Linux user and working directory of the device firmware.

Files written by the application program are stored in this directory if the specified file name does not contain a storage path.

/opt/plcnext/config
2019.92020.0 LTS2020.3 

/opt/plcnext/config/System/Um
≥ 2020.6

Directory for storing configuration files of the User Manager.

From 2020.6, this directory contains the UmSystemUseNotifcation.txt
See Default system use notification for more information.

/opt/plcnext/logs

Directory for storing the log files of the Diagnostic Logger as well as the database of the Notification Logger

This directory contains the Output.log file. It contains information on the startup behavior of the firmware, status, and error messages as well as warning notes that help you find the source of error. See Output.log for more information.

In addition, you will find the diagnostic log file of theplcnextapp command line tools (plcnextapp.log) as well as the log files of the UA server (uatrace.log, uatrace_1.log).

/opt/plcnext/projects

Directory for storing project directories and files

/opt/plcnext/projects/Default

Directory for storing project directories and files downloaded manually by the user

/opt/plcnext/projects/PCWE

Directory for storing PLCnext Engineer projects; PLCnext Engineer exclusively manages all files and subdirectories in this directory. Do not make any changes to this directory.

/opt/plcnext/projects/Splc

Directory for storing SPLC data (safety-related controller)

/opt/plcnext/Security

 /opt/plcnext/config/System/security

Directory for storing certificates of IdentityStores and TrustStores,  which are managed by the WBM (from firmware 2025.0 by the WBM 2).

/opt/plcnext/Security/Certificates/https

 /opt/plcnext/config/System/security/Certificates/https

Directory for storing HTTPS certificates.
For more details see WBM: Security - Certificate Authentication or  WBM2: Security - Certificate management.

/opt/plcnext/Security/TrustStores/<name>

 /opt/plcnext/config/System/security/TrustStores/<name>

Directory for storing the Trust Stores. Each subdirectory corresponds to the name of a Trust Store.

For more details see WBM Certificate Authentication  or WBM2 Certificate management.

/opt/plcnext/Security/TrustStores/Empty

 /opt/plcnext/config/System/security/TrustStores/Empty

This Trust Store is used by the firmware internally. Do not make any changes to this directory, its subdirectories, or the files in it.

/opt/plcnext/Security/IdentityStores

 /opt/plcnext/config/System/security/IdentityStores/<name>

Directory for storing the Identity Stores. Each subdirectory corresponds to the name of an Identity Store.

For more details see WBM Certificate Authentication  or WBM 2 Certificate management.

/opt/plcnext/Security/IdentityStores/IDevID

 /opt/plcnext/config/System/security/IdentityStores/IDevID

This Identity Store is used by the firmware internally. Do not make any changes to this directory, its subdirectories, or the files in it.

/opt/plcnext/apps

 /opt/plcnext/apps/mounted

The PLCnext Store manages the directory. Do not make any changes to this directory.

All active apps downloaded from the PLCnext Store to the controller are mounted in this directory. Each active app is mounted with the name of the app identifier in a subdirectory. The entire content of the app container is available in this directory (read-only).

/opt/plcnext/installed_apps

 /opt/plcnext/apps/installed

Directory for storing all installed app containers. This directory belongs to the PLCnext Store.

/opt/plcnext/appshome

Directory for storing and managing app data. The PLCnext Store and the installed apps manage the directory. Do not make any changes to this directory other than those recommended in the app documentation.

/opt/plcnext/lttng

 /opt/plcnext/config/Services/TraceController

Directory for storing the default configuration files for tracing via LTTng.

/opt/plcnext/lttng_traces

Directory for storing trace files. The directory is created during runtime of the trace controller when the trigger function for storing the trace files is called for the first time. Each time the trigger function of the memory is called, a new subdirectory (trace directory) for storing the current trace data is created. 

The designation of a trace directory is structured as follows: YYYYMMDD_hhmmss; for example: /opt/plcnext/lttng_traces/20190418_190615/<trace_data>

The memory operates as a ring memory. When exceeding the maximum storage space, the oldest trace directory is deleted.

/opt/plcnext/backup

 /opt/plcnext/data/Plc/Backup/backup

Directory for download changes operations.

The directory is used for creating a backup of the project directory (/opt/plcnext/projects/). In the event of an error, the contents of the backup directory are restored. The backup directory is created following the first successful project download and following every successful project download.

/opt/plcnext/retaining

 /opt/plcnext/data/Plc/Retain/retaining

Directory for storing remanent data.

/opt/plcnext/retaining/backups
≥ 2021.0 LTS

 /opt/plcnext/data/Plc/Retain/retaining/backups

Directory for storing backup files that contain the retain variable values and its corresponding retain CRC along with the project name.

Up to 10 backup files are stored before the oldest file is deleted. The criterion is the file name.  Find more information about the backup and restore feature in the topic Extended retain handling.

/opt/plcnext/shadowing

 /opt/plcnext/data/Plc/Plm/shadowing

Directory for internal storage of copies of C++ user libraries that have been configured in PLCnext Engineer and downloaded.

/opt/plcnext/profinet

Directory for storing temporary PROFINET files.

/usr/local/lib

Directory for storing additional open-source libraries that customized C++ programs use (see C++ programming).

/usr/share/common-licenses

License information on the individual Linux packages of the controller.

 

 

 


• Published/reviewed: 2025-05-28  ✿  Revision 079 •