Samba服务部署实战:Linux文件共享与多平台协作指南
1. 从一次文件共享的“尴尬”说起最近在帮一个做视频剪辑的小团队折腾他们的工作流他们有个挺典型的痛点几个剪辑师用的都是MacBook素材和工程文件都放在一台性能还不错的Linux工作站上。每次要传个文件要么用U盘来回倒腾要么开个FTP服务操作起来总感觉隔了一层效率低下不说还容易出错。他们最想要的就是像在Mac访达里直接访问另一个Mac的共享文件夹那样在Linux和Mac之间也能无缝拖拽文件。这个需求其实指向了一个在混合办公环境里经久不衰的解决方案——Samba。Samba服务简单说就是让Linux或Unix系统能够“说”Windows和macOS都能听懂的“文件共享语言”SMB/CIFS协议。通过部署Samba你可以把Linux服务器变成一个强大的文件服务器让局域网内的Windows PC、Mac电脑甚至其他Linux机器都能像访问本地网络邻居一样方便地读写Linux上的目录。这不仅仅是传文件那么简单它涉及到用户权限管理、多平台兼容性、性能调优等一系列实战问题。今天我就结合多次部署和排错的经验把从零搭建一个稳定、安全、高效的Samba服务的过程拆解清楚无论是个人NAS搭建还是中小团队的共享存储方案都能从中找到可复现的路径。2. 部署前必须想清楚的三个核心问题在动手安装任何软件包之前花几分钟理清需求能避免后续大量的返工和权限混乱。部署Samba不是简单地装个软件而是设计一套共享规则。2.1 共享给谁用—— 用户认证体系的选择这是第一个分水岭。Samba主要支持两种用户体系本地系统用户映射这是最常见、也相对简单的方式。Samba使用Linux系统本身的用户/etc/passwd和密码进行认证。你共享目录的权限最终会受Linux文件系统权限用户、组、其他人的约束。这种方式适合用户群体固定、且与Linux系统用户有对应关系的情况。独立的Samba用户数据库tdbsamSamba维护自己独立的用户密码文件通常是/var/lib/samba/private/passdb.tdb。你可以创建仅用于Samba访问的用户这些用户不需要在Linux系统中真实存在。这种方式更灵活适合将Samba纯粹作为文件服务不想让文件共享用户拥有系统登录权限的场景。我的经验之谈对于大多数中小型环境我推荐使用本地系统用户映射。理由有三第一权限管理直观直接用chown和chmod就能控制第二便于和其他服务如FTP、SSH统一账号第三排查问题时系统日志和文件权限是联动的更容易定位。只有在非常明确需要隔离系统权限时才考虑独立数据库。2.2 共享什么目录—— 目录规划与初始权限设置不要一上来就共享根目录或者用户家目录。合理的做法是专门规划一个用于共享的目录树。例如创建一个/srv/samba目录然后在下面建立public公共可读、department部门共享、projects项目协作等子目录。在设置Samba配置之前先用Linux命令把目录的属主和权限设置好。这是一个好习惯能让你对最终效果有更强的掌控力。比如打算创建一个需要团队协作读写的共享目录sudo mkdir -p /srv/samba/team_share sudo groupadd team # 创建一个专门的用户组 sudo chown -R :team /srv/samba/team_share # 目录所属组设为team sudo chmod 2770 /srv/samba/team_share # 设置SGID位保证在此目录下新建的文件继承组权限这里chmod 2770中的2就是设置SGIDSet Group ID位它保证了任何用户在此目录下创建的新文件或子目录其所属组都会自动设置为team这对于协作至关重要。2.3 需要多高的性能和安全级别—— 初步的配置倾向这决定了你后续配置参数的侧重点。性能优先如果共享主要用于大文件传输如视频编辑你需要关注socket选项、读写缓冲区大小等。安全与兼容性优先如果环境复杂有老旧的Windows系统你需要仔细配置协议版本和加密方式。简单易用优先如果只是家庭网络内部分享可以适当放宽安全限制启用访客访问。在思考完这三个问题后你的脑海里应该已经有了一个模糊的蓝图。接下来我们进入实战环节。3. 一步步搭建你的第一个Samba共享我们以最常见的CentOS/RHEL 8或Ubuntu 20.04为例使用本地系统用户认证方式创建一个需要账号密码访问的共享。3.1 安装与基础防火墙配置首先安装Samba软件包。它的核心是smb服务提供文件共享以及可选的nmb服务提供NetBIOS名称解析方便Windows网络邻居发现。# 对于RHEL/CentOS/Fedora sudo dnf install samba samba-client # 对于Debian/Ubuntu sudo apt update sudo apt install samba samba-common-bin安装完成后先不要急着启动。我们需要配置防火墙开放必要的端口。Samba主要用到139/tcp: NetBIOS会话服务445/tcp: SMB over TCP现代Windows默认使用这个137-138/udp: NetBIOS名称服务和数据报服务用于网络发现# 使用firewalld的系统RHEL/CentOS sudo firewall-cmd --permanent --add-servicesamba sudo firewall-cmd --reload # 使用ufw的系统Ubuntu sudo ufw allow samba3.2 关键配置文件smb.conf的解剖与定制Samba的所有配置都在/etc/samba/smb.conf文件中。在修改前强烈建议先备份原文件sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak。这个文件结构清晰分为[global]全局配置和若干个[share_name]共享段。我们先看全局配置这是服务的基石。用编辑器打开配置文件找到[global]部分我们需要关注并修改以下几个关键参数[global] workgroup WORKGROUP server string My Samba Server netbios name myserver security user map to guest Bad User log file /var/log/samba/log.%m max log size 5000 dns proxy noworkgroup: 工作组名称通常与Windows电脑的工作组保持一致默认是WORKGROUP。如果你的网络中有Windows域这里应填写域名。netbios name: 服务器在网络邻居中显示的名称不要用特殊字符和空格。security user: 这是最重要的设置之一表示使用用户级安全认证即需要用户名和密码。这是最常用的模式。map to guest Bad User: 这个参数控制访客访问。Bad User意味着如果密码错误或用户不存在会尝试以访客身份连接。为了安全在生产环境我建议设置为map to guest Never完全禁用访客访问。家庭简单共享可以设为Bad User或Bad Password。log file和max log size: 配置日志%m代表客户端机器名这样每个客户端的连接日志会分开排查问题时非常方便。接下来在文件末尾添加我们的第一个共享定义。假设我们要共享之前创建的/srv/samba/team_share目录只允许team组的成员读写。[team_share] comment Team Collaboration Space path /srv/samba/team_share browseable yes writable yes valid users team create mask 0660 directory mask 2770 force group team[team_share]: 共享名客户端访问时看到的名称。comment: 共享描述可选。path: 共享的绝对路径。browseable yes: 是否在浏览列表如网络邻居中显示。writable yes: 是否可写。注意这里设为yes只是Samba层面的许可最终还要受文件系统权限限制。valid users team: 允许访问的用户。team表示team组的所有成员。也可以写具体的用户名如user1, user2。create mask和directory mask: 控制客户端新建文件和目录时的默认权限。0660表示文件权限为rw-rw----2770中的2同样是SGID位保证目录继承组权限。force group team: 无论哪个用户创建文件其所属组都强制为team。这与文件系统层的SGID位chmod 2770作用叠加双保险确保协作顺畅。3.3 添加Samba用户并设置密码配置好共享后需要为允许访问的Linux系统用户设置Samba密码。这个密码独立于系统登录密码专门用于访问Samba共享。假设系统里已有用户alice和bob并且他们都属于team组。# 将alice添加为Samba用户并设置密码 sudo smbpasswd -a alice New SMB password: [输入密码] Retype new SMB password: [再次输入密码] Added user alice. # 同样操作添加bob sudo smbpasswd -a bob重要提示smbpasswd -a添加的用户必须已经是Linux系统用户。这个命令会在Samba的独立数据库中创建该用户的密码条目。3.4 启动服务与验证配置在启动前务必用Samba自带的工具测试配置文件语法是否正确。这是一个非常关键的排错步骤。sudo testparm如果输出没有报错并显示了加载的配置包括你刚添加的[team_share]说明语法正确。现在可以启动服务并设置开机自启# 对于使用systemd的系统 sudo systemctl start smb sudo systemctl start nmb # 如果需要网络发现 sudo systemctl enable smb sudo systemctl enable nmb检查服务状态确保它们正在运行sudo systemctl status smb4. 客户端连接测试与排错实战服务跑起来了但真正的考验在客户端连接。不同系统连接方式各异问题也常出在这里。4.1 从Linux客户端测试在另一台Linux机器上我们可以用smbclient命令行工具进行快速测试这能绕过图形界面的干扰直接诊断问题。# 列出服务器上的共享 smbclient -L //192.168.1.100 -U alice # 系统会提示输入alice的Samba密码然后显示类似下面的列表 # Sharename Type Comment # --------- ---- ------- # team_share Disk Team Collaboration Space # IPC$ IPC IPC Service (My Samba Server) # 交互式连接到一个共享 smbclient //192.168.1.100/team_share -U alice # 连接成功后会进入一个类似FTP的提示符 smb: \ # 可以尝试命令ls查看文件put local_file上传get remote_file下载exit退出。如果smbclient -L失败最常见的原因是防火墙或SELinux。我们稍后集中解决。4.2 从Windows客户端连接在Windows文件资源管理器的地址栏直接输入\\服务器IP地址或\\服务器NetBIOS名称例如\\192.168.1.100或\\myserver。按回车后会弹出登录窗口输入用户名格式可以是服务器名\用户名或用户名如果工作组不同可能需要前者和之前用smbpasswd设置的Samba密码。Windows连接常见坑点“无法访问。您可能没有权限使用网络资源。”这通常是协议或加密方式不匹配。现代Samba默认启用SMB2/3但某些旧Windows如Win7可能需要特殊配置。我们可以在Samba服务端的[global]部分添加以下参数来提升兼容性server min protocol SMB2 server max protocol SMB3禁止使用老旧不安全的SMB1。登录窗口反复弹出检查用户名密码是否正确以及valid users设置是否包含了该用户。用smbclient命令行测试能更快定位是密码问题还是权限问题。4.3 从macOS客户端连接在macOS访达Finder中按CmdK或选择“前往”-“连接服务器…”在服务器地址中输入smb://服务器IP地址例如smb://192.168.1.100。点击连接后选择“注册用户”输入用户名和Samba密码即可。macOS对SMB3的支持很好通常问题较少。5. 部署中最容易踩的三大“深坑”与解决方案即使按照步骤操作依然可能遇到问题。下面是我总结的三个最常见、也最让人头疼的“坑”。5.1 坑一SELinux阻止访问——现象与根因分析这是RHEL/CentOS/Fedora系统上最高频的故障点。症状是客户端能列出共享甚至能认证成功但一旦尝试读写文件就会提示“权限不足”。在服务端的Samba日志/var/log/samba/log.客户端名里可能会看到“Permission denied”的错误。根因SELinux是一个强制访问控制安全模块它给文件和进程打上“标签”context。Samba进程只能访问具有特定SELinux标签如samba_share_t的文件。我们创建的共享目录如/srv/samba默认的标签可能是default_t或var_t不在Samba的允许访问列表内。解决方案不是关闭SELinux这会让系统不安全而是修改目录的SELinux上下文。# 查看目录当前的SELinux上下文 ls -ldZ /srv/samba/ # 输出可能类似drwxr-xr-x. root root unconfined_u:object_r:default_t:s0 /srv/samba/ # 递归地给共享目录及其下所有内容添加Samba共享文件的标签 sudo semanage fcontext -a -t samba_share_t /srv/samba(/.*)? # 应用新的上下文规则 sudo restorecon -Rv /srv/samba执行后再用ls -ldZ查看标签应该变成了object_r:samba_share_t:s0。此时客户端读写应该就正常了。5.2 坑二文件权限与Samba权限的“双重枷锁”这是概念上最容易混淆的地方。Samba的访问控制有两层Samba配置权限由smb.conf中的writableread onlyvalid users等参数控制。这是“门禁”决定谁能进这个房间。Linux文件系统权限由chmod和chown设置的文件本身的rwx权限。这是“房间内物品的访问规则”决定进来的人能对房间里的东西做什么。关键原则最终生效的权限是这两者的“交集”。即用户必须同时通过Samba认证和文件系统权限检查才能进行相应操作。典型场景配置里设置了writable yes用户也在valid users列表里但用户还是无法创建文件。很可能是因为该用户对共享目录的Linux文件系统权限没有写w权限。你需要用chmod和chown来调整。我的经验为了简化管理我通常采用“组权限驱动”策略创建一个Linux用户组如team。将需要协作的Linux用户都加入该组。将共享目录的所属组设为team并设置SGID位和合适的组权限如chmod 2770。在Samba配置中设置valid users team和force group team。 这样无论是从Samba还是从Linux本地权限管理都统一到了team组上清晰且一致。5.3 坑三Windows 10/11连接失败与协议协商问题新版本的Windows默认使用SMB3协议并可能禁用了一些较弱的加密算法。而Samba服务器的默认配置可能需要调整才能与之完美协作。如果遇到Windows 10/11连接特别慢或者提示“不支持的网络请求”可以尝试在Samba服务端的[global]部分添加以下高级设置[global] # ... 其他配置 ... # 禁用不安全的SMB1 server min protocol SMB2_02 # 启用更强的加密算法 smb encrypt desired # 针对Windows客户端的特定调整 ntlm auth yes lanman auth nosmb encrypt desired表示如果客户端支持就启用加密传输提升安全性。ntlm auth yes是确保NTLM认证开启这是Windows域环境常用的方式。修改后重启Samba服务sudo systemctl restart smb。6. 进阶配置让Samba更贴合你的场景基础服务稳定后可以根据实际需求进行优化和功能增强。6.1 创建无需密码的公共只读/读写共享对于打印机共享或纯粹的公共文件下载区可以配置访客共享。注意这会降低安全性请仅在可信的局域网内使用。[public] comment Public Share path /srv/samba/public browseable yes writable yes # 如果需要公共可写设为yes但极其危险 guest ok yes read only yes # 公共共享强烈建议设为只读 force user nobody # 所有访客操作映射为Linux用户nobody这里guest ok yes允许访客访问force user nobody将所有访客的操作都视为Linux用户nobody在执行方便进行统一的文件系统权限控制只需控制/srv/samba/public目录对nobody用户的权限即可。6.2 集成Windows活动目录AD域对于已经拥有Windows AD域的企业环境可以将Samba服务器作为域成员加入这样域用户就可以直接用他们的AD账号密码访问Samba共享实现单点登录。这涉及到更复杂的配置需要安装realmd和sssd等软件包并修改smb.conf中的security ads以及指定域控制器和域名称。这个过程需要对Kerberos和AD有一定了解建议在测试环境充分验证后再上生产。6.3 性能调优参数参考对于高吞吐量场景可以在[global]部分调整以下参数[global] # ... 其他配置 ... # 提高socket性能适用于千兆/万兆网络 socket options TCP_NODELAY SO_RCVBUF131072 SO_SNDBUF131072 # 提高读写性能 read raw yes write raw yes # 调整最大连接数 max connections 1000 # 日志级别生产环境可调高排查问题时调为3 log level 1SO_RCVBUF和SO_SNDBUF是TCP套接字缓冲区大小可以根据网络情况调整。read raw和write raw启用原始读写能提升大文件传输效率。调整这些参数后最好进行实际的文件传输测试观察效果。7. 日常维护与监控命令手册部署完成不是终点日常维护同样重要。查看实时连接sudo smbstatus这个命令非常有用可以列出当前所有连接到Samba的客户端、它们打开的文件以及连接的用户。查看详细日志日志是排错的生命线。主要日志文件在/var/log/samba/下。log.smbd是主服务日志log.192.168.1.50这样的文件是针对特定客户端的日志。用tail -f /var/log/samba/log.smbd可以实时查看日志。重新加载配置修改smb.conf后不需要重启整个服务避免中断现有连接可以用sudo systemctl reload smb来平滑重载配置。添加新用户步骤不变sudo useradd newuser创建系统用户sudo smbpasswd -a newuser设置Samba密码。禁用用户sudo smbpasswd -d username禁用sudo smbpasswd -e username重新启用。删除用户sudo smbpasswd -x username仅从Samba数据库删除。如果也要删除系统用户需单独执行sudo userdel username。部署Samba服务从表面看是安装配置一个软件但其内核是在异构网络环境中搭建一座信任与效率的桥梁。每一次权限的设定都是一次访问规则的定义每一次协议的调优都是为了更流畅的协作。我自己的体会是最稳定的Samba服务往往不是配置最复杂的而是权限规划最清晰、与现有系统整合最自然的那一个。与其追求各种高级功能不如先把基础的用户-组-目录权限模型理顺这能解决80%的问题。当客户端顺利连上文件自如流转时你会觉得这些前期的思考和调试都是值得的。如果在配置中遇到诡异问题记住三板斧查日志/var/log/samba/、验权限ls -l和ls -Z、简化配置注释掉可能冲突的复杂参数回归最小化测试。

