Поиск по сайту:

Найдите сведения о системе Linux с помощью Python

Python - один из популярных языков программирования. Он по умолчанию предустановлен во многих операционных системах Linux. Знаете ли вы, что мы можем найти информацию о системе Linux, используя Python? Да! В этом кратком руководстве объясняется, как найти сведения о системе Linux с помощью Python. В Python есть модуль с именем Платформа, который позволяет нам находить различную системную информацию, такую как версия ОС, название дистрибутива, архитектура машины, ядро, кодовое имя ОС, версия Python и т. д.

Найдите сведения о системе Linux с помощью Python

Как указано выше, большинство дистрибутивов Linux по умолчанию поставляется с Python. Если он еще не установлен, вы можете установить его с помощью менеджера пакетов дистрибутива. Здесь я включил шаги по установке последней версии Python 3.6.x в некоторых дистрибутивах Linux.

В Arch Linux и его вариантах:

sudo pacman -S python

В Федоре:

sudo dnf install python36

В CentOS 7 мы можем установить Python 3.6 из репозитория IUM (встроенный в Upstream Stable), как показано ниже.

sudo yum install https://centos7.iuscommunity.org/ius-release.rpm
sudo yum install python36u

В Ubuntu 17.10 и более поздних версиях по умолчанию доступен Python 3.6. Так что не заморачивайтесь с установкой.

В Ubuntu 16.10 и 17.04 Python3 доступен в репозитории [Universe]. Убедитесь, что вы включили репозиторий [Universe] и установили Python 3.6, как показано ниже.

sudo add-apt-repository universe
sudo apt-get install python3.6

В Ubuntu 14.04 или 16.04 Python 3 недоступен в репозитории Universe. Итак, используйте следующий PPA для установки Python 3.

sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt-get update
sudo apt-get install python3.6

После установки Python проверьте его версию с помощью команды:

python3 --version

Или,

python3.6 -V

Вы можете увидеть результат, подобный приведенному ниже.

Python 3.6.8

Теперь пришло время узнать, на какой ОС мы работаем.

Отображение названия, версии и кодового названия ОС:

python3 -c 'import platform; print(platform.linux_distribution())'

Если в вашей системе установлен Python 2.x, просто используйте:

python -c 'import platform; print(platform.linux_distribution())'

Пример вывода Ubuntu 18.04 Desktop:

('Ubuntu', '18.04', 'bionic')

Показать архитектуру машины:

python3 -c 'import platform; print(platform.architecture())'
('64bit', 'ELF')

Показать тип машины:

python3 -c 'import platform; print(platform.machine())'
x86_64

Отображение сетевого имени компьютера:

python3 -c 'import platform; print(platform.node())'
ostechnix

Показать базовую платформу:

python3 -c 'import platform; print(platform.platform())'
Linux-5.0.0-32-generic-x86_64-with-Ubuntu-18.04-bionic

Имя процессора дисплея:

python3 -c 'import platform; print(platform.processor())'
x86_64

Показать сведения о выпуске системы:

python3 -c 'import platform; print(platform.release())'
5.0.0-32-generic

Отображение имени системы/ОС:

python3 -c 'import platform; print(platform.system())'
Linux

Показать версию системы:

python3 -c 'import platform; print(platform.version())'
#34~18.04.2-Ubuntu SMP Thu Oct 10 10:36:02 UTC 2019

Отображение всех сведений, таких как система, узел, выпуск, версия, компьютер и процессор

python3 -c 'import platform; print(platform.uname())'
uname_result(system='Linux', node='ostechnix', release='5.0.0-32-generic', version='#34~18.04.2-Ubuntu SMP Thu Oct 10 10:36:02 UTC 2019', machine='x86_64', processor='x86_64')

Это эквивалентно команде «uname -a».

Как я уже упоминал ранее, мы также можем получить установленную версию Python.

Для Python 2.x запустите:

python -c 'import platform; print(platform.python_version())'
2.7.15+

Для Python 3.x:

python3 -c 'import platform; print(platform.python_version())'
3.6.8

Создайте простой скрипт Python для отображения сведений о системе Linux.

Мы можем создать простой скрипт Python для отображения информации о системе Linux, объединив все функции в текстовый файл и просмотрев полную информацию за один раз.

Давайте создадим текстовый файл с именем os_info.py:

nano os_info.py

Добавьте следующие строки:

import platform

print('Uname:', platform.uname())

print()
print('Distribution :', platform.linux_distribution())
print('Machine :', platform.machine())
print('Node :', platform.node())
print('Processor :', platform.processor())
print('Release :', platform.release())
print('System :', platform.system())
print('Version :', platform.version())
print('Platform :', platform.platform())

Сохраните и выйдите из файла.

Теперь выполните следующую команду, чтобы найти информацию о вашей системе Linux:

python os_info.py

Или,

python3 os_info.py

Пример вывода будет:

Uname: uname_result(system='Linux', node='ostechnix', release='5.0.0-32-generic', version='#34~18.04.2-Ubuntu SMP Thu Oct 10 10:36:02 UTC 2019', machine='x86_64', processor='x86_64')

Distribution : ('Ubuntu', '18.04', 'bionic')
Machine : x86_64
Node : ostechnix
Processor : x86_64
Release : 5.0.0-32-generic
System : Linux
Version : #34~18.04.2-Ubuntu SMP Thu Oct 10 10:36:02 UTC 2019
Platform : Linux-5.0.0-32-generic-x86_64-with-Ubuntu-18.04-bionic

Все приведенные выше команды были протестированы с использованием Python 3.6.8 в настольной версии Ubuntu 18.04.

Найдите сведения о системе Linux с помощью Python 3.8.0.

Обратите внимание, что функция platform.linux_distribution() устарела, начиная с версии 3.5, и будет удалена в версии 3.8. Если вы используете самую последнюю версию Python, то есть 3.8.0, вам необходимо использовать альтернативу, например пакет дистрибутив.

Вы можете установить дистрибутив с помощью PiP.

pip install distro

После установки дистрибутива просто запустите следующую команду, чтобы узнать, на какой ОС вы работаете:

distro

Пример вывода:

Name: Ubuntu 18.04.2 LTS
Version: 18.04 (bionic)
Codename: bionic

Чтобы отобразить более подробную информацию, используйте флаг -j:

distro -j

Пример вывода:

{
    "codename": "bionic",
    "id": "ubuntu",
    "like": "debian",
    "version": "18.04",
    "version_parts": {
        "build_number": "",
        "major": "18",
        "minor": "04"
    }
}

Существует также множество других способов и приложений для поиска сведений о машине с Linux. Мы уже рассмотрели некоторые из них и связали их здесь для вашего удобства.

  • Как найти сведения о системе Linux с помощью inxi
  • Neofetch - отображение информации о системе Linux в терминале
  • Найдите имя, версию и информацию о ядре дистрибутива Linux
  • Как найти характеристики оборудования в Linux

Надеюсь это поможет.

Ресурс:

  • Модуль платформы Python

Статьи по данной тематике