[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Определить codename дистрибутива



Коллеги, подскажите наиболее красивый способ определить codename
дистрибутива (на предмет шелловской команды, добавляющей строчку в
sources.list).

В большинстве хаутушек рекомендуют использование lsb_release -c.

Но, пакет lsb-release в Debian не является essential. И если он обычно
присутствует на рабочих станциях, где стоит какой-нибудь desktop
environment, то на серверной системе его запросто может не быть.

Например, его  нет в свежепоставленном с помощью lxc-create контейнере.
Hetzner продает kvm-виртуалки с Debian, на которых этот пакет
изначально тоже не стоит.

В принципе, в base-files входит файл /etc/os-release, откуда codename в
принципе извлекается. Но там нет отдельной переменной с codename,
поэтому получается что-то вроде

   . /etc/os-release
   CODENAME=`echo $VERSION|sed -e 's/^.*(//' -e 's/)//'`

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


Reply to: