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
Table of Contents
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:
- Netdata: An open-source, real-time performance monitoring tool for systems and applications. It offers extensive visualizations and an easy-to-use web interface.
- 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.
- Cockpit: A web-based interface for managing and monitoring Linux servers. It provides insights into system performance, disk usage, and more.
- Grafana: Combined with Prometheus or other data sources, Grafana provides advanced metrics and monitoring with customizable dashboards.
- htop: An interactive process viewer for Unix systems,
htop
is a great tool for quickly checking system resource usage from the command line. - 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
Read Also: How to install Cockpit on CentOS 7
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:
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.