# qzqmn/vps-mounter architecture

> Architecture diagram of the GitHub repository qzqmn/vps-mounter, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-27). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/qzqmn/vps-mounter
- Repository: https://github.com/qzqmn/vps-mounter

## Overview

This is a small Linux VPS utility for interactively configuring automatic NAS share mounts. The documented flow is user launch, systemd automount configuration, then access to an NFS or CIFS share over a Tailscale-dependent network. The source file is present in the tree, but no source excerpt was supplied, so details beyond those documented relationships are omitted.

Main entry points: [`vps_nas.sh`](https://github.com/qzqmn/vps-mounter/blob/main/vps_nas.sh) (Systemd automount)

## Diagram (Mermaid)

```mermaid
flowchart TD

node_user(("VPS operator"))
node_script["NAS mounter<br/>[vps_nas.sh]"]
node_systemd["Systemd automount<br/>[vps_nas.sh]"]
node_tailscale["Tailscale network"]
node_nas["NAS share"]
node_mountpoint["Mounted directory<br/>[vps_nas.sh]"]

node_user -->|"launches"| node_script
node_script -->|"configures automount"| node_systemd
node_systemd -->|"depends on network"| node_tailscale
node_systemd -->|"mounts NFS/CIFS"| node_nas
node_nas -->|"provides files"| node_mountpoint

click node_script "https://github.com/qzqmn/vps-mounter/blob/main/vps_nas.sh"
click node_systemd "https://github.com/qzqmn/vps-mounter/blob/main/vps_nas.sh"
click node_mountpoint "https://github.com/qzqmn/vps-mounter/blob/main/vps_nas.sh"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_user,node_tailscale,node_nas toneIndigo
class node_script,node_systemd,node_mountpoint toneTeal
```

## Components

### Other components

- **VPS operator**
- [NAS mounter](https://github.com/qzqmn/vps-mounter/blob/main/vps_nas.sh): `vps_nas.sh`
- [Systemd automount](https://github.com/qzqmn/vps-mounter/blob/main/vps_nas.sh): `vps_nas.sh`
- **Tailscale network**
- **NAS share**
- [Mounted directory](https://github.com/qzqmn/vps-mounter/blob/main/vps_nas.sh): `vps_nas.sh`

## Connections

- VPS operator → NAS mounter: launches
- NAS mounter → Systemd automount: configures automount
- Systemd automount → Tailscale network: depends on network
- Systemd automount → NAS share: mounts NFS/CIFS
- NAS share → Mounted directory: provides files
