В чем разница между Linux-дистрибутивами LTS и Rolling Release?
Существуют множество различных дистрибутивов Linux, каждый из которых обладает уникальными характеристиками, и понять и сориентироваться в этой вселенной вариантов может быть крайне сложно, если не посвятить некоторое время изучению, что, конечно же, требует времени, которым располагает далеко не каждый.
Незнание разницы между LTS, Rolling Release и другими существующими типами систем может стать серьезной проблемой, когда неправильный выбор может привести к плохому опыту, а также ограничить ваши возможности выбора.
Что такое LTS-дистрибутив Linux?
Многие люди, которые только начинают знакомиться с миром Linux, слышали термин «LTS» в связке с Ubuntu, но он не связан с этой системой напрямую.
LTS - это термин, используемый на рынке программного обеспечения в целом. LTS - это аббревиатура от «Long-Term Support».
Вы можете подумать о нем, как о некотором особом типе программного обеспечения, предназначенного для поддержки в течение более длительного периода, чем обычно. Именно так обстоит дело с Ubuntu LTS, выпуском системы, который выходит каждые два года и имеет первоначальную поддержку в течение 5 лет, которая может быть продлена до 12 лет, в отличие от других, не LTS-выпусков Ubuntu, которые имеют поддержку только в течение 9 месяцев. Но что именно означает «поддержка» в данном случае?
Программное обеспечение LTS получает обновления безопасности и исправления ошибок в течение длительного периода времени, даже после выпуска новых версий. Это означает, что пользователи могут быть уверены в том, что программное обеспечение будет оставаться стабильным и безопасным в течение длительного времени.
Как известно, разработка программного обеспечения никогда не заканчивается, даже после его выпуска разработчики продолжают исправлять ошибки, применять патчи безопасности и полировать.
Нетрудно понять, почему программное обеспечение с поддержкой LTS является востребованным на рынке, особенно компаниям и организациям, которым нужна стабильная и надежная вычислительная среда в долгосрочной перспективе. Программное обеспечение с поддержкой LTS максимально приближено к предсказуемости.
Теоретически, LTS-версии программного обеспечения разработаны как более надежные, с меньшим количеством ошибок и проблем, чем обычные версии. Они дольше защищены от проблем безопасности, не вынуждая вас обновляться или переходить на новое решение, чтобы оставаться в безопасности.
Хотя обновления существуют и в программном обеспечении LTS, они обычно менее инвазивны и ставят во главу угла стабильность и непрерывность работы, что, например, может сократить время простоя компании. В случае с Ubuntu под зонтик LTS попадает не только дистрибутив, который вы устанавливаете, но и большая часть репозитория пакетов системы.
Итак, представьте, что вы создаете бизнес, в котором ваше программное обеспечение отлично работает на Ubuntu 24.04 LTS. Учитывая стандартные 5 лет, плюс дополнительные 5 лет Ubuntu PRO, плюс дополнительные 2 года по специальной оплате, вы сможете работать на нем 12 лет, до 2036 года, без необходимости кардинально обновлять операционную систему. Она будет оставаться безопасной, и со временем ошибки будут исправляться, а система полироваться, становясь все более и более стабильной. Любопытно, что если вы зайдете на сайт Linux Kernel, то заметите, что рядом с номерами версий есть «долгосрочные» ядра, они же LTS, и поддержка в этом случае осуществляется самой командой Linux.
Время поддержки варьируется в зависимости от версии, раньше они поддерживались 6 лет, а последние версии - только 3 года. Интересно также отметить, что ядро 6.8 не является LTS-версией по версии разработчиков Linux, но именно это ядро содержится в Ubuntu 24.04 LTS, и долгосрочную поддержку для него обеспечивает Canonical.
Как работают дистрибутивы Rolling Release?
Rolling Release - это, по сути, противоположность модели выпуска Ubuntu, не связанная с LTS, а имеющая отношение к тому, как разрабатывается программное обеспечение и как обновления доходят до пользователей.
Непрерывный выпуск - это модель разработки программного обеспечения, при которой обновления производятся часто и постепенно, а не выпускаются большими циклами с особыми нумерованными версиями. Это означает, что пользователи всегда используют последнюю версию программного обеспечения, с последними исправлениями ошибок и функциями.
Отличным примером программ со скользящим выпуском являются основные веб-браузеры. Например, Google Chrome получает постоянные обновления каждые 2-3 недели, а основные обновления - каждые 4, по крайней мере, в стабильном канале. Это приветствуется для такого программного обеспечения, поскольку оно постоянно находится в контакте с Интернетом и может быстро стать вектором атаки, если исправления не будут постоянными.
В конце концов выходят большие обновления, которые приносят новые функции, но они выполняют скорее маркетинговую функцию, чем функцию разработки. В конце концов, это непрерывный цикл, и если у вас установлен Chrome, вы просто продолжаете его обновлять, возможно, даже не осознавая этого. Rolling Release - это модель выпуска, при которой у программного обеспечения никогда не бывает финальной версии, оно просто постоянно обновляется.
Когда речь заходит о дистрибутивах Linux, Arch Linux, вероятно, является самым известным примером из всех. Версий Arch Linux не существует, в общем понимании этого слова, Так что вы никогда не увидите заголовков типа «Вышла новая версия Arch Linux», именно потому, что они никогда не выпускают ее, вы устанавливаете ее один раз, и она просто продолжает обновляться.
Не все программы, входящие в состав операционной системы, ведут себя одинаково. Если вы установили Chrome на Ubuntu и установили Chrome на Arch, он будет обновляться с одинаковой скоростью на обеих системах.
Другие программы, например, рабочий стол GNOME, работают по-другому. В настоящее время Ubuntu 24.04 LTS выпущена с GNOME версии 46, тот же GNOME 46 можно использовать в Arch Linux. Однако Ubuntu 24.04 LTS, вероятно, продолжит использовать эту версию GNOME в течение всего срока службы, а на Arch Linux, как только выйдет GNOME 47, пользователи, скорее всего, должны получить это обновление одними из первых. То же самое касается практически всех пакетов в репозитории Arch Linux.
Rolling Release относится только к способу доставки обновлений, этот термин не относится к версии программного обеспечения. Если у вас есть постоянные обновления и вам не нужно переустанавливать или менять версию программного обеспечения для получения обновлений, это означает, что вы пользуетесь системой или программным обеспечением формата Rolling Release.
В чем разница между Rolling Release и Bleeding Edge в Linux?
Многие люди ассоциируют термин Rolling Release с постоянным использованием последних версий пакетов и технологий, скорее всего, потому, что это распространено в дистрибутивах Linux, но на самом деле это условие, когда все всегда очень актуально, называется Bleeding Edge.
Arch Linux - это Rolling Release и Bleeding Edge. Manjaro, известный Linux-дистрибутив, основанный на Arch, тоже Rolling Release, но это не Bleeding Edge, по крайней мере, не в такой мере, как сам Arch, поскольку в Manjaro обновления приходят примерно на 2-3 недели позже. SteamOS от Valve, основанная на Arch, является Rolling Release, но это тоже не Bleeding Edge, поскольку Valve сдерживает обновления и выпускает их только после более тщательного тестирования.
При разработке программного обеспечения, когда вы используете последние версии всего, вы всегда используете менее проверенное программное обеспечение, особенно если вы сравниваете его с LTS-версией какого-то программного обеспечения, которое уже отлаживалось в течение нескольких лет.
Такой подход имеет свои преимущества и недостатки: с одной стороны, вы получаете постоянно обновляемое программное обеспечение, быстрее получаете новые функции и быстрее исправляете некоторые ошибки. Обратной стороной является потенциальная нестабильность, поскольку у программы было меньше времени на тестирование: в то время как известные ошибки были закрыты, постоянные обновления могут привести к появлению новых ошибок.
Кроме того, у обновленных программ могут возникнуть проблемы с совместимостью с другими программами, которые еще не были обновлены. В отличие от LTS, здесь сложнее предсказать, как программа или система будет работать в долгосрочной перспективе, поскольку обновление может сломать то, что уже работало, оставив вас в затруднительном положении и потребовав дополнительного обслуживания или ручного вмешательства.
Гибридные системы Linux
Некоторым проектам выгодно получать обновления раньше, но в то время оставться как можно более стабильными и неизменными. Так рождаются гибридные модели, в которых некоторые части системы имеют фиксированные релизы или даже LTS, а другие - Rolling Release.
Вы можете иметь Ubuntu Server LTS с 12-летней поддержкой, на котором работает Docker-контейнер с любым программным обеспечением с постоянными обновлениями, или Ubuntu Desktop с 10-летней поддержкой, на котором Firefox в Snap будет выпускаться в режиме rolling release.
Valve выигрывает от постоянных обновлений Arch Linux, чтобы иметь доступ к новинкам и выбирать, что и когда появится в SteamOS. Например, Plasma 6 еще не добралась до рабочего стола SteamOS, но новые видеодрайверы уже добрались. И даже при установке Arch Linux вы можете выбрать использование ядра LTS Linux вместо Bleeding Edge, создавая гибридную систему.
Различные типы Rolling Release и LTS
Не все Rolling Release или LTS одинаковы, на разных системах они могут означать что-то разное, а фиксированные релизы могут иметь разное время поддержки в каждом проекте. Версия Ubuntu без LTS поддерживается 9 месяцев, релиз Fedora - 1 год, Ubuntu выпускает LTS каждые 2 года, у Fedora нет LTS-версии, если только вы не считаете Red Hat Enterprise Linux LTS-версией Fedora.
При таком количестве вариантов, деталей и различий неизбежно возникает вопрос, что же будет лучшим вариантом? Есть ли какой-то один тип дистрибутива или модель программного обеспечения, которая лучше всего подходит? Какую из них следует использовать? Все сводится к вкусу и потребностям, и у всего есть свои плюсы и минусы.
В системе LTS вы имеете более стабильную программную базу, но она дольше остается в одной и той же версии, даже если выходят новые релизы. В системе «Rolling Release Bleeding Edge» вы будете получать обновления раньше, что даст вам доступ к новым технологиям и функциям, но вам также придется столкнуться с ошибками и регрессиями, которые могут возникнуть в недавно выпущенном программном обеспечении, которое отлаживалось меньше времени по сравнению с версиями LTS, которые не будут иметь этих новых функций, но будут более стабильными.