# Jellyfish

Raspberry Pi 5 running Debian Trixie, behind a GL-MT3600BE (Beryl 7) router in Hawaii.

## Hardware

| Property | Value |
|----------|-------|
| **Model** | Raspberry Pi 5 Model B Rev 1.0 |
| **CPU** | ARM Cortex-A76 (2 cores visible), BogoMIPS 108 |
| **RAM** | 4 GB |
| **Boot disk** | 32GB microSD (mmcblk0) |
| **External storage** | 4TB NVMe SSD (Crucial CT4000P3SSD8) via USB, LUKS+EXT4 |
| **OS** | Debian 13 (Trixie) |
| **Tailscale IP** | `100.69.121.120` |
| **Headscale node** | ID:15 |
| **LAN IP** | `192.168.12.181` (eth0), `192.168.12.182` (wlan0) |
| **Gateway** | GL-MT3600BE at `192.168.12.1` |
| **User** | `lulu` |

## Network

Jellyfish is on the Beryl 7's `192.168.12.0/24` LAN, reachable from the tailnet via Tailscale or via the router's subnet route.

```bash
ssh jellyfish              # via Tailscale (100.69.121.120)
ssh lulu@192.168.12.181    # from devices on the Beryl 7 LAN
```

## External Drive (LUKS)

The 4TB NVMe is encrypted with LUKS and mounted at `/srv/nas`. It must be opened manually after each reboot (passphrase required).

### Bring Up

```bash
sudo cryptsetup luksOpen /dev/sda ssd    # enter passphrase
sudo mount /dev/mapper/ssd /srv/nas
sudo systemctl start smbd
docker compose -f /srv/nas/ametrine/Docker/photoprism/compose.yaml up -d
```

### Shut Down

```bash
docker compose -f /srv/nas/ametrine/Docker/photoprism/compose.yaml down
sudo systemctl stop smbd
sudo umount /srv/nas
sudo cryptsetup close ssd
sudo shutdown -h now
```

### FSCK Recovery Notes

The SSD has had EXT4 corruption from 143 unsafe shutdowns (power loss, not hardware failure). SMART reports healthy (0 errors, 100% spare). Recovery notes are at `/home/lulu/FSCK-RECOVERY-NOTES.md` on jellyfish.

If LUKS mapper returns I/O errors but raw `/dev/sda` reads fine:
1. Stop all services (photoprism, smbd, syncthing)
2. Unmount `/srv/nas`
3. Close LUKS: `sudo cryptsetup close ssd`
4. Reopen: `sudo cryptsetup luksOpen /dev/sda ssd`
5. Run fsck: `sudo e2fsck -y /dev/mapper/ssd`

## Services

| Service | Location | Port |
|---------|----------|------|
| **Photoprism** | `/srv/nas/ametrine/Docker/photoprism/` | Docker |
| **Samba** | System service (`smbd`) | 445 |

## Other Devices on Same LAN

- `moon` — `192.168.12.223` (Tailscale `100.64.0.6`)
- `homeassistant` — Home Assistant OS (Tailscale `100.112.186.90`)
