Как проверить, есть ли у меня 32-разрядная или 64-разрядная ОС?

456

Я загрузил и установил Ubuntu с официального сайта. Однако я не знаю, установил ли я 32-разрядную или 64-разрядную версию.

В Windows 7 я мог щелкнуть правой кнопкой мыши Мой компьютер , и он указал, какая версия была.

Есть ли простой способ проверить Ubuntu?

    
задан Only Bolivian Here 08.05.2011 в 21:25
источник

15 ответов

586

Я знаю как минимум 2 способа. Откройте терминал ( Ctrl + Alt + T ) и введите:

  1. uname -a

    Результат для 32-разрядного Ubuntu:

    Linux discworld 2.6.38-8-generic #42-Ubuntu SMP Mon Apr 11 03:31:50 UTC 2011 i686 i686 i386 GNU/Linux

    , тогда как 64-разрядный Ubuntu будет показывать:

    Linux discworld 2.6.38-8-generic #42-Ubuntu SMP Mon Apr 11 03:31:50 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux

    Более короткая версия:

    $ uname -i
    x86_64
    

    или

  2. file /sbin/init

    Результат для 32-разрядного Ubuntu:

    /sbin/init: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.15, stripped

    тогда как для 64-битной версии это выглядело бы так:

    /sbin/init: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.15, stripped

    То же самое для систем, использующих systemd (16.04):

    file /lib/systemd/systemd

    Результат для 64-битного:

    /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]=54cc7ae53727d3ab67d7ff5d66620c0c589d62f9, stripped
ответ дан Rinzwind 08.05.2011 в 21:28
источник
139

Ubuntu 12.04+ с Unity

  • Команда Hit Command (Mac) или Window.
  • Введите Details и выберите значок «Подробности»
  • Прочитать поле «Тип ОС»
  • 64-разрядная ОС будет читать «64-разрядный»

Альтернатива для получения вышеуказанного экрана:

  • щелкните Системное меню (механизм в правом верхнем углу)
  • нажмите «Об этом компьютере»

Я знаю, что ответы на терминал хороши, но я думаю, что это GUI-ответ. :)

Ubuntu 11.04 с Unity

  • Команда Hit Command (Mac) или Window.
  • Введите System info и выберите значок «Информация о системе»
  • Прочитать поле «Тип ОС»
  • 64-разрядная ОС будет читать «64-разрядный»
ответ дан Frank Henard 13.10.2011 в 17:31
67

Очень простой и короткий путь:

Откройте терминал, напишите следующее и нажмите Enter .

getconf LONG_BIT

Полученное число (в моем случае 64) является ответом.

    
ответ дан Cristiana Nicolae 01.10.2013 в 03:14
55

Ссылка: Как узнать, запущен ли 32-разрядный или 64-разрядный Linux?

Используйте команду:

uname -m

Обычно вы получите:

i686

для 32-битного (или, возможно, i586 или i386) и:

x86_64

для 64-разрядной версии.

    
ответ дан Hemant Metalia 05.01.2012 в 08:36
25

Откройте терминал и попробуйте выполнить команду arch . Если его вывод равен x86_64, то это бит 64 бит. Если он говорит i686, i386 и т. Д., То это 32 бит.

Однако лучший способ определить архитектуру - запустить команду arch и google вывод.

    
ответ дан aneeshep 01.11.2010 в 14:54
19
Команда

dpkg --print-architecture покажет, была ли установлена 32-разрядная или 64-разрядная ОС Ubuntu.

В 64-битных системах

$ dpkg --print-architecture
amd64          

В 32-битных системах

$ dpkg --print-architecture
i386

    
ответ дан Avinash Raj 13.04.2014 в 18:21
7

Проверка архитектуры

Ссылка на скачивание

  1. Загрузить
  2. Извлеките его.
  3. Отметьте файл "Проверка архитектуры". sh Executable и запустите его.

Сценарий в основном таков:

#!/bin/bash
ARCH=$(uname -m)
if [ "$ARCH" = "i686" ]; then
 zenity --info --title="Architecture Checker" --text="Your Architecture is 32-Bit"
fi
if [ "$ARCH" = "x86_64" ]; then
 zenity --info --title="Architecture Checker" --text="Your Architecture is 64-Bit"
fi

Это должно быть в исполняемом текстовом файле, и необходимо будет установить zenity .

    
ответ дан Lincity 16.04.2011 в 17:30
4

Перейдите в Системные настройки и в разделе Система нажмите Подробности . Вы получите каждую деталь, включая вашу ОС, ваш процессор, а также тот факт, что система работает с 64-разрядной или 32-разрядной версией.

    
ответ дан user265559 05.04.2014 в 11:53
3

