64-bit FAQ (Русский)
Ниже приведен список часто задаваемых вопросов об Arch Linux 64.
Contents
- 1 Как узнать, является ли мой процессор x86_64 совместимым?
- 2 Какую версию Arch мне использовать - 32-битную или 64-битную?
- 3 Как установить Arch64?
- 4 Насколько полноценным является порт?
- 5 Будут ли доступны все пакеты из моего окружения Arch32?
- 6 Почему 64-бита?
- 7 Какие репозитории я должен использовать в pacman?
- 8 Что я потеряю в Arch64?
- 9 Могу я запускать 32-битные приложения внутри Arch64?
- 10 Могу ли я собирать 32-битные пакеты для i686 используя Arch64?
- 11 Могу я обновить/переключить мою систему с i686 на x86_64 без переустановки?
Как узнать, является ли мой процессор x86_64 совместимым?
Пользователи Linux
Запустите в терминале:
$ less /proc/cpuinfo
и просмотрите значение flags
на наличие флага lm
. Если он присутствует - ваш процессор является x86_64 совместимым.
Или попробуйте это:
$ grep -q "^flags.*\blm\b" /proc/cpuinfo && echo "x86_64" || echo "not x86_64"
Пользователи Windows
Используя бесплатную утилиту CPU-Z вы сможете определить, является ли ваш процессор 64-бит совместимым. Процессоры с набором команд "AMD64" (для AMD) или "EM64T" (для Intel) должны быть совместимы с x86_64-релизами и бинарными пакетами.
Какую версию Arch мне использовать - 32-битную или 64-битную?
Если ваш процессор поддерживает x86_64, вам следует использовать Arch64.
Как установить Arch64?
Просто используйте официальный образ установочного CD.
Насколько полноценным является порт?
Порт уже готов для повседневного использования в качестве рабочего стола или сервера.
Будут ли доступны все пакеты из моего окружения Arch32?
Репозитории портированы и всё должно работать так, как ожидалось.
Изредка, для старых пакетов в AUR указана только одна архитектура: 'i686'
, но обычно они могут работать и в 64-разрядной системе. Просто попробуйте добавить 'x86_64'
.
Почему 64-бита?
В большинстве случаев это более быстрая работа системы, кроме того это немного безопаснее, в связи с Address space layout randomization (ASLR), в комбинации с Позиционно-независимым кодом (PIC) и NX Bit, которые недоступны в стоковом i686 ядре за из-за отключенного PAE. Если ваш компьютер оснащён 4+ Гигабайтами оперативной памяти, вам следует использовать 64-битную архитектуру, так как 32-битная ОС не поддерживает такой объём.
Программисты также склонны меньше уделять внимания "устаревшей" 32-битной архитектуре, так как "новые" процессоры обычно поддерживают 64-битные расширения.
Существует намного больше доводов за использование 64-битной архитектуры, которые можно здесь перечислить. Но в наши дни столько разных вещей, которые 64-битная архитектура "делает" лучше, что составление этого списка просто не имеет смысла.
Для более подробной информации смотрите различия пакетов. Там вы найдёте различия 32-/64-битных версий пакетов.
Какие репозитории я должен использовать в pacman?
Для порта поддерживаются все репозитории.
Что я потеряю в Arch64?
Ничего. Практически все приложения уже поддерживают x64.
Самой большой проблемой являются программы с закрытым исходным кодом и программы, содержащие x86-специфичный ассемблерный код (например, эмуляторы).
Эти приложения в прошлом имели проблемы, но сейчас доступны в AUR и работают корректно.
- Acrobat Reader не доступен в x64, но вы можете запустить 32-битную версию в режиме совместимости. Также имеется достаточно свободных альтернатив для чтения pdf-файлов.
Всё остальное должно работать. Если вам не хватает какого-то пакета из Arch32 в нашем порте и вы знаете что он собирается под x86_64 (например вы нашли его в другом 64-битном дистрибутиве, без использования lib32), просто свяжитесь с разработчиками.
Могу я запускать 32-битные приложения внутри Arch64?
Да!
- Вы можете установить
lib32-*
библиотеки из репозитория multilib.
Репозиторий содержит Wine, Skype, Flashplugin, Steam и др.
- Или вы можете создать chroot-окружение с 32-битной системой (смотри Arch64 Install bundled 32bit system):
Могу ли я собирать 32-битные пакеты для i686 используя Arch64?
Да. Вы можете использовать
- версии библиотек из репозитория [multilib] или
- chroot-окружение i686.
Репозиторий Multilib
Чтобы использовать репозиторий [multilib] измените ваш /etc/pacman.conf
и раскомментируйте строки:
[multilib] SigLevel = PackageRequired Include = /etc/pacman.d/mirrorlist
обновите вашу систему pacman -Syu
и установите пакет gcc-multilib.
# pacman -S gcc-multilib
resolving dependencies... warning: dependency cycle detected: warning: lib32-gcc-libs will be installed before its gcc-libs-multilib dependency looking for inter-conflicts... :: gcc-libs-multilib and gcc-libs are in conflict. Remove gcc-libs? [y/N] y :: binutils-multilib and binutils are in conflict. Remove binutils? [y/N] y :: gcc-multilib and gcc are in conflict. Remove gcc? [y/N] y :: libtool-multilib and libtool are in conflict. Remove libtool? [y/N] y Remove (4): gcc-libs-4.6.1-1 binutils-2.21.1-1 gcc-4.6.1-1 libtool-2.4-4 Total Removed Size: 87.65 MB Targets (7): lib32-glibc-2.14-4 lib32-gcc-libs-4.6.1-1 gcc-libs-multilib-4.6.1-1 binutils-multilib-2.21.1-1 gcc-multilib-4.6.1-1 lib32-libtool-2.4-2 libtool-multilib-2.4-2 Total Download Size: 25.04 MB Total Installed Size: 108.27 MB Proceed with installation? [Y/n]
Сборка пакетов на x86_64-архитектуре для i686 проста: необходимо добавить следующие строки в файл альтернативной конфигурации (например ~/.makepkg.i686.conf
)
CARCH="i686" CHOST="i686-pc-linux-gnu" CFLAGS="-m32 -march=i686 -mtune=generic -O2 -pipe -fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2" CXXFLAGS="${CFLAGS}"
и запустить makepkg командой
$ linux32 makepkg -src --config ~/.makepkg.i686.conf
Chroot
Смотрите Arch64 Install bundled 32bit system
Могу я обновить/переключить мою систему с i686 на x86_64 без переустановки?
Нет. Строго говоря, миграция предпологает что все или почти все пакеты должны быть переустановлены для новой архитектуры. Тем не менее возможно переместить вашу систему без переустановки на новую архитектуру. Об этом повествует топик, в котором описаны базовые шаги, позволяющие успешно обновить 32-битную систему до 64-битной без потери данных. Имейте в виду, что для этого нужен носитель большого объема.
Впрочем, вы также можете загрузиться с установочного диска Arch64, примонтировать разделы, сделать резервные копии всего, что не является 32-битными исполняемыми файлами (например /home
и /etc
) и выполнить установку.
Возможно, вам также будет интересно почитать Migrating Between Architectures Without Reinstalling.