Как проверить, есть ли у меня 32-разрядная или 64-разрядная ОС?
Я загрузил и установил Ubuntu с официального сайта. Однако я не знаю, установил ли я 32-разрядную или 64-разрядную версию.
В Windows 7 я мог щелкнуть правой кнопкой мыши Мой компьютер , и он указал, какая версия была.
Есть ли простой способ проверить Ubuntu?
15 ответов
Я знаю как минимум 2 способа. Откройте терминал ( Ctrl + Alt + T ) и введите:
-
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
или
-
file /sbin/init
Результат для 32-разрядного Ubuntu:
/sbin /init: ELF 32-разрядный общий объект LSB, Intel 80386 , версия 1 (SYSV), динамически связанная (использует общие библиотеки), для GNU /Linux 2.6.15, лишенный
тогда как для 64-битной версии это выглядело бы так:
/sbin /init: ELF 64-разрядный общий объект LSB, x86-64 , версия 1 (SYSV), динамически связанная (использует общие библиотеки), для GNU /Linux 2.6.15, лишенный
То же самое для систем, использующих systemd (16.04):
file /lib/systemd/systemd
Результат для 64-битного:
/lib /systemd /systemd: ELF 64-разрядный общий объект LSB, x86-64 , версия 1 (SYSV), динамически связанная, интерпретатор /lib64 /ld -linux-x86-64.so.2, для GNU /Linux 2.6.32, BuildID [sha1] = 54cc7ae53727d3ab67d7ff5d66620c0c589d62f9, stripped
Ubuntu 12.04+ с Unity
- Команда Hit Command (Mac) или Window.
- Введите
Details
и выберите значок «Подробности» - Прочитать поле «Тип ОС»
- 64-разрядная ОС будет читать «64-разрядный»
Альтернатива для получения вышеуказанного экрана:
- щелкните Системное меню (механизм в правом верхнем углу)
- нажмите «Об этом компьютере»
Я знаю, что ответы на терминал хороши, но я думаю, что это GUI-ответ. :)
Ubuntu 11.04 с Unity
- Команда Hit Command (Mac) или Window.
- Введите
System info
и выберите значок System Info - Прочитать поле «Тип ОС»
- 64-разрядная ОС будет читать «64-разрядный»
Очень простой и короткий путь:
Откройте терминал, напишите следующее и нажмите Enter .
getconf LONG_BIT
Полученное число (в моем случае 64) является ответом.
Ссылка: Как узнать, работает ли I /32-разрядный или 64-разрядный Linux?
Используйте команду:
uname -m
Обычно вы получите:
i686
для 32-битного (или, возможно, i586 или i386) и:
x86_64
для 64-разрядной версии.
Откройте терминал и попробуйте команду arch
. Если его вывод равен x86_64, то это бит 64 бит. Если он говорит i686, i386 и т. Д., То это 32 бит.
Однако наилучшим способом определения архитектуры является запуск команды arch
и google вывод.
dpkg --print-architecture
отобразит, была ли установлена 32-разрядная или 64-разрядная ОС Ubuntu.
В 64-битных системах
$ dpkg --print-architecture
amd64
В 32-битных системах
$ dpkg --print-architecture
i386
`
Проверка архитектуры
Ссылка на скачивание
- Загрузить
- Извлеките его.
- Отметьте файл «Проверка архитектуры». 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
должен быть установлен.
Перейдите в Системные настройки и в разделе Система нажмите Подробности . Вы получите каждую деталь, включая вашу ОС, ваш процессор, а также тот факт, что система работает с 64-разрядной или 32-разрядной версией.
Откройте программный центр 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-разрядный
(Но это еще не тот ответ, который должен быть там;))
Кнопка питания (самая верхняя, крайняя справа) имеет опцию «Об этом компьютере». :)
Насколько я помню, можно установить ядро x86_64 в 32-разрядную систему. Как написано здесь несколько, вы должны посмотреть, какие у вас библиотеки /какие пакеты вы установили в своей системе. Поэтому самый безопасный способ проверить, есть ли у вас /lib64
, и если это символическая ссылка на /lib
.
Другой возможный способ - проверить, какие пакеты вы загрузили в /var/cache/apt/archive
. Если они содержат _amd64.deb, это 64-разрядная система, то есть если вы установили пакеты и не очистили свой кеш.
Все это можно сделать из Konqueror / Дельфин , просто указав и нажав или:
ls -la / |grep lib
Вы должны помнить, что у вас может быть 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 вопрос
Посмотрите на свои источники программного обеспечения в Synaptic или Software Center. Если вы не удалили исходный источник, например cdrom, он (?) Укажет на архитектуру. Это графический интерфейс, но он не будет говорить «32bit» или «64bit».
EDIT . Это решение не работает , потому что Bash можно скомпилировать с поддержкой 64 бит под 32-разрядными платформами.
В Bash, используя целочисленное переполнение:
if ((1<<32)); then
echo 64bits
else
echo 32bits
fi
Это намного эффективнее, чем вызов другого процесса или открытие файлов.
Я не уверен, что вы называете ОС 32 битами.
Чтобы быть конкретным, мой дистрибутив ядра и рабочего стола - 64-разрядный Debian /Sid, но я обычно использую schroot
для запуска deboostrap
-ed 32 бит Debian внутри chroot
-ed environment (для целей тестирования).
Чувствуете ли вы, что моя 32-битная среда должна быть названа 32 битами (я так считаю) или 64 бита (в конце концов, она запускается внутри ядра с 64-битным ядром). В этой среде uname -m
говорится i686
, а все библиотеки и исполняемые файлы и процессы 32 бита.
Для практических целей uname -m
должно быть достаточно. Команда file
может сообщить вам, является ли исполняемый файл ELF 32-разрядным или 64-разрядным.
См. конкретный Linux личный (2) syscall (а также uname (2) one).
И аппаратная информация о вашем процессоре видна, например,
cat /proc/cpuinfo
его вывод такой же в моей 64-битной системе на рабочем столе и в моей 32-разрядной среде с обходной версией.