相关新闻

STM32F103C8T6 Keil5开发环境配置全攻略:从零搭建到LED闪烁

STM32F103C8T6 Keil5开发环境配置全攻略:从零搭建到LED闪烁

1. 项目概述:为什么STM32F103C8T6的Keil5配置是每个嵌入式新手的必修课 如果你刚拿到一块蓝色的STM32F103C8T6最小系统板,看着密密麻麻的引脚和空白的开发环境,感觉无从下手,那你来对地方了。STM32F103C8T6,这颗被誉为…

2026/8/13 6:11:49 阅读更多 →
Nginx headers-more模块实战:编译集成与HTTP头动态管理

Nginx headers-more模块实战:编译集成与HTTP头动态管理

1. 项目缘起:为什么需要动态修改HTTP头?在Web开发和运维的日常工作中,Nginx作为反向代理和负载均衡器的角色已经深入人心。但你是否遇到过这样的场景:上游应用返回的响应头里缺少了关键的Cache-Control,导致CDN缓存策略…

2026/8/13 6:11:49 阅读更多 →
从万能密码到SQL注入:原理、靶场实战与安全防御全解析

从万能密码到SQL注入:原理、靶场实战与安全防御全解析

1. 从“万能密码”说起:一个经典的网络安全入门案例如果你刚开始接触网络安全,尤其是Web安全方向,那么“万能密码”几乎是一个绕不开的起点。我第一次在本地靶场里输入admin or 11并成功登录后台时,那种感觉既兴奋又后怕。兴奋的是…

