Гид по технологиям

Как безопасно переключаться между версиями Fedora Silverblue (rebasing)

• 8 min read • Linux • Обновлено 24 Nov 2025
Rebasing в Fedora Silverblue: как переключать версии
Rebasing в Fedora Silverblue: как переключать версии

TL;DR

Fedora Silverblue позволяет безопасно переключаться между образами системы с помощью операции «rebase». Сначала закрепите (pin) рабочий образ, затем найдите нужный удалённый образ (remote), выполните rpm-ostree rebase и перезагрузите систему. При необходимости можно откатиться через rpm-ostree rollback или снова выполнить rebase на прежнюю версию.

Important: перед любыми изменениями сделайте резервную копию данных. Хотя процедуры не являются деструктивными по дизайну, резервное копирование убережёт вас от потерь при неожиданностях.

Несколько вариантов Fedora Silverblue, показанные визуально

Введение: что такое rebasing и зачем это нужно

Rebase — это процесс переключения текущего «развёрнутого» (deployed) образа OSTree на другой образ, доступный в удалённом репозитории Fedora. Это позволяет быстро перейти на другую версию Silverblue или её разновидность (например, Kinoite) без классической переустановки. Важно понимать два основных понятия:

  • Образ (OSTree image): полностью собранная и неизменяемая система, на которой вы загружаетесь.
  • Развёртывание (deployment): конкретный образ, доступный в меню загрузчика (GRUB).

Rebase безопасен, если вы заранее закрепили работающее развёртывание (pin) или имеете возможность отката (rollback).

Подготовка к rebasing: базовые шаги

Все команды выполняются в терминале. Откройте терминал с правами пользователя, у которого есть sudo.

  1. Закрепите текущее развёртывание, чтобы гарантировать возможность возврата.
sudo ostree admin pin 0
rpm-ostree status

Команда pin 0 закрепит первое (текущее) развёртывание. Команда rpm-ostree status покажет список установленных развёртываний. Текущее развёртывание помечено белой точкой и должно содержать Pinned: yes.

Список развёртываний Silverblue с отметкой о закреплении

Советы по подготовке:

  • Убедитесь, что у вас есть достаточное место на /boot и /var (как правило, OSTree хранит данные в /ostree и в /var). Если дисковое пространство ограничено, перед установкой новых образов освободите место.
  • Закрепляйте только те развёртывания, которые действительно хотите сохранить в меню загрузчика. Избыточное количество pinned-образов может захламить GRUB.

Как найти доступные версии Fedora Silverblue

Чтобы увидеть, какие образы доступны в удалённых репозиториях Fedora, выполните:

ostree remote refs fedora

Вы получите длинный список рефов (refs). Обычно вам нужны рефы с подстрокой x86_64 и без слов testing или updates. В названиях вы увидите понятия:

  • silverblue — основной поток Silverblue
  • kinoite — вариант с рабочим столом KDE Plasma
  • rawhide — ветка разработки (нестабильная)

Список ref-ов удалённых репозиториев Fedora с примечаниями

Нюансы выбора:

  • Kinoite подходит тем, кто использует KDE Plasma. Silverblue — для GNOME.
  • Rawhide содержит самые свежие сборки и нестабилен; используйте его только для тестирования.
  • Если в списке появился номер версии, больший, чем текущий релиз Fedora, это, вероятно, бета- или тестовая сборка.

Выполнение rebase: пошаговая инструкция

  1. Скопируйте точное имя рефа (remote ref) той версии, на которую хотите перейти.
  2. Выполните команду rebase, подставив скопированный реф:
rpm-ostree rebase fedora:fedora/36/x86_64/kinoite
  1. Дождитесь завершения загрузки и установки образа. Процесс может занять от нескольких минут до более длительного времени в зависимости от скорости сети и диска.
  2. Перезагрузите компьютер. По умолчанию система загрузится в только что установленное развёртывание.

Что останется и что изменится:

  • Ваши пользовательские файлы в домашней директории останутся нетронутыми.
  • Системные компоненты будут заменены на те, что содержатся в новом OSTree-образе.

