How to Run Omada SDN Controller on Linux with a Non-root User

User Application Requirement
Updated 02-15-2023 03:51:58 AM 21059
This Article Applies to: 

Apply to: Omada SDN Controller V5

The tar.gz version of Omada SDN Controller runs with the root user by default, but you can modify the configuration to run it with other non-root users and this article will guide you on how to realize it. The Linux environment used in this article is Debian 11.

1. Install Omada SDN Controller with root.

First, you need to install the Omada SDN Controller with root. For more details, please refer to Chapter 3.2 of How to install Omada SDN controller on Linux system (above Controller 5.0.29).

Once the installation is complete, the controller will start automatically. Press Ctrl + C to exit the startup, or run “tpeap stop” command with root to exit the controller.

2. Modify control.sh file.

Go to the controller installation folder (/opt/tplink/EAPController, by default), go to the bin folder, and modify the control.sh file with root.

Find the OMADA_USER, and change root to the user you want to use. Here we change it to tplink.

Then comment out the PID_FILE line and change the PID_FILE to “{OMADA_HOME}/data/{NAME}.pid”.

Find the second “check_root_perms”, and comment it out.

Save the file and exit.

3. Modify the folders’ owner.

Run the chown command with root to change the owner of the data, logs, and work folders to the non-root user you use.

Now you can run Omada SDN Controller with the non-root user.

Note that upgrading the controller will overwrite the previously modified configuration and change the owner of the work folder. It is recommended to record the modified configuration items, and then modify them after upgrading, don't backup the previous configuration file and directly replace it after upgrading.

Looking for More

Is this faq useful?

Your feedback helps improve this site.

Recommend Products

From United States?

Get products, events and services for your region.