Найдите сведения о системе 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