2026/8/13 6:10:49 阅读更多 →

最新新闻

YouMind:AI驱动技术PPT制作,从思维导图到精美幻灯片的效率革命

YouMind:AI驱动技术PPT制作,从思维导图到精美幻灯片的效率革命

最近在技术分享、项目汇报、产品演示时,你是不是也遇到过这样的困境:精心准备的内容,却因为PPT制作耗时耗力、设计感不足而大打折扣?或者,你希望将一段复杂的代码逻辑、一个技术架构清晰地可视化,却发现传统…

2026/8/13 7:07:14 阅读更多 →
RK3588 Jupyter实时目标检测:OpenCV+NPU调试优化全攻略

RK3588 Jupyter实时目标检测:OpenCV+NPU调试优化全攻略

1. 项目缘起:为什么要在Jupyter里做RK3588的实时目标检测预览?如果你手头有一块RK3588的开发板,并且正在上面折腾目标检测模型,那你大概率会遇到一个共同的痛点:调试过程太不直观了。通常的流程是,写好Pyth…

2026/8/13 7:07:14 阅读更多 →
链表元素删除:虚拟头节点与递归解法详解

链表元素删除:虚拟头节点与递归解法详解

1. 链表基础与问题概述链表是一种物理存储单元上非连续、非顺序的线性数据结构,由一系列节点(Node)组成。每个节点包含两个部分:数据域(存储元素值)和指针域(存储下一个节点的地址)。…

