Понимание различных дистрибутивов Linux

12

Я немного запутался при понимании ОС на основе Linux. Когда я загружаю новейшие версии Mint и Ubuntu, не являются ли они «одинаковыми» по своей сути (ядру)? Просто кажется, что у них разные GUI? Разве GUI технически не является просто программой, которая запускается при запуске компьютера? То же, что и в Windows (DOS - это ядро, но explorer.exe - это графический интерфейс). Кто-нибудь может объяснить это?

С помощью команды sudo apt-get я не могу установить Ubuntu из терминала mint?

Я знаю, что это беспорядок вопросов, но, надеюсь, кто-то сможет прояснить различия между несколькими дистрибутивами до появления GUI, а затем после появления GUI.

EGHDK
источник

Ответы:

10

Первое: Windows долгое время не была DOS GUI; Windows на базе NT (NT / 2000 / XP / Vista / 7/8) полностью независимы от DOS. explorer.exe также не GUI: это просто оболочка (вы также можете найти замену оболочек для Windows)

В основе всех дистрибутивов лежит ядро ​​Linux; Основные отличия (с точки зрения конечного пользователя - есть различия, например, в системах инициализации, файлах в /etcдругих местах) - между дистрибутивами:

  • управление пакетами

Ubuntu, Mint и все другие дистрибутивы на основе Debian используют dpkg / APT в качестве системы упаковки. Другие дистрибутивы будут использовать другие системы (например, Red Hat, Fedora, SuSE будет использовать RPM, Arch будет использовать pacman).

  • выбор пакетов

По сути, Mint - это Ubuntu с некоторыми дополнительными пакетами (например, кодеками, не включенными в Ubuntu по причинам, связанным с патентами и авторскими правами), и другой темой (для создания индивидуальной идентификации, а также для избежания вопросов о товарных знаках / плагиате и путаницы среди пользователей).

Конечно, вы можете установить любой другой графический интерфейс в Mint: вы можете использовать рабочую среду Mint ( Cinnamon ) в Ubuntu, и технически (реальность - другая история: вы, вероятно, столкнетесь с конфликтами пакетов), вы сможете установить визуальную идентификацию Unity и Ubuntu. (темы, иконки) в монетном дворе.

Итак, теоретически вы можете превратить вашу Ubuntu в систему Mint-ish, но на практике это довольно сложно сделать.


Согласно комментарию о разнице между «интерфейсом» и «оболочкой», что может вызвать некоторую путаницу:

В мире UNIX «оболочка» уже имеет определенное общепринятое значение :

Оболочка Unix - это интерпретатор командной строки или оболочка, которая обеспечивает традиционный пользовательский интерфейс для операционной системы Unix и для Unix-подобных систем.

Сравните с оболочкой Windows, которая совершенно другая вещь :

Оболочка Windows является основным графическим интерфейсом пользователя в Microsoft Windows. Оболочка Windows включает в себя хорошо известные компоненты Windows, такие как панель задач и меню «Пуск». Оболочка Windows - это не то же самое, что «оболочка командной строки», но эти два понятия взаимосвязаны.

В нашем случае мы назвали бы Cinnamon (или KDE, GNOME, Unity, XFCE) средой рабочего стола : набор приложений (оконный менеджер, панели, элементы панели уведомлений и т. Д.), Которые обеспечивают взаимодействие с пользователем.

Ренан
источник
Интерфейс Mint (Cinnamon), это «интерфейс» или больше «оболочка», о которой вы говорили?
EGHDK
В UNIX / Linux термин «интерфейс» более подходит для графических интерфейсов, поскольку «оболочка» уже имеет определенное значение (оболочка командной строки, например bashили zsh). Или вы можете назвать это «средой рабочего стола».
Ренан
Так терминал А это оболочка?
EGHDK
1
@EGHDK Не совсем: оболочка (в смысле UNIX) работает внутри терминала. Это объясняется в разделе Какова точная разница между терминалом, оболочкой, tty и консолью?
Ренан
Отлично. Вы ответили на все мои вопросы. Спасибо! Я очень ценю это.
EGHDK
8

Чтобы понять, в чем разница между дистрибутивами, возможно, вам следует еще раз взглянуть на дистрибутив.

Что такое дистрибутив

