Mastodon
  • 什么是 Mastodon?
  • 使用 Mastodon
    • 注册帐户
    • 设置你的个人资料
    • 在你的账户发布内容
    • 使用网络功能
    • 处理不想看到的内容
    • 推广你和他人
    • 进行偏好设置
    • 更多设置
    • 在站点外使用 Mastodon
    • 迁移或离开账户
    • 运行你自己的站点
  • 运营 Mastodon
    • 准备你的服务器
    • 从源代码安装
    • 配置你的环境
    • 安装可选功能
      • 对象存储
      • 洋葱服务
      • 验证码
      • 单点登录
    • 配置全文搜索
    • 设置你的新实例
    • 使用管理 CLI
    • 升级到新版本
    • 备份你的服务器
    • 迁移到新机器
    • 扩大你的站点规模
    • 审核操作
    • 故障排除
      • 数据库索引损坏
    • 用户组
  • 开发 Mastodon 应用
    • API 入门指南
    • 使用公开数据
    • 获取客户端应用访问权限
    • 使用帐户登录
    • 库与实现
  • 向 Mastodon 项目做贡献
    • 技术概览
    • 设置开发环境
    • 代码结构
    • 路由
    • 漏洞赏金与责任披露
  • 遵循的标准
    • ActivityPub
    • WebFinger
    • 安全性
    • Microformats
    • OAuth
    • Bearcaps
  • REST API
    • Datetime 格式
    • 指南与最佳实践
    • OAuth 令牌
    • OAuth 作用域
    • 速率限制
  • API 方法
    • apps
      • oauth
      • emails
    • accounts
      • bookmarks
      • favourites
      • mutes
      • blocks
      • domain_blocks
      • filters
      • reports
      • follow_requests
      • endorsements
      • featured_tags
      • preferences
      • followed_tags
      • suggestions
      • tags
    • profile
    • statuses
      • media
      • polls
      • scheduled_statuses
    • timelines
      • conversations
      • lists
      • markers
      • streaming
    • grouped notifications
    • notifications
      • push
    • search
    • instance
      • trends
      • directory
      • custom_emojis
      • announcements
    • admin
      • accounts
      • canonical_email_blocks
      • dimensions
      • domain_allows
      • domain_blocks
      • email_domain_blocks
      • ip_blocks
      • measures
      • reports
      • retention
      • trends
    • proofs
    • oembed
  • API 实体
    • Account
    • AccountWarning
    • Admin::Account
    • Admin::CanonicalEmailBlock
    • Admin::Cohort
    • Admin::Dimension
    • Admin::DomainAllow
    • Admin::DomainBlock
    • Admin::EmailDomainBlock
    • Admin::Ip
    • Admin::IpBlock
    • Admin::Measure
    • Admin::Report
    • Announcement
    • Appeal
    • Application
    • Context
    • Conversation
    • CustomEmoji
    • DomainBlock
    • Error
    • ExtendedDescription
    • FamiliarFollowers
    • FeaturedTag
    • Filter
    • FilterKeyword
    • FilterResult
    • FilterStatus
    • IdentityProof
    • Instance
    • List
    • Marker
    • MediaAttachment
    • Notification
    • NotificationPolicy
    • NotificationRequest
    • Poll
    • Preferences
    • PreviewCard
    • PreviewCardAuthor
    • PrivacyPolicy
    • Reaction
    • Relationship
    • RelationshipSeveranceEvent
    • Report
    • Role
    • Rule
    • ScheduledStatus
    • Search
    • Status
    • StatusEdit
    • StatusSource
    • Suggestion
    • Tag
    • TermsOfService
    • Token
    • Translation
    • V1::Filter
    • V1::Instance
    • V1::NotificationPolicy
    • WebPushSubscription

升级到新版本

      • 自动更新验证
      • 升级步骤
当 Mastodon 发布新版本时,它会出现在 GitHub 发布页面 上。请注意,虽然可以运行 main 分支中的未发布代码,但不推荐这样做。

自动更新验证

从 v4.2.0 版本开始,Mastodon 将自动检查可用更新并通知服务器上拥有 DevOps 权限的用户。

这通过每 30 分钟在后台获取 https://api.joinmastodon.org/update-check?version=<current_version> 来实现。 current_version 省略了构建元数据(如果版本字符串中含有+,则为第一个 + 之后的所有内容)。例如,如果你的版本是 4.3.0-beta2+my-fork,Mastodon 将查询 https://api.joinmastodon.org/update-check?version=4.3.0-beta2。

你可以通过设置 UPDATE_CHECK_URL 环境变量来更改 Mastodon 查询的 URL。你也可以通过将此环境变量设置为空字符串来完全禁用此行为,但我们强烈建议不要这样做,除非你通过其他方式关注 Mastodon 更新,因为 Mastodon 偶尔会发布必须及时应用的关键安全更新。

升级步骤

Mastodon 的发布版本对应 git 标签。在尝试升级之前,请在 GitHub 发布页面 上查看所需的发布版本。该页面将包含变更日志,描述关于新版本不同之处的所有信息,以及特定的升级说明。

首先,切换到mastodon用户:

su - mastodon

并转到 Mastodon 根目录:

cd /home/mastodon/live

下载发布版本的代码,假设版本为v3.1.2:

git fetch --tags
git checkout v3.1.2

现在执行 GitHub 上该版本的发行说明 中包含的升级说明。由于不同的发布版本需要不同的说明,我们不在此页面上包含任何说明。

从旧版本升级时,你可以安全地跳过中间版本。你不需要单独检出它们。但是,你需要跟随每个版本的说明。大多数说明的步骤是重复的,你只需确保至少执行一次所有内容。

在执行完发布说明中的指令后,切回 root 用户:

exit

重启后台工作进程:

systemctl restart mastodon-sidekiq

并重新加载 Web 进程:

systemctl reload mastodon-web
reload 操作是一种零停机重启,也称为"分阶段重启"。因此,Mastodon 升级通常不需要提前通知用户计划停机。在极少数情况下,你可以使用 restart 操作代替,但用户会感受到(短暂的)服务中断。

流式 API 服务器也会更新并需要重启,这将导致所有已连接的客户端断开连接,可能增加服务器负载:

systemctl restart mastodon-streaming
重启流式 API 会增加服务器负载,因为断开连接的客户端会尝试重新连接或改为轮询 REST API,所以尽可能避免这样做。
**以上就是所有步骤!**你现在正在运行新版本的 Mastodon。

翻译状态: 本文是英文页面 Upgrading to a new release 的翻译,最后翻译时间:2025-04-21,点击这里可以查看翻译后页面的改动。

最后更新于 April 21, 2025 · 改进此页面
也可在此找到: English

赞助商

Dotcom-Monitor LoadView Stephen Tures Swayable SponsorMotion

加入Mastodon · 博客 ·

查看源代码 · CC BY-SA 4.0 · 版权信息