Share on Social Media

Discover how to install Linux Dash on Rocky Linux 8 with our step-by-step guide. Easily monitor your system’s performance and resources using this intuitive web-based dashboard. #centlinux #linux

What is Linux Dash?

A simple & low-overhead web dashboard for Linux systems. Linux Dash comes in well under 1MB of source code and only shows data when client browsers request it. Unlike server-side agent processes, Linux Dash does not gather or maintain historical data-sets, allowing its purpose and footprint to remain focused to a smaller surface area.

The server-side implementation of Linux Dash is available in several languages (Node.js, Python, Go, & PHP). The reason this approach is taken is because majority of the complexity is in the layer which fetches & processes the system data. This allows the server-side implementations to remain wrappers which serve as simple router applications for funneling requests from the client to the Data Pipeline.

Linux Dash Features

  • Small in Size – Under 400KB on disk (with .git removed)!
  • Simple to Use – A minimalist, beautiful dashboard
  • Easy to Install – Drop-in installation
  • Versatile – Choose your stack from Node.js, Go, Python, PHP

Linux Dash Alternatives

There are several alternatives to Linux Dash for monitoring system performance and resources. Here are a few popular ones:

  1. Netdata: An open-source, real-time performance monitoring tool for systems and applications. It offers extensive visualizations and an easy-to-use web interface.
  2. Glances: A cross-platform monitoring tool that presents a lot of information in a compact and visually appealing way. It can be run in a web browser or terminal.
  3. Cockpit: A web-based interface for managing and monitoring Linux servers. It provides insights into system performance, disk usage, and more.
  4. Grafana: Combined with Prometheus or other data sources, Grafana provides advanced metrics and monitoring with customizable dashboards.
  5. htop: An interactive process viewer for Unix systems, htop is a great tool for quickly checking system resource usage from the command line.
  6. Zabbix: An enterprise-grade open-source monitoring solution that provides monitoring metrics, network discovery, and more.

These alternatives offer various features and capabilities, so you can choose the one that best fits your monitoring needs.

Environment Specification

We are using a minimal Rocky Linux 8 virtual machine with following specifications.

  • CPU – 3.4 Ghz (2 cores)
  • Memory – 2 GB
  • Storage – 20 GB
  • Operating System – Rocky Linux 8.6 (Green Obsidian)
  • Hostname – linux-dash-01.centlinux.com
  • IP Address – 192.168.116.128 /24

Updating Linux Operating System

By using a ssh client, connect with linux-dash-01.centlinux.com as root user.

Build your yum cache by executing dnf command.

# dnf makecache
Rocky Linux 8 - AppStream                       1.6 kB/s | 4.8 kB     00:02
Rocky Linux 8 - BaseOS                          1.6 kB/s | 4.3 kB     00:02
Rocky Linux 8 - Extras                          1.4 kB/s | 3.5 kB     00:02
Metadata cache created.

Execute following command at Linux bash to update your Linux operating system.

# dnf update -y

If your Linux Kernel is updated due to above command, then you should reboot your Linux operating system before installing Dashboard software.

# reboot

After reboot, verify the Linux Operating System and Kernel versions as follows.

# cat /etc/rocky-release
Rocky Linux release 8.6 (Green Obsidian)

# uname -r
4.18.0-372.13.1.el8_6.x86_64

Installing Software Prerequisites

Linux Dash is a versatile software application that can simultaneously run on Node.js, Go, Python and PHP.

Here, we are deploying web dashboard on PHP based web server.

For this purpose, we are using Apache Web server and the PHP.

You may also need git command to fetch the Dashboard Software from GitHub.

We are installing all above prerequisites in following single dnf command.

# dnf install -y git httpd php

Enable and start PHP and Apache services.

# systemctl enable --now php-fpm httpd
Created symlink /etc/systemd/system/multi-user.target.wants/php-fpm.service → /usr/lib/systemd/system/php-fpm.service.
Created symlink /etc/systemd/system/multi-user.target.wants/httpd.service → /usr/lib/systemd/system/httpd.service.

Configure Linux Firewall

Allow the HTTP service in Linux Firewall to make it accessible across the network.

# firewall-cmd --permanent --add-service=http
success
# firewall-cmd --reload
success

Configure SELinux

Linux Dash software is not compatible with SELinux, therefore, for it’s proper function, you have to permanently disable the SELinux.

Temporary put SELinux in permissive mode by executing following command at Linux Bash.

# setenforce 0

Now, edit the SELinux configuration file by using vim text editor.

# vi /etc/selinux/config

Find and set following directive to permanently disable SELinux.

SELINUX=disabled

Install Linux Dash on Rocky Linux 8

By using git command, make a clone of Linux Dash software from GitHub to Apache Document Root (/var/www/html) directory.

# cd /var/www/html/
# git clone --depth 1 https://github.com/afaqurk/linux-dash.git
Cloning into 'linux-dash'...
remote: Enumerating objects: 82, done.
remote: Counting objects: 100% (82/82), done.
remote: Compressing objects: 100% (74/74), done.
remote: Total 82 (delta 6), reused 31 (delta 3), pack-reused 0
Receiving objects: 100% (82/82), 109.34 KiB | 874.00 KiB/s, done.
Resolving deltas: 100% (6/6), done.

Configure HTTP Basic Authentication

Linux Dash is a very simple software and does not provide any user based authentication.

No Problem! You can leverage the HTTP basic authentication to configure user based security for your Web Application.

Create a user admin by executing following htpasswd command.

# htpasswd -c /etc/htpasswd.conf admin
New password:
Re-type new password:
Adding password for user admin

Now configure Apache web server to use your password file for authentication.

# vi /etc/httpd/conf/httpd.conf

Add following directives in this file.

<Directory "/var/www/html/linux-dash/app">
    AllowOverride none
    AuthType Basic
    AuthName "Restricted Content"
    AuthUserFile /etc/htpasswd.conf
    Require valid-user
</Directory>

Reload Apache service to apply changes.

# systemctl reload httpd

Access your Linux Web Dashboard

Open URL http://linux-dash-01.centlinux.com/linux-dash/app/ in a web browser.

You have to login as the admin user, thanks to the HTTP Basic Authentication.

After successful Login you may reach at your Dashboard application. Some of the screenshots of this software are:

Linux Dash System Status
Linux Dash System Status
Linux Dash Apps
Linux Dash Apps
Linux Dash User Accounts
Linux Dash User Accounts
Linux Dash Network
Linux Dash Network
Linux Dash Basic Info
Linux Dash Basic Info

The software is showing many aspects of your Linux operating system.

If you are facing difficulty in understanding the above commands or your are not much familiar with the Linux CLI, then we highly recommend that you should read The Linux Command Line, 2nd Edition (PAID LINK) by William Shotts (Author).

Final Thoughts

Thank you for following our guide on how to install Linux Dash on Rocky Linux 8. We hope this tutorial has made the installation process straightforward and easy. If you require additional support or personalized assistance, please visit my Fiverr profile.

Leave a Reply