Вы, наверное, все это знаете, но подумайте еще раз. Linux это просто ядро. В большинстве случаев это совершенно бесполезно само по себе. Большая часть того, что он делает, это просто предоставляет программный интерфейс аппаратному обеспечению на вашей машине, чтобы другие программы использовали его. Распределение намного сложнее, чем это. Принять к сведению:

  • Выбор приложений и библиотек, специфичных для использования в дистрибутиве.
  • Инструменты для управления и обслуживания системы.
  • Документация и поддержка канала.
  • Цикл релиза и управление сообществом.

В дополнение к Linux добавлено много программных слоев для создания чего-то вроде Ubuntu или Mint, с бесконечными возможностями конфигурации и выбора.

Также следует учитывать характер редактора дистрибутива. Такие проекты, как Red Hat, SuSE или Ubuntu, служат бизнесу, а другие, такие как Mint, Debian или Gentoo, управляются добровольцами.

В чем разница между дистрибутивом и другим

Практически любое приложение, работающее в дистрибутиве, доступно (или легко переносимо) другому. В конце концов, все они очень похожи на системы Unix. Однако независимо от того, что вы делаете, вы не можете изменить цикл выпуска своего дистрибутива, скорость, с которой упаковываются новые версии, или просто внешний вид их официального форума. Может быть, пример покажет вам лучше:

Допустим, я с нетерпением жду новой версии моего программного обеспечения, например, Python-3.3, выход которого ожидается через несколько дней. Как это будет доступно для разных дистрибутивов:

  • Подвижной релиз дистрибутивы (например , Arch Linux или Gentoo) позволит быстро получить в своих хранилищах. Как только сопровождающий упаковывает его и запускает базовые тесты, он становится доступным.
  • Корпоративные дистрибутивы, вероятно, пообещают это для «будущих версий». В то же время он все еще доступен, но не будет ни на одном официальном канале.
  • Debian не сделает его доступным, пока он не будет тщательно протестирован, и этот процесс может занять годы. Однако это делает тестовый репозиторий очень легко доступным для общественности. (Например, Ubuntu создает свои версии из этого хранилища версий каждые 6 месяцев).

В чем реальная разница между Mint и Ubuntu.

Для справки, я должен отметить, что я не использовал Ubuntu более 2 лет и почти не использовал Mint несколько месяцев 4 года назад. То, что я здесь говорю, может быть не очень точным.

Разница между Mint и Ubuntu минимальна, ведь Mint полностью основан на Ubuntu. Первоначально Mint был просто переупаковкой Ubuntu с тремя отличиями:

  • Он предоставил проприетарные технологии при их установке по умолчанию (то, чего нет в Ubuntu).
  • Он предоставил несколько графических инструментов, таких как меню панели задач или установщик приложения, которые он исправил поверх базовой установки Ubuntu.
  • Это было более сфокусировано на эстетике. Его солган до сих пор - «Из свободы вышла элегантность».

Несколько лет назад раскол стал шире, поскольку Ubuntu пыталась продвинуть графическую среду Unity, сообщество Mint приняло большое участие в ее отклонении. Вот как появилась Корица.

Я никогда не пробовал, но я не удивлюсь, если кто-нибудь заставит Корицу работать на Ubuntu и Unity на Mint. Аргумент, который я пытаюсь привести:

Различия между дистрибутивами, такими как Mint и Ubuntu, гораздо больше связаны с сообществом и тонким выбором, чем с самим программным обеспечением.

дальнейшее чтение

rahmu
источник
Я не смог отредактировать ответ, потому что я хочу добавить только одно слово, а для редактирования требуется шесть символов .... Я хотел бы отметить, что вы, вероятно, пропустили слово в начале ответа, в нескольких строках внизу написано: «другие программы используют его» должно быть «другие программы canиспользуют его»
что-то что-то
5

