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 仓库直接安装
创建需求文件: 在您的 Ansible 项目目录中创建一个
requirements.yml文件,并添加以下内容:- src: https://github.com/agaffney/ansible-synology-dsm name: ansible-synology-dsm使用
ansible-galaxy安装角色: 通过运行以下命令直接从 GitHub 仓库安装角色:ansible-galaxy install -r requirements.yml在您的剧本中引用该角色: 安装完成后,在您的剧本中引用该角色:
- 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"
贡献
欢迎贡献。请提交拉取请求以进行任何增强。