Советы по отладки:

  • Если установка прерывается сетевой ошибкой, повторите команду rebase; она продолжит работу с учётом кэшированных данных.
  • Смотрите вывод команды rpm-ostree status для понимания текущего состояния развёртываний.

Закрепление и открепление развёртываний (pin/unpin)

Вы можете закреплять несколько развёртываний, чтобы они оставались в меню загрузчика.

  1. Сначала посмотрите список развёртываний:
rpm-ostree status

Позиции нумеруются: 0 — первое, 1 — второе и т. д. Чтобы закрепить развёртывание с номером 1:

sudo ostree admin pin 1

Чтобы снять закрепление:

sudo ostree admin pin --unpin 1

Важно: если вы снимете закрепление, развёртывание будет удалено из меню загрузчика только при следующем обновлении/обновке OSTree. До этого оно останется доступно.

Несколько развёртываний Silverblue, показанных в меню загрузчика

Как откатиться или отменить изменения

Есть два основных сценария возврата:

  1. Быстрый откат после одной операции (rollback):
rpm-ostree rollback

Эта команда восстановит предыдущее развёртывание как дефолтное. Затем перезагрузите систему.

  1. Если вы сменили образы несколько раз и rollback не возвращает на нужную версию — выполните rebase на нужный образ явно. Т.е. просто снова выполните rpm-ostree rebase с точным рефом нужной версии.

Советы:

  • Rollback откатывает последнее изменение развёртывания, но не снимает pinned-состояние. При необходимости управлять pinned-образами используйте ostree admin pin/–unpin.
  • После отката проверьте rpm-ostree status, чтобы убедиться, что нужный образ находится в списке и помечен как текущий.

Когда rebasing может не подойти: случаи и контрпримеры

  • Вы используете специфические локальные системные изменения, встроенные в образ через custom ostree commit. В этом случае rebase заменит образ и локальные изменения могут потеряться.
  • Вы зависите от специальных версий драйверов, которые доступны только в конкретной сборке. При переходе на новую версию эти драйверы могут не работать.
  • Использование rawhide для ежедневной системы может привести к ежедневным сбоям из-за нестабильности.

Если любая из этих ситуаций относится к вам, рассмотрите альтернативы ниже.

Альтернативные подходы

  • Toolbox / Podman контейнеры: запуск приложений в контейнерах для тестирования без смены образа.
  • Layered packages (rpm-ostree install): установить дополнительные RPM-пакеты поверх текущего образа без полного rebase.
  • Использование виртуальной машины: проверить другую версию Fedora в VM перед rebase на хосте.

Каждый подход имеет свои плюсы: контейнеры и VM безопасны и обратимы; layered packages быстрее, но могут усложнить диагностику конфликтов.

Инструментальные модели мышления (mental models)

  • Подумайте о каждой версии как о «снимке» системы. Pin — это «закладка» на снимке, rollback — возврат к предыдущей закладке.
  • Rebase не меняет ваш домашний каталог: это как смена DVD с операционной системой при сохранении профиля пользователя.
  • OSTree похож на Git для бинарных снимков системы: новые образы — это новые коммиты, развёртывания — указатели на коммиты.

Мини-SOP / Плейбук: быстрая инструкция для рабочего процесса

  1. Сохраните важные данные и сделайте резервную копию.
  2. Выполните rpm-ostree status и закройте все важные приложения.
  3. Pin текущую сборку: sudo ostree admin pin 0.
  4. Просмотрите ostree remote refs fedora и выберите нужный реф.
  5. Запустите rpm-ostree rebase <выбранный-ref>.
  6. Дождитесь завершения и перезагрузите систему.
  7. Проверьте функциональность: драйверы, VPN, рабочие приложения.
  8. Если что-то не так — выполните rpm-ostree rollback или повторный rebase на стабильную версию.

Инцидентный план: быстрый откат (runbook)

  1. Если после перезагрузки система не загружается в рабочем состоянии, выберите старое развёртывание в меню GRUB (если оно есть).
  2. Если система загружается, откройте терминал и выполните rpm-ostree rollback.
  3. Если rollback невозможен или не помогает, загрузитесь в rescue-режим и восстановите grub/ostree из резервной копии.
  4. Сообщите о проблеме на соответствующих каналах Fedora (если это баг) и пересмотрите этапы rebase.

