Как быстро, дёшево и без боли перейти с Windows на Linux
Советы SRE-инженера про смену операционки и перенос данных: простая инструкция из 4 шагов без магии и лишних обещаний.
Иллюстрация: Wikimedia Commons / Polina Vari для Skillbox Media
Я никогда не был фанатом Microsoft, но какое-то время чувствовал себя комфортно в рамках Windows. А полгода назад решил снова полностью перейти на Linux. Расскажу, как это было.
Шаг №1
Изучить возможные проблемы
Первое, что я сделал, — стал читать, какие проблемы с Linux могут проявиться на моём ноутбуке. О чём речь? Например, macOS нельзя поставить никуда, кроме MacBook (хотя некоторые умудряются инсталлировать так называемый «Хакинтош»). Похожая ситуация и с Linux: его лучше ставить только на те ноутбуки, у которых нет проблем с драйверами, — и до сих пор существует железо, на котором с драйверами придётся повозиться. Если говорить о процессорах, то лучше всего Linux дружит с AMD.
Учтите: хороший ноутбук с полноценной поддержкой Linux порой стоит сопоставимо с MacBook.
Почитайте, что пишут про работу конкретной модели ноутбука с Linux на сайте производителя и профильных форумах. Если есть жалобы на то, что не получается завести звук, не работает веб-камера или тачпад, задумайтесь — а точно ли вам так нужен этот переход и сможете ли вы работать с этим конкретным ноутбуком в принципе.
И ещё одно предупреждение: обычно при установке Linux всегда чего-то не хватает — приходится это искать, качать и даже собирать из исходников. Например, если официальный драйвер работает некорректно, надо будет поискать его исходный код или даже написать драйвер самостоятельно.
Шаг №2
Перенести данные и вкладки браузеров
Фотки, мемы, видео, документы — всё нужное, родное и близкое. Перед тем как начать перенос данных с Windows на Linux, нужно точно разобраться, где и что хранится.
Все файлики, приложения, проекты, созданные вами, рекомендую всегда держать в одном определённом месте — так вы точно ничего не забудете и не потеряете. Это та часть, которую всегда легко перенести и которая никак не зависит от типа операционной системы.
В идеале эти данные лучше хранить не на жёстком диске ноутбука или компьютера, а в облаке, отдельном хранилище или на внешнем диске. Ещё хорошая практика — объединить несколько пунктов этого списка. Такой подход к хранению позволит в принципе не бояться отказа операционной системы или выхода диска из строя.
Вкладки браузеров экспортировать довольно просто. Например, недавно я обновлял elementary OS (ну как обновлял — переустанавливал): чтобы перенести профиль Google Chrome, достаточно было скопировать папку с профилем пользователя. Большая часть моих конфигураций была доступна сразу после переустановки.
В Linux есть хорошая практика — при установке системы помещать на отдельный диск пользовательскую папку, которая называется Home. При переустановке системы директория Home не трогается, но в ней остаётся весь мусор, с прошлой установки. Сама система в корне другая, но все пользовательские файлы вашего профиля остаются в Home. Если вы используете KDE, при обновлении KDE не сильно меняется — какие-то базовые настройки сохранятся. Но всегда есть риски, что новая версия KDE работает не так и смотрит не на те переменные. Это базовый вариант, когда профиль сохраняется и подключается к новой системе. Вы устанавливаете PyCharm, а у вас уже есть все папки с проектами.
Данные так или иначе переносятся, а вот с файлами Word могут быть проблемы. То, что заточено под конкретную операционную систему, всегда будет болью для любого переезда на другую ОС. Макросы или разметка документов отличаются, потому что Microsoft пока не использует формат OpenDocument. Но это особенность экосистем: в рамках экосистемы всё неплохо работает и переносится — именно поэтому есть смысл, если телефон на Android, использовать Chromebook, ведь там есть интеграция с сервисами Google.
Шаг №3
Перенести приложения и ключи
Данные приложений и сами приложения, настройки системы нельзя полностью перенести с одной ОС на другую — это будет сложно и точно не на 100%. Ведь даже при переходе между двумя устройствами с одной операционкой на борту абсолютно все настройки не перенести — что-то придётся заново конфигурировать вручную. Скорее всего, вам удастся перенести только данные и конфигурацию отдельных приложений — да и то не всех, потому что логика работы некоторых программ сильно зависит от ОС.
При переходе с Windows на Linux надо проверять, насколько ваши приложения в принципе поддерживаются в новой ОС — и есть ли у них вообще версии для Linux. Даже если вместо Photoshop и Corel вы уже использовали кросс-платформенные GIMP с Inkscape, части настроек вы лишитесь. А у того же Lightworks переменные окружения в Windows и Linux могут сильно отличаться — то есть настройки придётся делать заново. В LibreOffice можно перенести готовые шаблоны и макросы.
Некоторые программы вообще не портированы под Linux (те же Sony Vegas или Adobe Premiere) — хотя вы всегда можете попробовать запустить их с помощью эмулятора Wine. Правда, для этого понадобится немало свободного времени.
Когда несколько лет назад я переходил с Linux на Windows, то сразу решил использовать кросс-платформенные приложения типа Lightworks. Потому что знал: если надо будет работать под Linux, я просто перенесу все свои проекты.
Например, вместо популярного Lightroom можно поставить кросс-платформенный Darkroom. Он тоже позволяет работать с фотографиями в RAW-формате — хотя, конечно, он не настолько удобный и приятный в работе, как продукт Adobe. В общем, если есть вероятность, что придётся переходить на Linux — лучше сразу поставить кросс-платформенное ПО.
Важно: не забудьте перенести ключи SSH для всех своих виртуалок и приложений (если они у вас есть). И первое время не стоит форматировать раздел с Windows — вдруг вы что-то забыли и вам это вдруг понадобится.
Просмотрщик фотографий точно не перенесётся, потому что пути сменятся. Базу нужно закэшировать заново — это не большая проблема, но она есть. Нужно также посмотреть основные приложения, в которых вы работаете, посмотреть переносимость. После этого нужно сделать перечень приложений, которые в теории могут быть портированы на другую систему, но для них тоже надо будет менять пути.
Шаг №4
Перенести инструменты разработки
Нужно перенести важные для работы приложения. Например, для разработчика это могут быть VS Code, GoLand, IntelliJ IDEA, PyCharm. У JetBrains много продуктов, и все они — кросс-платформенные, их несложно перенести с Windows на Linux, а на официальном сайте VS Code есть гайд для установки под Linux.
В Linux и Windows разные файловые пути, поэтому если конфигурация текстовая и в ней можно поменять пути к модулям, файлам, библиотекам — значит, можно подправить конфигурацию и сохранить настройки. Если нет — тогда нужно посмотреть, какие варианты есть, как их переносить.
С фреймворками тоже обычно больших проблем не возникает: даже .NET и PowerShell поднимаются под Linux. Однако некоторые неудобства будут — не все функции .NET и PowerShell в Linux и Windows реализованы одинаково. Я тестировал их на прошлой работе — в целом работает нормально, хотя команды немного отличаются: например, где-то будет меньше доступных параметров, потому что это всё-таки не родной для Linux язык. Как по мне, ставить PowerShell на Linux — это несколько порнографично. Правда, иногда без этого не обойтись.
Заключение
Сколько я телефонов ни менял, переход на новую модель — это всего одно действие, когда ты совмещаешь два телефона, и у тебя всё подтягивается, вплоть до приложений и известных Wi-Fi-сетей. Но попробуйте так сделать с Android и iPhone — ничего не получится.