Files
hermes-ice/homelab/entities/truenas.md
Hermes Agent e4d91aadf9 Initial commit: homelab infrastructure wiki
- Full Obsidian vault content
- Host configs (ice, grizzley, ubuntu, proxmox, truenas, panda, hyte)
- Media stack documentation
- Traefik HA setup
- Automation scripts
- Bachelor party planning
2026-05-24 16:08:40 -07:00

2.9 KiB

title, created, updated, type, tags, sources, confidence
title created updated type tags sources confidence
truenas 2026-04-28 2026-04-29 entity
hosts
nas
storage
s3
medium

truenas

Role: NAS — ZFS storage, NFS shares, S3 via rustfs IP: 192.168.50.12 Hostname: TrueNAS Running on: Proxmox VM 9001 (22.9 GB RAM, 32 GB boot disk, running) Web UI: TrueNAS web interface (via browser)

Overview

TrueNAS provides network storage for the homelab. It serves NFS shares to proxmox and the cluster nodes, and runs rustfs for S3-compatible object storage. It runs as VM 9001 on proxmox.

⚠️ Pool Corruption

Status: Pool has known corruption issues. Monitor pool health via TrueNAS web UI.

Monitor for:

  • Pool import failures on boot
  • Checksum errors on disk
  • NFS share timeouts

If the pool becomes unavailable, data on SHGS31 (47% full, ~460 GB used) and backups (31% full, ~4.2 TB used) is at risk.

See nfs-storage skill for ZFS troubleshooting.

SSH Access

⚠️ SSH access as bear user is blocked (Permission denied, publickey). The bear user's SSH key is not authorized on TrueNAS.

Options:

  • Use the TrueNAS web UI for management
  • Add bear's SSH key to TrueNAS via the web UI
  • Use admin or root account if keys are configured

ZFS Pools

Pool Purpose % Used Notes
SHGS31 General storage 47% (~460 GB) Main data pool
backups Backup storage 31% (~4.2 TB) Large backup volume
CT1000 (unknown) 3% Smaller pool

TrueNAS runs with these pools visible in the web UI under Storage.

Shares

Known NFS exports:

  • /mnt/TrueNAS/traefik-certs/grizzley — mounted by grizzley at /mnt/truenas/traefik-certs/grizzley (nfs4, rw)

Other shares to confirm via TrueNAS web UI:

  • /mnt/TrueNAS/ — main pool mount point
  • May serve to: proxmox, ubuntu, ice

rustfs (S3)

rustfs runs on TrueNAS via Docker (on TrueNAS itself or via bind mount) or on ubuntu as a Docker container connecting to TrueNAS storage.

Current config on ubuntu: rustfs Docker container on ubuntu binds to TrueNAS storage path for S3 bucket obsidian-vault:

  • Endpoint: http://192.168.50.12:9000
  • Access Key: rustfsadmin
  • Secret Key: (stored in env or .env file)
  • Bucket: obsidian-vault

On first boot, rustfs ignores env vars RUSTFS_S3_ACCESS_KEY and RUSTFS_S3_SECRET_KEY — uses hardcoded defaults (rustfsadmin/rustfsadmin). To reset: stop container, wipe data dir, restart.

Access

# ⚠️ bear user SSH fails — use web UI or fix SSH keys
ssh admin@192.168.50.12  # may not work
ssh root@192.168.50.12   # may not work
# Best: use TrueNAS web UI
  • proxmox — Proxmox hypervisor (hosts TrueNAS as VM 9001)
  • rustfs — S3 storage layer
  • grizzley — NFS client (traefik certs)
  • ubuntu — NFS client, rustfs container
  • ice — May NFS mount TrueNAS