Как проверить, является ли система Linux 32-битной или 64-битной
Мы уже знали, как проверить, является ли система Linux физической или виртуальной машиной. Теперь пришло время выяснить, является ли установленная ОС Linux 32-битной или 64-битной. Если ваша система Linux имеет графический интерфейс, это действительно просто. Просто перейдите в Настройки системы -> Подробности, и все готово, вы узнаете архитектуру. В системах Linux на основе CLI все немного по-другому. В этом руководстве объясняется, как проверить, является ли система Linux 32-битной или 64-битной. Это не так уж и сложно. Читай дальше.
Обновление:
Большинство версий ОС Linux отказались от поддержки 32-битных версий. Итак, эта статья может оказаться полезной не для всех. Если у вас еще есть старое доброе оборудование с поддержкой 32-битной ОС, эта статья обязательно будет полезна.
Проверьте, является ли система Linux 32-битной или 64-битной
Может быть много способов узнать архитектуру вашей системы. Это только те методы, которые мне сейчас известны. Я буду продолжать обновлять это руководство, если найду какие-либо другие способы сделать это. Добавьте эту страницу в закладки и продолжайте посещать.
Способ 1. Использование команды uname
Мой предпочтительный способ узнать архитектуру системы Linux — использовать команду uname. Имя uname является частью GNU coreutils, которая отображает определенную системную информацию, такую как имя хоста, версия ядра, выпуск ядра, версия ОС, архитектура системы и т. д.
Чтобы узнать, является ли ваша система Linux 32-битной или 64-битной, просто запустите следующую команду из терминала:
uname -m
Или,
uname -i
Или,
uname -p
Пример вывода:
x86_64
Как вы видите выше, моя архитектура ОС Linux — 64-битная. Если вы хотите отобразить все детали, просто используйте флаг «-a».
uname -a
Пример вывода:
Linux sk 4.16.11-1-ARCH #1 SMP PREEMPT Tue May 22 21:40:27 UTC 2018 x86_64 GNU/Linux
Эта команда отображает не только архитектуру, но и все другие детали, такие как имя ядра, версия, имя системы и т. д.
Способ 2 — использование команды Arch
Еще один способ узнать архитектуру системы — использовать команду arch. Команда Arch аналогична команде uname -m, которая отображает имя аппаратного обеспечения машины.
arch
Пример вывода с моей машины:
x86_64
Способ 3 — использование команды «файл»
Вы также можете проверить архитектуру вашей системы Linux с помощью команды file.
file /sbin/init
Или используйте следующую команду в системах, использующих systemd.
file /lib/systemd/systemd
Пример вывода:
/lib/systemd/systemd: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=8d3cb750275dc2f474dc7f049fdffb3a649b1d49, stripped, with debug_info
Кроме того, вы можете использовать следующую команду для проверки архитектуры вашей системы:
file /usr/bin/id
Пример вывода:
/usr/bin/id: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=ca513ae4d630324b1eadcd78122490248a27b8b6, stripped
Способ 4. Использование команды lscpu
Команда lscpu является частью пакета util-linux, который отображает информацию об архитектуре ЦП.
Чтобы узнать, является ли ваша система Linux 32-битной или 64-битной, просто запустите:
lscpu
Пример вывода:
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 4
On-line CPU(s) list: 0-3
Thread(s) per core: 2
Core(s) per socket: 2
Socket(s): 1
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 42
Model name: Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz
Stepping: 7
CPU MHz: 799.890
CPU max MHz: 2300.0000
CPU min MHz: 800.0000
BogoMIPS: 4591.21
Virtualization: VT-x
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 3072K
NUMA node0 CPU(s): 0-3
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer xsave avx lahf_lm epb tpr_shadow vnmi flexpriority ept vpid xsaveopt dtherm arat pln pts
Способ 5 — использование команды dpkg
dpkg — это менеджер пакетов, который можно использовать для установки, сборки, удаления пакетов Debian и управления ими. Мы можем определить, является ли наша системная ОС 32-битной или 64-битной, как показано ниже.
dpkg --print-architecture
Пример вывода:
[For 64 bit OS]
amd64
[For 32 bit OS]
i386
Этот метод будет работать только в Debian и других системах на основе APT, таких как Ubuntu, Linux Mint.
Способ 6. Использование утилиты getconf
Мы можем узнать архитектуру нашей системы с помощью утилиты getconf. Он отображает переменные конфигурации вашей системы и их значения.
Чтобы узнать, является ли установленная ОС 32- или 64-разрядной, просто запустите:
tconf LONG_BIT
Пример вывода будет:
64
Способ 7. Использование утилиты lshw
Утилита lshw также может использоваться для определения 32-разрядной или 64-разрядной версии вашего Linux. Он отобразит подробную информацию об аппаратной конфигурации системы Linux.
Чтобы узнать, является ли ваша ОС Linux 32- или 64-разрядной, просто запустите:
sudo lshw -c cpu
Пример вывода:
*-cpu
product: Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz
vendor: Intel Corp.
physical id: 2
bus info: cpu@0
width: 64 bits
capabilities: fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx rdtscp x86-64 constant_tsc rep_good nopl xtopology nonstop_tsc pni pclmulqdq monitor ssse3 cx16 sse4_1 sse4_2 popcnt xsave avx hypervisor lahf_lm
Или вы можете быть более конкретным:
sudo lshw -c cpu | grep width
Способ 8. Использование переменной среды HOSTTYPE
Другой способ узнать архитектуру ОС вашей системы — использовать переменную среды HOSTTYPE, как показано ниже.
echo $HOSTTYPE
Пример вывода:
[64 bit system]
x86_64
[32 bit system]
i386
Способ 9 — использование /proc/cpuinfo
Архитектуру ОС нашей системы можно найти в файле /proc/cpuinfo.
sudo grep flags /proc/cpuinfo
Пример вывода:
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc pni pclmulqdq monitor ssse3 cx16 sse4_1 sse4_2 popcnt xsave avx hypervisor lahf_lm
- Флаг lm означает 64-битный процессор (длинный режим)
- Флаг tm означает 32-битный (защищенный режим)
- Флаг rm означает 16-битный процессор (реальный режим)
Как вы видите в выводе, я использую 64-битную версию.
Способ 10
Наконец, вы также можете определить тип архитектуры своей ОС, просмотрев установленные пакеты и библиотеки в вашей системе.
ls -la / |grep lib
Пример вывода:
drwxr-xr-x 22 root root 4096 May 17 15:07 lib
drwxr-xr-x 2 root root 4096 May 17 15:10 lib64
Рекомендуем прочитать:
- Как узнать, поддерживает ли процессор технологию виртуализации (VT)
И это все на данный момент. Надеюсь, это поможет. Если наши руководства кажутся вам полезными, поделитесь ими в социальных и профессиональных сетях и поддержите OSTechNix.