На каком дистрибутиве Linux основан Amazon Linux AMI?

47

Amazon Web Services (AWS) предлагает официально поддерживаемый образ машины Amazon (AMI), но он не указывает, на каком дистрибутиве Linux он основан.

Официальный Amazon Linux AMI основан на другом дистрибутиве Linux, и если да, то какой именно?

Тревор Салливан
источник
5
Amazon Linux относительно плохо документирован. Поскольку эта информация в некоторой степени основана на Centos, иногда она работает, но информации намного меньше, чем, скажем, в Ubuntu. Мои прод-серверы работают на AL, но в следующий раз я бы использовал Ubuntu LTS.
Тим

Ответы:

19

На форумах AWS есть дискуссионная ветка, в которой говорится, что официально поддерживаемый Amazon Linux AMI не основан ни на одном дистрибутиве Linux. Скорее, Amazon Linux AMI является независимым образом поддерживаемым образом Amazon.

Тревор Салливан
источник
7
IIRC это началось как модификация RHEL / CentOS. Он достаточно изменился, и теперь вы, вероятно, можете называть его отдельным дистрибутивом, но он сохраняет большую часть своего наследия - yumи т. Д. Google.com/search?q=amazon+linux+centos Вы заметите, что в вашей связанной ветке форума AWS говорится The Amazon Linux AMI is based on RHEL 5.x and parts of RHEL6.но это было еще в 2010 году. совсем недавно они заявили one of the goals of the most current Amazon Linux AMI (2013.09) is to be as compatible as possible with RHEL 6.
ceejayoz
14
@ceejayoz В 2016 году этой цели давно нет. Amazon Linux давно не был совместим с RHEL. Действительно, здесь у нас есть как минимум сотни вопросов от людей, пытающихся использовать пакеты для RHEL / CentOS в Amazon Linux, и они не работают именно по этой причине.
Майкл Хэмптон
@MichaelHampton 2013 отмечает окончание моего опыта работы с Amazon Linux, поэтому я с вами :-)
ceejayoz
Обсуждение, о котором идет речь, существует уже много лет, и даже в самом последнем комментарии (2013 г.) говорится: «Одна из целей самого современного Amazon Linux AMI (2013.09) - обеспечить максимально возможную совместимость с RHEL 6. Если есть места в котором вы обнаружите, что мы не являемся, пожалуйста, дайте нам знать, чтобы мы могли продолжить расследование ".
Jeffmcneill
Лучше всего Guess использует uname -a возвращает ядро ​​"amzn1" - centos6, "amzn2" - centos7; Уведомление 4.14.97-74.72.amzn1.x86_64 # 1 SMP Вт 5 февраля 20:59:30 UTC 2019 x86_64 x86_64 x86_64 GNU / Linux
wwright
6

Похоже, он основан на RHEL:

$ cat /etc/os-release
NAME="Amazon Linux AMI"
VERSION="2017.09"
ID="amzn"
ID_LIKE="rhel fedora"
VERSION_ID="2017.09"
PRETTY_NAME="Amazon Linux AMI 2017.09"
ANSI_COLOR="0;33"
CPE_NAME="cpe:/o:amazon:linux:2017.09:ga"
HOME_URL="http://aws.amazon.com/amazon-linux-ami/"

freedesktop говорит о "ID_LIKE":

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

перечисляя один или несколько идентификаторов ОС, локальная ОС является производной от

Если вы посмотрите на RHEL / CentOS7, этот файл будет выглядеть так:

$ cat /etc/os-release
...
ID_LIKE="fedora"
...

И, тем не менее, Amazon Linux все еще функционирует, yumи его не dnfвидно; странно. Предположение заставляет меня поддержать теорию о том, что у Amazon есть соглашение о поддержке с RH.

То, что он основан на RHEL 5/6, кажется крайне маловероятным.

  1. Никто не должен использовать RHEL5x, потому что
  2. За последние 10 лет появилось слишком много драйверов и обновлений безопасности.

Это было бы и лениво и глупо; 2 вещи, которые я бы не приписывал инженерам Amazon. Один из способов определить это - изолировать что-либо, присутствующее только в последней версии RHEL7, драйвер, исправление безопасности ядра и т. Д., И запустить тот же тест в Amazon Linux; это либо присутствует, либо нет.

Хотя это гораздо менее безответственно, нет никаких веских причин даже использовать RHEL6x.

todd_dsm
источник
1
Проверка моего изображения показывает, что он использует upstart в качестве init по умолчанию, поэтому в качестве основы будет указан RHEL6 (так как RHEL7 использует systemd).
Жюль
Я нигде не проверял и не замечал выскочку. Возможно, ты прав. Я полностью пропустил RHEL6, находясь в другой компании, которая поддерживала только suse.
todd_dsm
5

Основываясь на файловой структуре, где вместо / usr / local / bin / composer я должен использовать / usr / bin / composer, это CentOS 7

Евгений Афанасьев
источник
7
AMI - это, безусловно, CentOS 6.x, а Amazon Linux 2 - это CentOS 7.x.
Jeffmcneill