agaffney.synology_dsm

ansible-synology-dsm

用于配置运行 DSM 的 Synology NAS 的 Ansible 角色

概述

ansible-synology-dsm 是一个用于配置运行 DSM 的 Synology NAS 的 Ansible 角色。它利用 Synology API 来管理各种服务和设置。

必要条件

  • Ansible 2.6 或更高版本
  • 访问运行 DSM 的 Synology NAS

安装

从 GitHub 仓库直接安装

  1. 创建需求文件: 在您的 Ansible 项目目录中创建一个 requirements.yml 文件,并添加以下内容:

    - src: https://github.com/agaffney/ansible-synology-dsm
      name: ansible-synology-dsm
    
  2. 使用 ansible-galaxy 安装角色: 通过运行以下命令直接从 GitHub 仓库安装角色:

    ansible-galaxy install -r requirements.yml
    
  3. 在您的剧本中引用该角色: 安装完成后,在您的剧本中引用该角色:

    - hosts: synology_nas
      roles:
        - ansible-synology-dsm
    

    synology_nas 替换为您 Ansible 清单中的相应主机或组。

这种方法允许您轻松将该角色纳入您的 Ansible 工作流程中,而无需在 Ansible Galaxy 上可用。

使用

登录

与 NAS 建立会话,以便进行后续 API 请求。

- include_tasks: login.yml

启用/禁用文件服务(NFS、SMB、AFP)

- name: 配置文件服务
  hosts: synology_nas
  roles:
    - ansible-synology-dsm
  vars:
    synology_dsm_nfs_enable: true  # 启用 NFS
    synology_dsm_smb_enable: true  # 启用 SMB
    synology_dsm_afp_enable: false # 禁用 AFP

启用/禁用 SSH/Telnet 服务

- name: 配置终端服务
  hosts: synology_nas
  roles:
    - ansible-synology-dsm
  vars:
    synology_dsm_ssh_enable: true     # 启用 SSH
    synology_dsm_ssh_port: 22         # 设置 SSH 端口
    synology_dsm_telnet_enable: false # 禁用 Telnet

管理用户服务

- name: 配置用户服务
  hosts: synology_nas
  roles:
    - ansible-synology-dsm
  vars:
    synology_dsm_user_home_service_enable: true                # 启用用户主目录服务
    synology_dsm_user_home_location: "/volume1/homes"          # 设置主目录位置
    synology_dsm_user_home_enable_recycle_bin: false           # 禁用用户主目录的回收站

添加软件包源

- name: 添加软件包源
  hosts: synology_nas
  roles:
    - ansible-synology-dsm
  vars:
    synology_dsm_package_sources:
      - name: "示例源"
        feed: "http://example.com/package/source"

贡献

欢迎贡献。请提交拉取请求以进行任何增强。

关于项目

Ansible role for configuring a Synology NAS running DSM

安装
ansible-galaxy install agaffney.synology_dsm
许可证
mit
下载
542
拥有者