Откройте программный центр Ubuntu и найдите lib32 . Если это приведет к каким-либо результатам, вы используете 64-разрядную установку (результаты - библиотеки совместимости для запуска 32-разрядных приложений при установке с 64-разрядной версией).

Не совсем лучший ответ, но, по крайней мере, он не требует терминала ...; -)

Edit

Я нашел еще проще: откройте «Справка» - > О Mozilla Firefox, и вы увидите его прямо там ...; -)

Внизу отображается строка «пользовательский агент», например. на моей 64-битной системе:

Mozilla/5.0 (X11; U; Linux x86_64; nl; rv:1.9.2.12) Gecko/20101027 Ubuntu/10.10 (maverick) Firefox/3.6.12

или на моей 32-битной системе:

Mozilla/5.0 (X11; U; Linux i686; nl; rv:1.9.2.12) Gecko/20101027 Ubuntu/10.10 (maverick) Firefox/3.6.12

x86_64 - 64-разрядный, i686 - 32-разрядный

(Но это еще не тот ответ, который должен быть там;))

    
ответ дан JanC 01.11.2010 в 17:42
2

Кнопка питания (самая верхняя, крайняя справа) имеет опцию «Об этом компьютере». :)     

ответ дан Pepper 07.04.2013 в 17:53
1

Насколько я помню, можно установить ядро x86_64 в 32-разрядную систему. Как написано здесь несколько, вы должны посмотреть, какие у вас библиотеки / какие пакеты вы установили в своей системе. Таким образом, самый безопасный способ проверить, есть ли у вас /lib64 , и если это символическая ссылка на /lib .

Еще один возможный способ - проверить, какие пакеты вы загрузили в /var/cache/apt/archive . Если они содержат _amd64.deb, это 64-разрядная система, то есть если вы установили пакеты и не очистили свой кеш.

Все это можно сделать из Konqueror / Дельфин , просто указав и нажав или:

ls -la / |grep lib
    
ответ дан Osis 02.11.2010 в 08:44
1

Вы должны помнить, что у вас может быть 64-битный процессор при установке 32-битного ядра. То есть Если ваш процессор равен 64, это не означает, что ваша ОС 64, это зависит от того, что вы установили.

man uname

   -m, --machine
          print the machine hardware name

   -p, --processor
          print the processor type or "unknown"

   -i, --hardware-platform
          print the hardware platform or "unknown"

, чтобы заставить аппаратную платформу использовать uname -m или uname -p или uname -i , а для получения типа ядра лучше использовать команду getconf LONG_BIT .

Проверьте этот SO вопрос

    
ответ дан Maythux 13.06.2015 в 10:40
0

Посмотрите на свои источники программного обеспечения в Synaptic или Software Center. Если вы не удалили исходный источник, например cdrom, он (?) Укажет на архитектуру. Это графический интерфейс, но он не будет говорить «32bit» или «64bit».

    
ответ дан outofstep 01.11.2010 в 14:48
0

EDIT . Это решение не работает , потому что Bash можно скомпилировать с поддержкой 64 бит под 32-разрядными платформами.

В Bash, используя целочисленное переполнение:

if ((1<<32)); then
  echo 64bits
else
  echo 32bits
fi

Это намного эффективнее, чем вызов другого процесса или открытие файлов.

    
ответ дан Luchostein 10.11.2014 в 14:57
-1

Я не уверен, что вы называете ОС 32 битами.

Чтобы быть конкретным, мой дистрибутив ядра и настольных систем - это 64-разрядный Debian / Sid, но я обычно использую schroot для запуска deboostrap -ed 32-разрядного Debian внутри среды chroot -ed (для целей тестирования ).

Чувствуете ли вы, что моя 32-битная среда должна быть названа 32 битами (я так считаю) или 64 бита (в конце концов, она запускается внутри ядра с 64-битным ядром). В этой среде uname -m говорит i686 , а все библиотеки и исполняемые файлы и процессы 32 бита.

Для практических целей uname -m должно быть достаточно. Команда file может сказать вам, является ли исполняемый файл ELF 32-разрядным или 64-битным.

См. конкретный Linux личный (2) syscall (а также uname(2) один.)

И аппаратная информация о вашем процессоре видна, например,

 cat /proc/cpuinfo

его вывод такой же в моей 64-битной системе на рабочем столе и в моей 32-разрядной среде с обходной версией.

    
ответ дан Basile Starynkevitch 05.01.2012 в 10:57