# Installing Fabric Agent on Linux

Installation guide for Ubuntu, Debian, and other distributions

## Requirements

- Linux (x86\_64 or aarch64/arm64)
- Ubuntu 20.04+, Debian 10+, or compatible distribution
- 4GB RAM minimum (8GB+ recommended)
- Internet connection
- Fabric account (create one at fabric.carmel.so)

* * *

## Getting Started

Log in to your dashboard at fabric.carmel.so

Go to the Devices section

Click "Add Linux Device"

Follow the step-by-step instructions provided

The dashboard provides the download link and setup instructions specific to your account.

* * *

## Headless Server Setup (No Display)

For servers without a display (SSH access only), use device code authentication:

Run the agent - it detects headless mode automatically

A device code appears in the terminal

On any device with a browser:

- Go to fabric.carmel.so/device
- Enter the code
- Sign in with your Fabric account

The agent completes enrollment automatically

See the Headless Linux Setup article for detailed instructions.

* * *

## Running as a Service (24/7 Operation)

For continuous operation, the dashboard provides instructions for setting up a systemd service. This ensures your node:

- Starts automatically on boot
- Restarts if it crashes
- Runs continuously in the background

* * *

## GPU Support (NVIDIA)

For NVIDIA GPU workloads:

Install NVIDIA drivers

Verify with `nvidia-smi`

The agent automatically detects CUDA GPUs

* * *

## Verifying Installation

```
# Check if running
ps aux | grep FabricAgent

# Check service status (if using systemd)
sudo systemctl status fabric-agent

# View logs
tail -f ~/.fabric/logs/daemon.log
```

* * *

## Troubleshooting

**Permission denied:**

```
chmod +x FabricAgentDaemon
```

**Missing libraries:**

```
# Ubuntu/Debian
sudo apt update
sudo apt install -y libgl1-mesa-glx libglib2.0-0
```

**GPU not detected:**

- Ensure NVIDIA drivers are installed
- Verify with `nvidia-smi`
- Check that CUDA toolkit is available

**Headless auth not working:**

- Ensure outbound HTTPS is allowed
- Check firewall settings
- Verify DNS resolution
