debug_connection | Debug connection settings and environment variables |
reset_connection | Reset the HTTP client to force re-initialization |
list_users | List all users in TrueNAS |
get_user | Get detailed information about a specific user
Args:
username: Username to look up |
get_system_info | Get TrueNAS system information |
list_pools | |
list_datasets | |
get_pool_status | Get detailed status of a specific pool
Args:
pool_name: Name of the pool |
create_dataset | Create a new dataset
Args:
pool: Pool name where dataset will be created
name: Dataset name
compression: Compression algorithm (default: lz4)
quota: Optional quota in bytes |
list_smb_shares | |
create_smb_share | Create a new SMB share
Args:
path: Path to share
name: Share name
comment: Optional comment
read_only: Whether share is read-only |
create_snapshot | Create a snapshot of a dataset
Args:
dataset: Dataset path (e.g., "tank/data")
name: Snapshot name
recursive: Whether to create recursive snapshots |
modify_dataset_permissions | Modify dataset permissions (chmod/chown equivalent)
Args:
dataset: Dataset path (e.g., "tank/data")
mode: Unix permission mode (e.g., "755", "644")
owner: Owner username or UID
group: Group name or GID
recursive: Apply permissions recursively |
update_dataset_acl | Update dataset Access Control Lists (ACLs)
Args:
dataset: Dataset path (e.g., "tank/data")
acl_entries: List of ACL entries with permissions
recursive: Apply ACLs recursively
strip_acl: Remove all ACLs and revert to Unix permissions |
get_dataset_permissions | Get current permissions and ACL information for a dataset
Args:
dataset: Dataset path (e.g., "tank/data") |
modify_dataset_properties | Modify ZFS dataset properties
Args:
dataset: Dataset path (e.g., "tank/data")
properties: Dictionary of properties to update
Examples: {"compression": "lz4", "dedup": "on", "quota": "10G"} |
get_dataset_properties | Get all properties of a dataset
Args:
dataset: Dataset path (e.g., "tank/data") |
create_nfs_export | Create an NFS export for Kubernetes persistent volumes
Args:
dataset: Dataset path to export (e.g., "tank/k8s-volumes")
allowed_networks: List of allowed networks (e.g., ["10.0.0.0/24"])
read_only: Whether the export is read-only
maproot_user: User to map root to
maproot_group: Group to map root to |
create_iscsi_target | Create an iSCSI target for Kubernetes block storage
Args:
name: Target name (e.g., "k8s-block-01")
dataset: Dataset for storing the iSCSI extent
size: Size of the iSCSI extent (e.g., "100G")
portal_id: iSCSI portal ID to use |
create_snapshot_policy | Create an automated snapshot policy
Args:
dataset: Dataset to snapshot
name: Policy name
schedule: Schedule configuration (cron-like)
{"minute": "0", "hour": "*/4", "dom": "*", "month": "*", "dow": "*"}
retention: Retention settings {"hourly": 24, "daily": 7, "weekly": 4, "monthly": 12}
recursive: Include child datasets |