2026/8/13 7:07:14 阅读更多 →
深入解析白加黑攻击:原理、实现与防御实战指南

深入解析白加黑攻击:原理、实现与防御实战指南

1. 从一次“误报”事件说起:为什么白加黑如此棘手前几天,一个做安全运维的朋友给我发来一个压缩包,说他们内网一台机器上的终端安全软件疯狂报警,但文件本身看起来“人畜无害”。我打开一看,里面就两个文件&#xff1a…

2026/8/13 7:07:14 阅读更多 →
Docker部署PostgreSQL实战:从原理到生产环境配置

Docker部署PostgreSQL实战:从原理到生产环境配置

1. 从“为什么”开始:Docker化PostgreSQL的动机与价值如果你正在考虑或者已经决定使用Docker来部署PostgreSQL,那么恭喜你,你已经走在了现代应用部署的正确道路上。但在此之前,我们不妨先停下来想想,为什么是Docker&am…

2026/8/13 7:07:14 阅读更多 →
Unity DOTS 安全检查:组件访问、结构变更与 Native 容器

Unity DOTS 安全检查:组件访问、结构变更与 Native 容器

Unity DOTS 安全检查:组件访问、结构变更与 Native 容器 DOTS 的风险入口不只在网络消息,还包括编辑器工具、资源导入和脚本桥接。组件与系统按数据访问模式划分,热路径保持 blittable,托管引用留在明确的桥接层。 先写清每个系统…

