Building Custom Actions for Linux: No-Code Automation for IT Teams

Vijay Krishna
|
Try Esper for Free
MDM Solutions for Android and iOS

Managing Linux device fleets — whether they're POS systems, digital signage, or edge computing boxes — often means running the same scripts repeatedly. Need to reboot 50 devices? That's 50 terminal sessions. Want to lock displays during closing hours? More manual scripting. This repetitive work burns IT resources and introduces human error at scale.

That's why we built Custom Actions in Esper Linux Device Management: A drag-and-drop interface that lets IT teams create reusable automation without writing repeat code. Think of it as turning your most-used scripts into buttons, toggles, and dropdowns that anyone on your team can execute with a click.

Making Linux Scalable: The End of ‘SSH and Pray’

Linux administrators know the drill: SSH into each device, run your scripts, document what you did, repeat. It works fine for a handful of devices, but at scale? It's a nightmare.

Even with remote management tools, you're still:

  • Maintaining script libraries across your team
  • Training new staff on command-line operations
  • Risking typos in critical commands
  • Lacking audit trails for who ran what, when.

Custom Actions flips this model. Instead of everyone needing Linux expertise, you create the automation once, and your entire team can execute it through Esper's console, complete with audit logs and role-based permissions.

How the Drag-and-Drop Builder Works

Creating a Custom Action in the Esper console follows a simple three-tab workflow:

1. Design your UI (Properties Tab)

Drag a component onto the canvas — button, toggle, or dropdown. No coding yet, just visual design. Add labels, descriptions, and tooltips to guide your team. For example, creating a "Reboot Device" button:

  • Heading: Device Management
  • Description: System control actions
  • Button Name: Reboot Device

Tooltip: "Safely restarts the Linux device"

2. Add your script (Script Tab)

Paste your shell script. The same commands you'd run manually, now attached to your UI element. For toggles and dropdowns, you can assign different scripts to each state or option.

#!/bin/bash
# reboot_device.sh
# Script to reboot a Linux device safely

# Check if the script is run as root
if [ "$(id -u)" -ne 0 ]; then
  echo "You must run this script as root (use sudo)." >&2
  exit 1
fi

echo "Rebooting the device..."
sleep 2
/sbin/reboot

3. Choose location (Location Tab)

Decide where this action appears: Device Settings, or Blueprint. Place frequently-used actions in Device Settings for easy access. Hit save, activate, and your Custom Action is live across your fleet.

Real-World Examples

Let's look at practical Custom Actions our beta customers are building:

1. Kiosk mode launch

Use Case: Retail displays that need to show a specific website on startup

Component: Button

Script:

#!/bin/bash
# Get the active session
SESSION=$(loginctl list-sessions | grep seat | head -n1 | awk '{print $1}')

if [ -n "$SESSION" ]; then
    eval $(loginctl show-session $SESSION -p Display -p User)
    export DISPLAY=$Display
    export XDG_RUNTIME_DIR="/run/user/$(id -u $User)"
    
    # Launch Firefox in kiosk mode
    nohup sudo -u esper firefox --kiosk https://esper.io > /dev/null 2>&1 &
    echo "Kiosk mode launched"
fi

One button click launches your retail displays into kiosk mode — no terminal required.

2. Bluetooth control toggle

Use Case: Restaurant POS systems that need Bluetooth for printers during service, disabled after hours for security.

Component: Toggle

Scripts:

  • Toggle ON: sudo rfkill unblock bluetooth
  • Toggle OFF: sudo rfkill block bluetooth

Your closing manager can disable Bluetooth across all POS terminals with one toggle — no IT ticket needed.

3. Device lockdown

Use Case: Secure POS systems during breaks or shift changes

Component: Button

Script:

loginctl lock-session

Front-line staff can lock terminals instantly without knowing Linux commands. Perfect for compliance requirements.

4. Multi-option display control

Use Case: Digital signage with different brightness or orientation needs.

Component: Dropdown

Options:

  • Auto-rotate
  • Portrait mode
  • Landscape mode
  • Brightness presets

Each dropdown option triggers its specific script. Your retail staff can adjust displays without calling IT.

Beyond Basic Automation

Custom Actions shine in complex scenarios:

Conditional logic

Create dropdowns where each option runs different scripts. A "Troubleshooting" dropdown might include:

  • Clear cache
  • Restart services
  • Reset network
  • Collect diagnostics

Bulk operations

Apply Custom Actions to device groups (e.g., Chicago). Reboot all your Chicago POS systems at once. Lock all displays at closing time automatically.

Audit and compliance

Every Custom Action execution is logged in the Event Feed with:

  • Who triggered it
  • When it ran
  • Success/failure status
  • Which devices were affected

Perfect for PCI compliance in retail or HIPAA in healthcare settings.

Best Practices for Building Custom Actions

  1. Start Simple: Convert your most-used scripts first. That reboot command you run daily? Make it a button.
  2. Use Descriptive Names: "Bluetooth Control" beats "BT Toggle." Your team will thank you.
  3. Add Help Text: Tooltips and descriptions prevent mistakes. Explain what each action does and when to use it.
  4. Test in Stages: Create actions as "Draft," test on a single device, then activate for your fleet.
  5. Organize by Location: Create quick actions in Device Settings, specialized ones in Blueprints.

How to Create Your First Custom Action

Custom Actions transforms Linux device management from command-line complexity to point-and-click simplicity. IT teams can build automation once and empower their entire organization to manage devices safely and efficiently.

If you’re already using Esper for Android or iOS, you can provision your first Linux device and create custom actions in the Esper console today. 

If you’re not an Esper customer, you can still test out custom actions for Linux devices by signing up for a free trial

FAQ

No items found.
No items found.
Vijay Krishna
Vijay Krishna
Vijay Krishna is a Senior Product Manager at Esper, passionate about transforming complex technology into simple, intuitive products that delight customers. A Tech entrepreneur with deep expertise in connected devices, he previously co-founded and led a startup that empowered companies to launch IoT Products at scale.
Vijay Krishna
Learn about Esper mobile device management software for Android and iOS
Featured resource
Read more
Featured resource

Esper is Modern Device Management

For tablets, smartphones, kiosks, point of sale, IoT, and other Android, iOS, iPadOS, and Linux edge devices.
MDM Solutions