Это хороший вопрос. Я понимаю, что теоретически вы могли бы, но это может работать не так, как ожидалось. Хотя Mint основан на Ubuntu, Ubuntu и Mint используют разные программные репозитории. Именно эти репозитории делают каждый дистрибутив уникальным. В любой настольной системе Mint или Ubuntu вы можете установить в репозитории все, что захотите. Итак, вы можете взять систему, установленную как Mint, и заменить все репозитории на Ubuntu. Затем, если вы переустановите все пакеты, вы получите Ubuntu. Тем не менее, Ubuntu и Mint вносят свои небольшие изменения в код (который, в свою очередь, основан на Debian). Итак, если пакеты Mint ожидают один набор настроек, а пакеты Ubuntu предоставляют совершенно другой набор настроек, то вы можете получить очень испорченную систему.

Даже некоторые из различных «версий» Ubuntu имеют действительно странные настройки в своем коде. Это связано с тем, что Canonical фокусируется на простоте использования, а не на правильности кода или совместимости. Недавно я попытался установить Xfce4 на серверную установку Ubuntu 13.04. Я закончил с полностью сломанной системой. Это был полный беспорядок. В итоге я установил обычную Ubuntu 13.04, а затем установил xfce поверх него. Все таинственно сработало. Некоторые меню и программы выглядели даже лучше, как будто они создавались с совершенно другим движком. Однако я использовал все те же файлы конфигурации и пакеты, которые я использовал при установке на сервер (и для установки Debian, которая безупречно работает на том же компьютере).

Это просто каноническая магия для вас. Если вы оставляете все так, как они предоставляют, то обычно это работает хорошо. Если вы прикоснетесь даже к малейшей вещи, то все может начать становиться действительно странным.

Джеймс Харрис
источник
Кстати, извините за публикацию на старом посте, но этот вопрос всплывает в верхней части некоторых поисковых запросов Google.
Джеймс Харрис
Добро пожаловать в Unix & Linux StackExchange! Ответы на старые вопросы здесь не осуждаются. Обязательно зайдите в FAQ .
4

Я бы сосредоточился на целях различных дистрибутивов, а не на деталях, таких как, какой менеджер пакетов они используют или какие версии программного обеспечения они в настоящее время поставляют. Хорошая цель может привести вас от нуля к лидеру рынка в своем пространстве, если вы к этому стремитесь (это Ubuntu, когда они запускались, но ранее также и Red Hat), и некоторые довольно фундаментальные технологические решения могут измениться, если это будет сочтено важным для цель (примером может служить настойчивость Ubuntu в Unity).

  • Red Hat: изначально, (в то время, чрезвычайно новый) коммерческий успех, предоставляя платные услуги пользователям вашего бесплатного продукта. Совсем недавно, действительно, взимать плату за этот продукт (не уверен, как выглядит видение сейчас). Крупная корпоративная клиентская база означает нежелание перемен - стабильность превосходит инновации.
  • Debian: свобода и портативность. «Универсальный» означает попытаться запустить на многих платформах; Сильный акцент на открытый исходный код означает, что все с закрытыми исходными компонентами является сомнительным. Стабильность важна, следовательно, довольно медленная и консервативная.
  • Fedora: изначально бесплатная версия Red Hat, как только она вышла в продажу. На практике похож на Debian в рвении с открытым исходным кодом, но с большей вероятностью попробует новые смелые вещи. Используется Red Hat в качестве испытательного стенда для новых разработок.
  • CentOS: Red Hat бесплатно.
  • Ubuntu: настольное доминирование. Простота использования (или, по крайней мере, простота знакомства) и стандартизированный набор приложений для привлечения широкой пользовательской базы. Усовершенствуйте медленные темпы Debian, сохранив фиксированный шестимесячный цикл выпуска, основанный на тестировании Debian.
  • Мята: Ubuntu без единства.
  • Arch: предоставить последнюю стабильную версию каждого вышестоящего пакета с минимальными издержками на дистрибутивную упаковку и т. Д., А также модель с непрерывным выпуском.
  • Slackware: будь простым и Unix-подобным, и уходи с дороги.
  • Gentoo: детальный контроль над локальной компиляцией пакетов на основе нового менеджера пакетов под названием emerge.

Этот список явно сокращен. Многие популярные дистрибутивы - это варианты, побочные продукты или вилки из вышеперечисленного. Список дистрибутивов Linux в Википедии является довольно полным и разумно структурированным. См. Также https://distrowatch.com/ для получения подробной информации, такой как текущая статистика популярности.

