Arch64 FAQ (Русский)
From ArchWiki
i18n |
---|
Česky |
English |
Español |
Ελληνικά |
Italiano |
简体中文 |
Русский |
Ниже приведён список часто задаваемых вопросов о Arch64.
Как установить Arch64?
Просто используйте наш официальный образ установочного CD.
Насколько полноценным является порт? Будут ли доступны все пакеты из моего окружения Arch32?
Репозитории Core и Extra портированы и абсолютно все пакеты вовремя обновляются, отставание по времени от Arch Linux i686 от нескольких часов до нескольких дней. Наши доверенные ползователи (TU) сейчас работают над портированием репозитория Community.
Порт уже готов для повседневного использования в качестве рабочего стола или сервера.
Означает ли 64-битность большой прирост производительности?
Для приложений использующих 64-битные регистры процессора (большие базы данных и т.п.) это в большинстве случаев соответствует действительности. Некоторые мультимедиа-приложения также будут выполняться заметно быстрее. Если вам известны приложения которые показывают большой прирост скорости при использовании расширений SSE3, вы можете пересобрать пакет самостоятельно. Мы компилируем с поддержкой только SSE2 (из march=x86_64) и с оптимизациями -O2. Для дальнейшей информации читайте http://forums.gentoo.org/viewtopic.php?t=221045 или http://www.thejemreport.com/mambo/content/view/74/74/ .
Для всех остальных частей системы: это не играет абсолютно никакой роли, если компьютер ждёт нажатия клавиш.
Для дальнейших деталей смотрите наш список TODO для Arch64. Там же вы найдёте список сравнивающий версии пакетов arch32/arch64.
На данный момент у меня работаю три машины с 64-битными arch'ами и они ведут себя намного лучше при интенсивных нагрузках. Видимо это всё-таки более эффективно.
Внимание: при обновлении с версии glibc < 2.4!
Если вы обновлятесь с glibc версии ниже 2.4 важно выполнить это отдельным шагом. Выполните сначала
pacman -Sy glibc
и, если эта операция завершилась успешно,
pacman -Su
В противном случае обновление библиотек может дать сбой и вам прийдётся использовать pacman.static чтобы всё починить.
Как сообщить об ошибке?
Просто используйте багтрекер Arch, но в поле Architecture выберите x86_64 если вы думаете что проблема отностися именно к порту Arch64.
У вас есть список рассылки?
Да, существует общий список рассылки посвященный портам arch.
Какие репозитории я могу использовать в pacman?
Для этого порта поддерживаются все репозитории.
Как получить PKGBUILD'ы Arch64?
Мы используем ABS для 32-битного Arch. Рекомендуемое место для хранения - /var/abs. abs скачивает все файлы из CVS помеченные тегом CURRENT-64.
Как собрать новые пакеты для Arch64 используя существующие 32-битные PKGBUILD'ы?
У нас общие PKGBUILD'ы с Arch32. Вы можете получить ещё не портированные PKGBUILD'ы из CVS: http://www.archlinux.org/cvs/
Как модифицировать PKGBUILD'ы для использования в Arch64?
Для всех портированных пакетов мы добавляем следующую переменную:
arch=('i686' 'x86_64')
Небольшие изменения вносите непосредственно в исходники и раздел md5sums, а для совсем отдельных исходников используйте
[ "$CARCH" = "x86_64" ] && source=(${source[@]} 'other source') [ "$CARCH" = "x86_64" ] && md5sums=(${md5sums[@]} 'other md5sum')
Для маленьких исправлений в сборочном разделе:
[ "$CARCH" = "x86_64" ] && (patch -Np0 -i ../foo_x86_64.patch || return 1)
Или, если вам нужно больше изменений:
if [ "$CARCH" = "x86_64" ]; then configure/patch/sed # for x86_64 else configure/patch/sed # for i686 fi
Для разработчиков:
cvs commit -m "x86_64 updated/fixed or whatever" cvs tag -cFR CURRENT-64 foo-package-directory (even for extra, community, unstable and testing)
Что я потеряю в Arch64?
Известно, что следующие приложения несовместимы с 64-битами:
- такие проприетарные приложения как Skype, TeamSpeak, некоторые игры
- дополнительные win32-кодеки (... которые на самом деле никому не нужны)
- пакеты использующие 32-битный ассемблерный код x86 (некоторые эмуляторы, такие как zsnes и syslinux)
Всё остальное должно быть переносимым. Если вам не хватает какого-то пакета из Arch32 в нашем порте и вы знаете что он собирается под x86_64 (например вы нашли его в другом 64-битном дистрибутиве, без использования lib32), просто свяжитесь с разработчиками.
Могу ли я собирать 32-битные пакеты для i686 используя Arch64?
Да. Вам необходимо создать работающее chroot-окружение i686 (рекомендуется инсталляция "quickinstall" с образа i686 для быстрой установки внутри Arch64 или смотрите Arch64 Install bundled 32bit system). Установите пакет с обертками (врапперами) "linux32" из current чтобы заставить chroot вести себя как реальная система i686. Далее используйте следующий скрипт для входа в chroot-окружение в качестве пользователя root:
#!/bin/bash mount --bind /dev /path-to-your-chroot/dev mount --bind /dev/pts /path-to-your-chroot/dev/pts mount --bind /dev/shm /path-to-your-chroot/dev/shm mount -t proc none /path-to-your-chroot/proc mount -t sysfs none /path-to-your-chroot/sys linux32 chroot /path-to-your-chroot
Если исходники хранятся на вашей x86_64 хост-системе вы можете добавить
mount --bind /path-to-your-stored-sources /path-to-your-chroot/path-to-your-stored-sources
чтобы сделать их доступными в chroot-системе для сборки пакета согласно /etc/makepkg.conf.
Могу я запускать 32-битные приложения внутри Arch64?
Да!
- вы можете установить lib32-* библиотеки из репозитория community
- вы можете создать chroot-окружение с 32-битной системой
Для создания 32-битного chroot-окружения:
Загрузитесь в Arch64, startx, откройте терминал.
xhost +local: su mount /dev/sda1 /mnt/arch32 mount --bind /proc /mnt/arch32/proc chroot /mnt/arch32 su your32bitusername /usr/bin/command-you want # or eg: /opt/mozilla/bin/firefox
Некоторые 32-битные приложения могут требовать дополнительных связей. Можно поместить следующие строки в rc.local чтобы убедиться что вы получите всё что нужно для 32-битных приложений (предполагается что /mnt/arch32 монтируется в fstab):
mount --bind /dev /mnt/arch32/dev mount --bind /dev/pts /mnt/arch32/dev/pts mount --bind /dev/shm /mnt/arch32/dev/shm mount --bind /proc /mnt/arch32/proc mount --bind /proc/bus/usb /mnt/arch32/proc/bus/usb mount --bind /sys /mnt/arch32/sys mount --bind /tmp /mnt/arch32/tmp #comment the following line if you do not use the same home folder mount --bind /home /mnt/arch32/home
Теперь вы можете набрать в терминале:
xhost +localhost sudo chroot /mnt/arch32 su your32bitusername /opt/openoffice/program/soffice
Могу я обновить/переключить мою систему с i686 на x86_64 без переустановки?
Нет. Впрочем вы можете загрузиться с установочного диска Arch64, примонтировать разделы, сделать резервные копии всего, что не является 32-битными исполняемыми файлами (например /home и /etc) и выполнить установку.