2026/8/13 7:06:14 阅读更多 →

日新闻

Visual Studio新建项目解决方案为空:系统性排查与修复指南

Visual Studio新建项目解决方案为空:系统性排查与修复指南

1. 问题现象与本质剖析如果你是一位.NET开发者,或者正准备踏入这个领域,那么Visual Studio(后面简称VS)绝对是你绕不开的伙伴。但有时候,这个伙伴会跟你开一个不大不小的玩笑:你满怀期待地点击“创建新项目…

2026/8/13 0:00:09 阅读更多 →
长春建设厅网站:普通人买房办事必看的真实指南与避坑攻略

长春建设厅网站:普通人买房办事必看的真实指南与避坑攻略

说实话,每次提起“长春建设厅网站”这几个字,我心里都挺有感触的。不是因为它有多高大上,也不是因为那里藏着什么不可告人的秘密,恰恰相反,是因为它太“接地气”了,或者说,它是咱们普通人想要在这个城市好好生活、安稳买房时,必须得翻过的一座“数据山”。很多新朋友第…

2026/8/13 0:00:09 阅读更多 →
Windows家庭版远程桌面多用户破解完整指南:RDPWrap终极解决方案

Windows家庭版远程桌面多用户破解完整指南:RDPWrap终极解决方案

Windows家庭版远程桌面多用户破解完整指南:RDPWrap终极解决方案 【免费下载链接】rdpwrap.ini RDPWrap.ini for RDP Wrapper Library by StasM 项目地址: https://gitcode.com/GitHub_Trending/rd/rdpwrap.ini 你是否曾为Windows家庭版无法支持多用户远程桌面…

2026/8/13 0:00:09 阅读更多 →

周新闻

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁 【免费下载链接】baidupankey 在线查询网盘提取码(维护中 rm repo) 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 你是否曾经在深夜寻找一份重要资料&#x…

2026/8/13 2:38:34 阅读更多 →
如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南 【免费下载链接】chinese_license_plate_generator 中国车牌生成器 项目地址: https://gitcode.com/gh_mirrors/ch/chinese_license_plate_generator 中国车牌生成器是一个基于Python的开源项目&#xff0c…

2026/8/12 1:11:09 阅读更多 →
收藏!小白程序员轻松入门大模型,从Harness工程开始实践

收藏!小白程序员轻松入门大模型,从Harness工程开始实践

文章强调学习大模型不应只关注模型本身,而应重视模型外的系统搭建,即Harness。提出AgentModelHarness的实用公式,详细介绍Harness的四个层次:持久化层、执行层、控制层和观察与验证层。文章还探讨了上下文工程、工具设计、AGENTS.…

2026/8/12 1:11:08 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/11 17:09:45 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/12 1:11:10 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/11 17:09:45 阅读更多 →