Важным следствием является управление ожиданиями. Дистрибутив, который фокусируется на универсальной совместимости и свободе, может относиться к юзабилити или совместимости с конкретной популярной в настоящее время гизмо менее серьезно, и наоборот. Дистрибутив, который фокусируется на малой занимаемой площади и производительности на устаревшем оборудовании, вероятно, не захочет вкладывать много усилий в такие приятные вещи, как анимированные настольные эффекты или сценарии использования, такие как редактирование видео, 3D-симуляции или фотореалистичные игры, которые выходят за рамки даже самых последних версий. поколение оборудования. Дистрибутив, целью которого является предоставление простого и унифицированного опыта для людей, которые плохо знакомы с компьютерами, не будет заботиться о том, работает ли в их системах драйвер ядра файловой системы. И т.п.

Это также должно дать ответ на ваш конкретный вопрос. Наверное, не так уж сложно заставить Unity работать на Mint, но почему вы предпочитаете это, а не просто запускать Ubuntu? Ясно, что можно запустить Ubuntu с Cinnamon, но в итоге вам придется заново изобретать Mint, и усилия, вероятно, будут значительными; иначе почему бы они выделили отдельный проект просто для того, чтобы это обеспечить? И это на самом деле иллюстрирует, как дистрибутив может расценивать конкретную часть политики или архитектуры как технически или стратегически достаточно критичную для того, чтобы он влиял на другие компоненты вверх и вниз по цепочке зависимостей нетривиальными способами, что, конечно, также означает, что для обхода требуются многие обходные пути. чтобы удалить его в любом случае.

И все же, это два тесно связанных дистрибутива; если вы пытаетесь портировать программное обеспечение между дистрибутивами, становится все труднее, чем дальше они находятся друг от друга с точки зрения целей, политик и вытекающих из этого архитектурных решений, а также общего наследия и инфраструктуры, таких как сети распространения пакетов, стандарты поддержки, например: аппаратная периферия или интернационализация и т. д.

tripleee
источник
Я как будто выдохся. Не стесняйтесь обновлять или добавлять к этому.
tripleee
Поскольку вы собираете все, вы также можете сослаться на дистрибутив Slackware, например Porteus.
Георгий
Я предполагаю, что openSUSE также должен быть в списке, но я не могу понять, есть ли у них какая-то цель, помимо "быть немцем".
tripleee
0

Дистрибутивы Linux - это намного больше, чем ядро. Это все приложения, которые работают поверх ядра (в том числе apt-get), включая многие вещи очень низкого уровня, такие как система инициализации. Фактически выбор используемых приложений является определяющим моментом для многих дистрибутивов.

Вы не можете установить Ubuntu из Mint так же, как вы можете отнести свой Cadilac в автомобильный магазин и попросить его превратить его в Porsche, но сохранить Cadilac в целости и сохранности. Они могут превратить ваш Cadilac в Porsche с большими усилиями и затратами: в конце концов, у них обоих одинаковые двигатели под капотом. Точно так же вы можете теоретически преобразовать установку Linux Mint в установку Ubuntu (не пытайтесь сделать это, это много усилий), но это два разных продукта. Установка одного в том же месте, что и другое, не имеет смысла или невозможно.

Мэтью Шарли
источник
0

В двух словах: то, что делает идентичность дистрибутива Linux, состоит из:

  • Конфигурация ядра: да: все дистрибутивы происходят из одного и того же исходного кода, но между исходным кодом и реальным двоичным файлом, работающим на компьютере, существует процесс компиляции, который включает в себя «настройку», то есть принятие решений.

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

  • Выбор программного обеспечения, создающего интерфейс, который вы, пользователь, будете использовать. Это где 99% кода дистрибутива идет. Еще раз все сводится к тому, какое программное обеспечение выбрано, как оно настроено и скомпилировано.

Все эти варианты скрыты от вас в дистрибутиве, так как они уже сделаны и «упакованы» для вас. Таким образом, дистрибутив Linux построен в надежде, что он подойдет большинству пользователей. Но побочным эффектом является то, что он не настроен для ваших нужд.

Если вы хотите узнать много нового о том, как создаются дистрибутивы Linux, я предлагаю вам попробовать создать свой собственный дистрибутив. Проект «Linux From Scratch» мне очень помог.

Винсент Ахард
источник