178 lines
3.8 KiB
Markdown
178 lines
3.8 KiB
Markdown
## Overview
|
|
|
|
This guide explains how to configure [Glances](https://nicolargo.github.io/glances/) to run automatically on system startup in web server mode on Ubuntu systems. Glances is a cross-platform system monitoring tool that provides a wealth of information about your system resources.
|
|
|
|
## Prerequisites
|
|
|
|
- Ubuntu 24.04 or similar
|
|
- Glances installed via pipx
|
|
- Administrative (sudo) access
|
|
|
|
## Installation (If Not Already Done)
|
|
|
|
If you haven't already installed Glances:
|
|
|
|
```bash
|
|
# Install pipx if needed
|
|
sudo apt update
|
|
sudo apt install pipx
|
|
pipx ensurepath
|
|
|
|
# Install Glances
|
|
pipx install glances
|
|
```
|
|
|
|
## Creating a Systemd Service
|
|
|
|
To make Glances start automatically on boot, you need to create a systemd service file.
|
|
|
|
### Step 1: Create the Service File
|
|
|
|
```
|
|
sudo nano /etc/systemd/system/glances.service
|
|
```
|
|
|
|
### Step 2: Add the Configuration
|
|
|
|
Add the following content to the file:
|
|
|
|
> [!IMPORTANT] Replace `YOUR_USERNAME` with your actual username. The path must point to where Glances is installed by pipx.
|
|
|
|
```
|
|
[Unit]
|
|
Description=Glances in web server mode
|
|
After=network.target
|
|
|
|
[Service]
|
|
Type=simple
|
|
ExecStart=/home/YOUR_USERNAME/.local/bin/glances -w
|
|
Restart=on-failure
|
|
RestartSec=5s
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target
|
|
```
|
|
### Step 3: Enable and Start the Service
|
|
|
|
After creating and saving the service file, enable and start it:
|
|
|
|
```
|
|
sudo systemctl daemon-reload
|
|
sudo systemctl enable glances.service
|
|
sudo systemctl start glances.service
|
|
```
|
|
|
|
### Step 4: Verify the Service Status
|
|
|
|
Check that the service is running correctly:
|
|
|
|
```
|
|
sudo systemctl status glances.service
|
|
```
|
|
|
|
You should see `Active: active (running)` if everything is working properly.
|
|
|
|
## Troubleshooting
|
|
|
|
### Common Issues
|
|
|
|
#### Error 217/USER
|
|
|
|
If you see an error like:
|
|
|
|
```
|
|
Active: activating (auto-restart) (Result: exit-code)
|
|
Process: XXXX ExecStart=/home/username/.local/bin/glances -w (code=exited, status=217/USER)
|
|
```
|
|
|
|
This indicates an issue with the User directive. The solution is to remove the User line from the service configuration.
|
|
|
|
#### Service Won't Start
|
|
|
|
Check the detailed logs to identify the issue:
|
|
|
|
```bash
|
|
journalctl -u glances.service
|
|
```
|
|
|
|
#### Wrong Path to Glances
|
|
|
|
If you installed Glances in a different location, update the path in the ExecStart line accordingly.
|
|
|
|
## Accessing Glances Web Interface
|
|
|
|
Once the service is running, you can access the Glances web interface by opening a browser and navigating to:
|
|
|
|
```
|
|
http://localhost:61208
|
|
```
|
|
|
|
Or replace `localhost` with your server's IP address to access it from other devices on your network:
|
|
|
|
```
|
|
http://YOUR_SERVER_IP:61208
|
|
```
|
|
|
|
## Advanced Configuration
|
|
|
|
### Custom Port
|
|
|
|
To run Glances on a different port, modify the ExecStart line in the service file:
|
|
|
|
```
|
|
ExecStart=/home/YOUR_USERNAME/.local/bin/glances -w --port 8080
|
|
```
|
|
|
|
### Additional Arguments
|
|
|
|
You can add any valid Glances command-line arguments to the ExecStart line:
|
|
|
|
```
|
|
ExecStart=/home/YOUR_USERNAME/.local/bin/glances -w --disable-plugin docker --time 2
|
|
```
|
|
|
|
Common arguments:
|
|
|
|
- `--time 2`: Update frequency in seconds
|
|
- `--disable-plugin NAME`: Disable a specific plugin
|
|
- `--disable-webui`: Disable the web UI but keep the web server
|
|
|
|
## Maintenance
|
|
|
|
### Stopping the Service
|
|
|
|
```bash
|
|
sudo systemctl stop glances.service
|
|
```
|
|
|
|
### Disabling the Service
|
|
|
|
To prevent Glances from starting on boot:
|
|
|
|
```bash
|
|
sudo systemctl disable glances.service
|
|
```
|
|
|
|
### Viewing Logs
|
|
|
|
```bash
|
|
journalctl -u glances.service
|
|
```
|
|
|
|
### Restarting After Configuration Changes
|
|
|
|
After modifying the service file:
|
|
|
|
```bash
|
|
sudo systemctl daemon-reload
|
|
sudo systemctl restart glances.service
|
|
```
|
|
|
|
## References
|
|
|
|
- [Glances Official Documentation](https://glances.readthedocs.io/en/latest/)
|
|
- [Systemd Service Documentation](https://www.freedesktop.org/software/systemd/man/systemd.service.html)
|
|
|
|
---
|
|
|
|
_Last updated: May 1, 2025_ |