Сегодня я наткнулся на сумасшедший (но классный) скрипт, который конвертирует любую систему Linux в Arch Linux супер гладко. Да, вы прочитали это правильно! Он называется TurboArch, и он может без проблем заменить вашу текущую ОС на Arch Linux сохранив при этом ваши важные данные. С помощью TurboArch переход на Arch Linux станет простым делом. Приготовьтесь к легкому переходу на Arch Linux без потери данных!
Что такое TurboArch?
TurboArch – это сценарий оболочки, который поможет вам преобразовать ваш текущий дистрибутив Linux в Arch Linux без необходимости начинать с нуля.
Сценарий TurboArch может преобразовать практически любую Linux-систему (например, Manjaro Ubuntu Fedora, даже Slackware!) в Arch без стирания ваших данных.
Он сохраняет ваши пользовательские данные, системные настройки и даже некоторые конфигурации, такие как настройки дисков (включая LVM и LUKS), учетные записи пользователей и пароли.
По сути, он удаляет ключевые системные каталоги и заменяет их эквивалентами Arch Linux, обеспечивая переход к свежей системе Arch Linux, сохраняя ваши личные и важные настройки нетронутыми.
Это делает переход на Arch Linux более простым и быстрым, без обычных хлопот, связанных с ручной переустановкой и переносом данных.
Как работает скрипт TurboArch?
TurboArch осуществляет трехэтапный процесс перехода вашей системы на Arch Linux, каждый этап фокусируется на различных аспектах установки и настройки.
Этап 1
- Подготовка файлов: Вначале скрипт сохраняет необходимые файлы в безопасном месте, чтобы предотвратить их удаление.
- Загрузка корневого файла: Затем загружается корневая файловая система Arch Linux и распаковывается на
/archlinux-bootstrap
. - Монтирование системы: Сценарий монтирует корневой каталог в новый каталог с именем
host-system
внутри/archlinux-bootstrap
с помощью командыmount --rbind
. - Основные монтирования:
/sys
,/dev
и/proc
монтируются в соответствующие каталоги внутри/archlinux-bootstrap
. - Переход сценария: Наконец,
stage2.sh
копируется в/archlinux-bootstrap
, затем создается хром и выполняется сценарий в этом новом окружении.
Этап 2
- Очистка системы: На этом этапе удаляется все, что находится в
/host-system/{bin, boot, etc, lib...}
, чтобы подготовиться к установке Arch. - Установка базовой системы: Используется
pacstrap
для установки базовой системы на новое окружение. - Перенос конфигурации: Копирует
fstab
и пользовательские конфигурации в новую систему, чтобы сохранить системные настройки и пользовательские данные. - Дальнейшее выполнение сценариев: Переход к
/host-system
и запускstage3.sh
для дополнительных конфигураций.
Этап 3
- Конфигурация системы: Устанавливает локаль, имя хоста и время для соответствия предпочтениям пользователя и обеспечения совместимости системы.
- Установка ядра: Устанавливает ядро Linux и генерирует
initramfs
, обеспечивая успешную загрузку системы. - Конфигурация загрузчика: Устанавливает и настраивает GRUB в качестве загрузчика, делая систему загрузочной и управляя мультизагрузочными сценариями, если это необходимо.
- Настройка окружения рабочего стола: Устанавливает GNOME и выполняет конфигурацию после установки, обеспечивая удобное окружение рабочего стола с самого начала работы.
Такой структурированный подход позволяет TurboArch систематически заменять существующий дистрибутив Linux на Arch Linux, сохраняя пользовательские данные и конфигурации и обеспечивая плавный переход к новой установке Arch Linux.
Поддерживаемые дистрибутивы Linux
Благодаря минимальным требованиям к зависимостям, TurboArch совместим практически со всеми системами Linux. Используя TurboArch, вы можете преобразовать следующие дистрибутивы Linux в Arch Linux:
Ключевые особенности TurboArch
Несмотря на то, что TurboArch может показаться пугающим, он предоставляет важные функции, которые снижают опасения по поводу потери данных.
- Сохранение
/home
директории: TurboArch гарантирует, что все пользовательские данные, хранящиеся в каталоге/home
, останутся нетронутыми во время миграции. Это очень важная функция, поскольку в этой директории хранятся пользовательские файлы, персональные настройки и файлы конфигурации различных приложений. - Сохранить текущее расположение разделов: TurboArch разработан таким образом, чтобы не обращать внимания на существующее расположение разделов. Никакие разделы не будут отформатированы. Это гарантирует, что все точки монтирования будут легко перенесены в новую систему.
- Сохранение конфигурации диска: Сохраняет конфигурацию диска даже при использовании LVM и LUKS. Это особенно важно для пользователей с зашифрованными дисками или тех, кто использует логические тома для более удобного управления дисками.
- Сохранение учетных записей пользователей и паролей: Сохранение учетных записей пользователей и паролей без изменений упрощает процесс миграции, избавляя от необходимости заново создавать учетные записи или сбрасывать пароли после установки Arch Linux.
- Сохранение членства в группах Sudo/Wheel: Сохраняя членство в группах sudo или wheel, скрипт гарантирует, что пользователи сохранят свои административные привилегии, позволяя им выполнять команды от имени пользователя root без перенастройки.
- Установка окружения рабочего стола: Опция автоматической установки GNOME для получения полнофункционального графического интерфейса сразу после установки. Это особенно полезно для пользователей, предпочитающих визуально интуитивное и удобное окружение рабочего стола.
Риски и последствия
Несмотря на то, что сценарий кажется многообещающим, он имеет и существенные недостатки.
Прежде чем приступить к работе, вы ДОЛЖНЫ знать о рисках, связанных с использованием этого сценария. Внимательно прочитайте нижеследующее и решите, действительно ли вы хотите продолжить работу.
Метод скрипта, позволяющий сохранить пользовательские данные и некоторые конфигурации, но при этом агрессивно заменяющий большую часть основных каталогов системы, подчеркивает необходимость тщательного рассмотрения и подготовки.
Вот разбивка последствий:
- Удаление основных каталогов: TurboScript навсегда удалит ВАЖНЫЕ системные каталоги, такие как
/bin
,/boot
,/etc
,/lib
,/lib64
,/sbin
,/srv
,/usr
и/var
. Вы должны знать, что большая часть программного обеспечения системы, включая ядро, системные библиотеки, системные конфигурации и установленные приложения, будет удалена. Это критический шаг, который навсегда удалит большую часть текущей системы, оставив, по сути, пустую систему перед установкой Arch. - Потенциал потери данных: Хотя личные данные и некоторые конфигурации будут сохранены, удаление вышеупомянутых каталогов может привести к потере критических конфигураций системы, настроек и, возможно, данных в таких каталогах, как
/srv
(который может содержать данные для таких служб, как веб-серверы) или конфигураций конкретных приложений, хранящихся в/etc
. - Стабильность и совместимость системы: В процессе удаления и замены могут возникнуть проблемы, связанные со стабильностью и совместимостью системы, особенно если в удаленных каталогах присутствовали определенные драйверы оборудования или пользовательские конфигурации.
Поэтому мы настоятельно рекомендуем вам протестировать скрипт TurboArch на виртуальной машине и решить, хотите ли вы его опробовать.
Меры предосторожности и рекомендации
Перед использованием TurboArch необходимо принять следующие важные меры предосторожности.
- Всестороннее резервное копирование: Очень важно иметь комплексную стратегию резервного копирования не только ваших личных данных в
/home
, но и файлов конфигурации или любых важных данных, хранящихся вне сохраненных каталогов. Рассмотрите возможность использования инструмента, который может создать полную резервную копию или клон системы. - Документация и примечания: Документируйте текущую конфигурацию системы, особенно если речь идет о сложных настройках, включающих пользовательские конфигурации или стороннее программное обеспечение. Сохранение записей об установленных пакетах и пользовательских настройках может оказать неоценимую помощь при восстановлении работоспособности после перехода.
- Ознакомьтесь с Arch Linux: Учитывая ручную и практическую природу Arch Linux, ознакомление с процессом установки, управлением пакетами (Pacman) и методологией настройки заранее сделает переход более плавным. Arch Wiki – отличный ресурс для этого.
- Тестирование и исследование: Если возможно, протестируйте процесс миграции на некритичной системе или виртуальной машине. Это может дать представление о потенциальных проблемах и помочь понять процесс без риска для основной системы.
- Обратитесь за советом к сообществу: Участие в сообществах, таких как форумы или Reddit, может дать дополнительные сведения и личный опыт тех, кто уже использовал TurboArch или пережил подобную миграцию. Вы сможете узнать об их проблемах и решениях.
Требования
Прежде чем запускать сценарий TurboArch, убедитесь, что ваша система соответствует этим требованиям. Возможно, вам потребуется установить некоторые из этих утилит, если они еще не присутствуют в вашей системе.
Следующий список необходимых условий для правильной работы инструмента TurboArch:
- Подключение к Интернету: Активное подключение к Интернету необходимо для загрузки загрузочного пакета Arch Linux, обновлений и дополнительных пакетов в процессе установки.
- x86_64 версия ядра Linux: Требование к версии ядра x86_64 Linux, подходящей для glibc в Arch Linux (версия 3.2 или glibc версии 2.39), гарантирует, что существующая система совместима с программными библиотеками, используемыми Arch Linux.
- grep, coreutils и util-linux: Эти пакеты предоставляют необходимые утилиты для работы с файлами, обработки текста и управления системой, которые, вероятно, используются TurboArch для различных задач установки.
- bash версии 4: Bash, Bourne Again SHell, является командным интерпретатором по умолчанию для Linux. Скрипт TurboArch требует bash версии 4 для корректной работы.
- wget или curl: Эти инструменты используются для загрузки файлов из интернета. TurboArch требует один из них для получения загрузочного пакета Arch Linux. Для пользователей, у которых могут возникнуть проблемы с автоматической загрузкой (например, из-за сетевых ограничений или прокси), TurboArch предлагает возможность вручную скачать и распаковать архив bootstrap в
/archlinux-bootstrap
каталог. - tar и xz: Используются для распаковки архивов. Бутстрап-пакет Arch Linux обычно сжат, поэтому для его распаковки требуются эти инструменты.
Преобразование любой ОС Linux в Arch Linux с помощью TurboArch
Для демонстрации я использую виртуальную машину с последней версией Fedora 39 GNOME.
Скачайте скрипт TurboArch с GitHub командой:
git clone https://github.com/evgvs/turboarch
Это клонирует содержимое репозитория TurboArch в локальный каталог с именем turboarch
.
Запустите скрипт TurboArch командой:
cd turboarch
Запустите скрипт TurboArch:
sudo bash turboarch.sh
Как уже говорилось, TurboArch работает в три этапа.
- Подготовка среды: копирование необходимых файлов в безопасное место, загрузка и извлечение корневого файла Arch Linux.
- Удаление некоторых каталогов из хост-системы, установка базовой системы с помощью pacstrap, копирование fstab и пользовательских конфигураций.
- Настройка локали, имени хоста, времени, установка ядра, генерация initramfs, установка и настройка GRUB, установка GNOME вместе с конфигурациями после установки.
Этап 1
На этапе 1 скрипт предложит вам ряд вопросов. Внимательно прочитайте их и ответьте соответствующим образом.
- Сначала вам будет предложено скопировать данные конфигурации текущего пользователя (например, конфигурацию Firefox). Введите Y и нажмите ENTER, чтобы скопировать данные, или введите N, чтобы пропустить их.
______ __ ___ __ /_ __/_ _______/ /_ ____ / | __________/ /_ / / / / / / ___/ __ \/ __ \/ /| | / ___/ ___/ __ \ / / / /_/ / / / /_/ / /_/ / ___ |/ / / /__/ / / / /_/ \__,_/_/ /_.___/\____/_/ |_/_/ \___/_/ /_/ TurboArch Release Candidate 4 Copyright (C) 2024 Evgeny Vasilievich Do you want to copy user configuration from current system? [Y/n] y
- TurboArch Script проанализирует вашу систему и выведет список доступных пользователей и соответствующих им групп в вашей текущей системе. Затем вас спросят, хотите ли вы установить GNOME DE. Введите Y, чтобы установить его, или N, чтобы пропустить его.
Found user: root Found user (sudo/wheel): ostechnix, (uid 1000) Do you want to install GNOME? [Y/n] y
- Далее вам будет предложено задать имя хоста для вашей новой системы Arch Linux. Если вы не укажете имя хоста, скрипт по умолчанию установит archlinux в качестве имени хоста вашей системы. Если вы хотите задать что-то другое, просто введите это и нажмите ENTER:
Set hostname for new system: [archlinux]
- TurboArch автоматически выберет существующий часовой пояс для вашей системы. Если вы хотите задать новый часовой пояс, введите его в формате регион/город и нажмите ENTER:
Set timezone for new system in "region/city" format: [Asia/Kolkata]
- По умолчанию TurboArch использует mkinitcpio для генерации initramfs. Если по какой-то причине вы хотите использовать dracut вместо mkinitcpio, введите Y и нажмите Enter. В противном случае просто нажмите ENTER, чтобы принять значение по умолчанию и перейти к следующему вопросу.
Do you want to use dracut instead of mkinitcpio to generate initramfs? Answer 'y' only if you have some unusual disk configuration with LUKS or LVM. [y/N]
- На этом шаге вам будет предложено использовать Reflector для выбора самых быстрых зеркал с помощью Reflector. Если вы хотите использовать Reflector, введите Y или N:
Do you want to use reflector to select fastest mirrors? Otherwise, mirrors from 'mirrorlist.default' will be used. [Y/n]
- Теперь скрипт TurboArch начнет скачивать образ archlinux-bootstrap и извлекать его.
Этап 2
- На стадии 2 ваша текущая хост-система будет стерта и начнутся задачи по установке нового Arch Linux.
На стадии 2 вы не можете сделать ничего особенного. На этом этапе следующие задачи будут выполнены автоматически:
- Установка пакетов в каталог
/thisroot
, - Установка Reflector, если он был выбран на предыдущих этапах, и выбор самых быстрых зеркал,
- Установка пакетов в каталог
/host-system
.
Этап 3
- Этап 3 также полностью автоматизирован, и вы ничего не будете делать вручную.
- Как только ваша текущая система Linux будет успешно заменена на новейшую систему Arch Linux, просто введите exit и нажмите ENTER, чтобы перезагрузить систему.
- Вы заметите, что меню Grub обновлено новым пунктом Arch Linux.
- Войдите в вашу новую систему Arch Linux.
- Проверьте версию Arch Linux в терминале, используя команду:
cat /etc/*-release
Вы также можете проверить версию Arch Linux, перейдя в раздел GNOME Settings ->About.
Поздравляем вас с успешной заменой вашей текущей системы Linux на Arch Linux! Начните использовать только что установленную систему Arch Linux.
Где мои старые ДАННЫЕ?
Как я уже говорил, каталог /home
будет сохранен, и НИЧЕГО не будет удалено из вашей старой системы. Ваша старая пользовательская конфигурация будет сохранена в директории /home/user/Desktop
.
Заключение
TurboArch – это мощный скрипт, который упрощает переход на Arch Linux с различных дистрибутивов Linux, сохраняя пользовательские данные и важные конфигурации.
Хотя он поддерживает широкий спектр систем и требует минимальных зависимостей, он также включает значительные изменения в основных каталогах системы. Пользователям следует действовать осторожно, обеспечив резервное копирование данных перед началом процесса.
Несмотря на свои недостатки, TurboArch предлагает простой и быстрый способ миграции на Arch Linux с различных дистрибутивов Linux без потери данных пользователя.
Используя TurboArch, я смог успешно преобразовать свою рабочую станцию Fedora в Arch Linux без потери данных. Переход прошел на удивление гладко и без ошибок. Все данные в каталоге HOME остались нетронутыми!
Опять же, я настоятельно рекомендую вам полностью понять, как работает этот скрипт, и протестировать его в безопасной среде, например, на виртуальной машине. Удачи!
Комментарии (2)
Сегодня попробовал на основном ноутбуке, всё прошло отлично (было установлено fedora 40 workstation).
При установке если выдаст ошибку zstd, надо установить (zstd -быстрый и эффективный алгоритм сжатия данных ), и продолжить.
Спасибо за новость.
↶ Отменить ответ Ответить
Три раза переустанавливал и каждый раз после установки просит ввести пароль для входа я ввожу но пишет что пароль неправильный …
Что я делаю не так ???
↶ Отменить ответ Ответить