Ответ
Основной и современный файл — /etc/os-release. Он является частью стандарта systemd и используется большинством дистрибутивов.
Пример его содержимого для Ubuntu:
$ cat /etc/os-release
NAME="Ubuntu"
VERSION="22.04.3 LTS (Jammy Jellyfish)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 22.04.3 LTS"
VERSION_ID="22.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy
Альтернативные источники:
lsb_release -a— команда, которая также читает данные из/etc/os-releaseили/etc/lsb-release./etc/*-release— устаревшие файлы, например/etc/redhat-releaseв RHEL/CentOS.hostnamectl— команда systemd, показывающая информацию об ОС среди прочего.