scripts/config.glances.md
2025-05-05 11:58:47 -06:00

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_