Як перевірити версію CentOS: Повний посібник (Усі методи)
Знання точної версії CentOS, яка працює на вашому сервері, є фундаментальною навичкою для будь-якого системного адміністратора. Чи встановлюєте ви сумісні пакети програмного забезпечення, усуваєте проблеми системи, плануєте міграцію ОС або керуєте оновленнями безпеки, наявність точної інформації про версію є критичною. На щастя, CentOS надає кілька надійних команд для отримання цих даних — і цей посібник детально охоплює кожну з них.
Чому перевірка версії CentOS має значення
Перш ніж переходити до команд, варто зрозуміти, *чому* обізнаність про версію настільки важлива в виробничих середовищах:
- Сумісність програмного забезпечення: Багато пакетів і залежностей пов’язані з конкретними основними або мінорними версіями CentOS.
- Патчування безпеки: Знання вашої версії допомагає визначити, які CVE застосовуються до вашої системи та які патчі доступні.
- Планування завершення підтримки: CentOS 8 досягнув кінця життя 31 грудня 2021 року. Якщо ви все ще його використовуєте, вам потрібно це знати — і спланувати міграцію.
- Підтримка та усунення неполадок: При відкритті квитка підтримки або консультації документації інформація про версію завжди є однією з перших запитаних речей.
Якщо ви запускаєте середовище VPS Hosting або Dedicated Server, відстеження версії вашої ОС є невід’ємною частиною відповідального управління сервером.
Метод 1: Використання команди cat для читання /etc/centos-release
Це найшвидший і найпростіший метод. CentOS зберігає інформацію про версію у спеціальному файлі випуску, розташованому в /etc/centos-release.
Команда:
cat /etc/centos-releaseПриклад виходу:
CentOS Linux release 8.5.2111 (Core)Цей один рядок дає вам повний рядок версії, включаючи основну версію (8), мінорну версію (5.2111), і тег збірки (Final). Це команда за замовчуванням для швидкої, зрозумілої для людини перевірки версії і працює практично на кожній інсталяції CentOS без будь-яких додаткових пакетів.
Метод 2: Використання hostnamectl для деталей системи та ОС
Команда hostnamectl є утилітою systemd, яка надає ширший огляд вашої системи, включаючи назву операційної системи, версію та ядро. Вона особливо корисна на CentOS 7 і CentOS 8, які обидві базуються на systemd.
Команда:
hostnamectlПриклад виходу:
Static hostname: myserver.example.com
Icon name: computer-vm
Chassis: vm
Machine ID: a1b2c3d4e5f6...
Boot ID: f6e5d4c3b2a1...
Virtualization: kvm
Operating System: CentOS Linux 8 (Core)
CPE OS Name: cpe:/o:centos:centos:8
Kernel: Linux 4.18.0-305.el8.x86_64
Architecture: x86-64Зосередьтеся на рядках Operating System та Kernel. Цей метод особливо цінний, коли вам потрібна як версія ОС, так і версія ядра в одній команді, що робить його ідеальним для швидких аудитів системи.
Метод 3: Запит до бази даних пакетів RPM
Оскільки CentOS є дистрибутивом на основі RPM, інформація про версію також вбудована в встановлений пакет RPM під назвою centos-release. Ви можете запитати його безпосередньо, використовуючи команду rpm.
Команда:
rpm -q centos-releaseПриклад виходу:
centos-release-8.5-4.2111.el8.x86_64Цей вихід особливо точний — він розкриває точну версію пакета випуску, включаючи архітектуру (x86_64). Цей метод корисний у сценаріях скриптування, де вам потрібен рядок, придатний для машинної обробки, або ви хочете перевірити цілісність самого пакета випуску.
Метод 4: Читання /etc/os-release для детальної інформації про дистрибутив
Файл /etc/os-release є стандартизованим файлом, присутнім практично на всіх сучасних дистрибутивах Linux. Він надає структуровану інформацію у форматі ключ-значення про ОС і широко використовується скриптами, інструментами управління конфігурацією (як Ansible або Puppet) та контейнерними середовищами виконання.
Команда:
cat /etc/os-releaseПриклад виходу:
NAME="CentOS Linux"
VERSION="8 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="8"
PLATFORM_ID="platform:el8"
PRETTY_NAME="CentOS Linux 8 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:8"
HOME_URL="https://centos.org/"
BUG_REPORT_URL="https://bugzilla.redhat.com/"Це найбільш інформативний метод і є переважним підходом для автоматизації. Поле VERSION_ID, наприклад, можна легко витягти в shell-скриптах, використовуючи інструменти як grep або awk:
grep VERSION_ID /etc/os-releaseВихід:
VERSION_ID="8"Метод 5: Використання lsb_release (Linux Standard Base)
Команда lsb_release є частиною специфікації Linux Standard Base і надає дані ідентифікації дистрибутива. На CentOS вона може бути не встановлена за замовчуванням, але її можна легко додати.
Перевірте, чи вона доступна:
lsb_release -aЯкщо не встановлена, додайте її за допомогою:
sudo yum install -y redhat-lsb-coreПриклад виходу після встановлення:
LSB Version: :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description: CentOS Linux release 8.5.2111 (Core)
Release: 8.5.2111
Codename: CoreХоча цей метод вимагає додаткового пакета, структурований вихід (особливо поле DISTRIB_RELEASE) корисний для скриптів, які повинні залишатися сумісними з кількома дистрибутивами Linux.
Метод 6: Перевірка версії ядра за допомогою uname
Команда uname повідомляє інформацію про ядро. Хоча вона не повідомляє безпосередньо версію CentOS, рядок версії ядра тісно пов’язаний з конкретними випусками CentOS і може використовуватися для перехресного посилання на версію ОС, коли файли випуску недоступні або пошкоджені.
Команда:
uname -rПриклад виходу:
4.18.0-305.el8.x86_64Тег el8 у рядку ядра підтверджує, що це система CentOS/RHEL 8. Для більш повного огляду системи використовуйте:
uname -aЦе особливо корисно в мінімальних образах контейнерів або середовищах chroot, де /etc/os-release може бути відсутнім.
Швидкий довідник: усі команди з одного погляду
Ось консолідований підсумок усіх методів, розглянутих у цьому посібнику:
| Команда | Що вона показує | Вимагає додаткового пакета? |
|---|---|---|
cat /etc/centos-release | Повний рядок версії | Ні |
hostnamectl | Назва ОС, версія, ядро | Ні (потрібен systemd) |
rpm -q centos-release | Точний пакет випуску RPM | Ні |
cat /etc/os-release | Структуровані метадані ОС | Ні |
lsb_release -a | Інформація про дистрибутив LSB | Так (redhat-lsb-core) |
uname -r | Версія ядра | Ні |
Бонус: програмне витягування версії
Якщо ви пишете shell-скрипт або використовуєте інструмент управління конфігурацією, ви можете захотіти витягти лише номер версії чисто. Ось два практичні однорядкові варіанти:
Витягніть лише основну версію:
rpm -q --queryformat '%{VERSION}' centos-releaseВикористання grep на файлі випуску:
awk '{print $4}' /etc/centos-releaseЦі підходи особливо корисні в автоматизованих скриптах підготовки на VPS Control Panels або при розгортанні додатків на кількох серверах.
Розгляд завершення підтримки версії CentOS
Важливо зазначити поточний статус підтримки версій CentOS:
- CentOS 6: Кінець життя — 30 листопада 2020 року
- CentOS 7: Кінець життя — 30 червня 2024 року
- CentOS 8: Кінець життя — 31 грудня 2021 року
- CentOS Stream 8/9: Безперервний випуск, активно підтримується