Критерии приёмки (Test cases / Acceptance criteria)

  • Система успешно загружается в новое развёртывание после перезагрузки.
  • Ключевые пользовательские приложения работают корректно (браузер, почта, VPN).
  • Драйверы (Wi‑Fi, GPU) функционируют как ожидалось.
  • Пользовательские файлы и конфигурации в домашней папке сохраняются.

Роли и чек-листы

  • Для десктоп‑пользователя:

    • Сделать резервную копию важных файлов.
    • Закрепить текущий образ (pin).
    • Выбрать стабильный реф (не rawhide) и выполнить rebase.
    • Перезагрузить и проверить основные рабочие сценарии.
  • Для тестировщика/разработчика:

    • Используйте rawhide или бета‑рефы в изолированной среде.
    • Подготовьте тестовый набор автоматизированных проверок для основных приложений.
  • Для системного администратора:

    • Контролируйте список pinned-развёртываний на всех машинах.
    • Планируйте откат и обновления через общую политику OSTree.

Короткий глоссарий (1‑строчные определения)

  • OSTree: система хранения бинарных снимков системы, похожая на Git для образов.
  • Rebase: переключение текущего развёртывания на другой OSTree-образ.
  • Pin: закрепление развёртывания, чтобы оно не удалялось автоматически.
  • Rollback: возврат к предыдущему развёртыванию.
  • Kinoite: вариант Silverblue с KDE Plasma.
  • Rawhide: ветка разработки Fedora (нестабильна).

Decision flowchart (Mermaid) — как принять решение о rebase

flowchart TD
  A[Нужно ли менять версию Silverblue?] -->|Только тест| B[Использовать VM или контейнер]
  A -->|Для рабочего стола| C[Да]
  C --> D{Это стабильная версия?}
  D -->|Да| E[Pin текущий образ -> Rebase -> Тесты -> Перезагрузка]
  D -->|Нет 'rawhide'| F[Тестировать в изолированной среде]
  E --> G[Если проблемы -> rollback или rebase на старую версию]
  F --> H[Отмена изменений или багрепорт]

Совместимость и миграция

  • Перед переходом между большими номерами релизов (например, 34 → 36) проверьте совместимость сторонних драйверов и расширений.
  • Для корпоративных рабочих станций рекомендуют сначала протестировать образ в контролируемой среде.

Безопасность и конфиденциальность

  • Rebase меняет системный образ, но не домашний каталог, поэтому пользовательские данные остаются локально.
  • Если вы используете корпоративные политики (например, VPN/PKI), убедитесь, что новые образы не ломают интеграцию с серверными сертификатами или политиками.

Частые ошибки и способы их устранения

  • Ошибка: «нет места на диске» при загрузке образа. Решение: очистите старые незакреплённые образы или увеличьте свободное пространство на разделах.
  • Ошибка: несовместимость драйвера GPU. Решение: откатитесь и задокументируйте проблему, затем протестируйте другой образ или драйвер.
  • Ошибка: пропал GRUB-пункт. Решение: проверьте ostree admin and rpm-ostree status и при необходимости восстановите запись в GRUB.

Когда стоит избегать rebase

  • Если ваша рабочая среда зависит от очень специфичных версий библиотек и драйверов.
  • Если вы не можете временно потерять доступ к некоторым инструментам (например, корпоративный VPN), пока не протестируете новый образ.

Заключение и краткая сводка

Rebasing в Fedora Silverblue — мощный, удобный и безопасный способ переключаться между версиями системы. Если соблюдать простые правила: резервное копирование, закрепление текущего образа и тестирование после перезагрузки — переход пройдёт гладко. Для тестирования новых сборок используйте изолированные среды, а для рабочих машин придерживайтесь стабильных рефов.

Меню загрузчика GRUB с несколькими версиями Fedora Silverblue

Краткие рекомендации (быстрая памятка)

  • Сделайте резервную копию.
  • Pin текущий образ: sudo ostree admin pin 0.
  • Найдите нужный реф: ostree remote refs fedora.
  • Rebase: rpm-ostree rebase .
  • Перезагрузите и проверьте работоспособность.
  • Если нужно — rpm-ostree rollback или rebase обратно.
Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро