Difference between revisions of "Install from existing Linux (Русский)"

From ArchWiki
Jump to: navigation, search
(Установка требуемых файлов на хост)
m (updated mirrorlist)
Line 54: Line 54:
 
  cd /tmp/archlinux
 
  cd /tmp/archlinux
 
  alien -d pacman-3.3.3-1-i686.pkg.tar.gz
 
  alien -d pacman-3.3.3-1-i686.pkg.tar.gz
  alien -d pacman-mirrorlist-20100131-1-i686.pkg.tar.gz
+
  alien -d pacman-mirrorlist-20101223-1-any.pkg.tar.gz
  
 
на RPM-подобных системах необходимо  заменить параметр "-d" на "-r".
 
на RPM-подобных системах необходимо  заменить параметр "-d" на "-r".

Revision as of 11:00, 16 January 2011

This template has only maintenance purposes. For linking to local translations please use interlanguage links, see Help:i18n#Interlanguage links.


Local languages: Català – Dansk – English – Español – Esperanto – Hrvatski – Indonesia – Italiano – Lietuviškai – Magyar – Nederlands – Norsk Bokmål – Polski – Português – Slovenský – Česky – Ελληνικά – Български – Русский – Српски – Українська – עברית – العربية – ไทย – 日本語 – 正體中文 – 简体中文 – 한국어


External languages (all articles in these languages should be moved to the external wiki): Deutsch – Français – Română – Suomi – Svenska – Tiếng Việt – Türkçe – فارسی

Tango-preferences-desktop-locale-modified.pngThe translation of this article or section does not reflect the original text.Tango-preferences-desktop-locale-modified.png

Reason: please use the first argument of the template to provide a brief explanation. (Discuss in Talk:Install from existing Linux (Русский)#)

Это руководство является объединением и обновлением трех предыдущих существующих и очень схожих между собой руководств по установке, размещенной в этой вики. Оно посвящено всем тем, кто хочет установить Arch Linux из под любого другого Linux -- будь то LiveCD или другой предустановленный дистрибутив.

Введение

pacman в Arch Linux может быть настроен (ключ -r) для выполнения операций с любой директории, которая вам нравится, используя при запуске в качестве контекста к ключу "корень".

Это может пригодиться для сборки новых систем Arch Linux с нуля из других LiveCD или предустановленных дистрибутивов. Также, это может пригодиться для создания нового окружения chroot на "хост" системе, поддержке модели "golden-master" для разработки и распостранения, либо других весёлых тем, такие как rootfs-поверх-NFS для бездисковых машин.

В случае с x86_64 хостом, можно даже использовать i686-pacman при сборке 32-битного окружения chroot. Смотрите Arch64 - установка встроенной 32-битной системы.

Во всем руководстве, мы будем ссылаться на разделы как на /dev/hdxx или /dev/sdxx. Зависит от того, какой тип записи для разделов устройств используется в вашей системе. Обычно это:

Диск 1, Раздел 1:  /dev/hda1 или /dev/sda1
Диск 1, Раздел 2:  /dev/hda2 или /dev/sda2
Диск 2, Раздел 1:  /dev/hdb1 или /dev/sdb1

и т.д.

Мы постараемся обозначать их как /dev/sdxx, но на самом деле, зависит от вашей системы и может выглядеть как /dev/hdxx.

В этой статье, "хостом" обозначим компьютер, который используется для выполнения установки, а "целью" назовем компьютер где вы хотите установить Arch. На самом деле, это может быть один и тот же компьютер. Хост не обязательно должен быть системой Arch -- это может быть система на базе Debian или Redhat. Секция, озаглавленная "Настройка хост системы", объясняет, как установить pacman на хост. Следующая секция, озаглавленная как "Настройка целевой системы", объясняет как использовать pacman с системы хоста при установки Arch на целевой системе. Следовательно, если на хостовой системе уже запущен Arch, вы можете сразу перейти к "Настройка целевой системы".

Настройка хост системы

Вам необходимо, установить на хост менеджер пакет в archlinux - pacman в вашем linux окружении. Дополнительно, вам необходимо получить список зеркал pacman, который используется для загрузки с них данных о доступных пакетах и их последующей загрузки.

Получение необходимых пакетов

Необходимо получить требуемые пакеты для вашего хоста. Примеры подразумевают, что вы используете окружение i686. Если у вас на хосте запущен 64-битный linux, тогда вы должны заменить все "i686" на "x86_64".

Номера версий могут отличаться. Проверьте сначала версии пакетов, после укажите их ниже. Номера версий можно узнать для pacman здесь, а для pacman-mirrorlist здесь. После проверки загрузите необходимые пакеты:

mkdir /tmp/archlinux
cd /tmp/archlinux
wget ftp://ftp.archlinux.org/core/os/i686/pacman-\*.pkg.tar.gz
tar xzvf pacman-*.pkg.tar.gz

Установка требуемых файлов на хост

Если вы не против того, что немного намусорите в хосте, вы можете распаковать все загруженные архивы в вашей корневой директории, запустив распаковку от root:

cd /
for f in /tmp/archlinux/pacman-*pkg.tar.gz
do
  tar xzf $f
done
  1. Если вы устанавливаете с LiveCD Ubuntu 9.10 (или других версий), вам нужно больше чем просто файлы pacman (разделяемые библиотеки) для его использования. Используйте скрипт, описанный Lucky [тут], для получения/установки на ваш дистрибутив!
  2. Кроме того, вы можете собрать пакеты для вашего дистрибутива используя утилиту alien. За подробностями обратитесь к странице man этой утилиты. Пакеты созданные таким образом, могут быть установлены в ваш хост с использованием обычного менеджера пакетов, доступного тут же. Этот подход обеспечивает более лучшую интеграцию для хоста вашей linux среды. Для debian-подобных просто выполнить следующую команду:
    cd /tmp/archlinux
    alien -d pacman-3.3.3-1-i686.pkg.tar.gz
    alien -d pacman-mirrorlist-20101223-1-any.pkg.tar.gz
    

    на RPM-подобных системах необходимо заменить параметр "-d" на "-r".

    Теперь, созданные пакеты могут быть установлены с использованием стандартного менеджера пакетов в вашем linux.

  3. В Fedora 12, все перечисленные методы установки pacman не работают, но с прекрасным скриптом, описанным [тут], он скачивает и всё устанавливает. У меня он чудесным образом заработал.

  4. В Gentoo: просто размаскируйте pacman добавлением sys-apps/pacman в /etc/portage/package.keywords. Теперь просто запустите emerge -av pacman.

    Здесь также есть более детальное руководство.

  5. Более старые методы обсуждаются тут.

Конфигурирование системы хоста

Настройте ваш /etc/pacman.conf как вам нужно и удалите ненужные зеркала с /etc/pacman.d/mirrorlist. Кром того, необходимо указать в списке несколько зеркал, так как могут возникнуть ошибки при синхронизации, если зеркал будет слишком мало. Возможно понадобится вручную указать IP адреса вместо полных имен в /etc/pacman.d/mirrorlist, так как pacman для i686 может не получить информацию об адресах на системах x86_64.

Если вы устанавливаете с LiveCD и ваша система с малым количеством памяти RAM и swap (< 1 GB), не забудьте указать cahedir в /etc/pacman.conf в новом разделе Arch (например Template:Filename). Иначе, вы можете столкнуться с нехваткой памяти для загрузки необходимых для установки пакетов.

Подготовка диска для Arch

Подготовте и примонтируйте раздел(ы) для новой системы Arch Linux. Если ваша система имеет GUI-утилиты для проведения операций над диском (gparted, cfdisk, diskdrake), то Вы можете их использовать в данной задаче.

Для создания файловой системы ext3 на разделе диска используйте команду

mkfs.ext3 /dev/hdXX

Для reiserfs:

mkreiserfs /dev/hdXX

Для создания раздела подкачки (swap):

mkswap /dev/hdXX

Прочие файловые системы чаще всего имеют свои варианты команды "mkfs", как приведённый выше пример для ext3: mkfs.ext3.

После создания файловой системы примонтируйте корневой раздел новой системы в /newarch (взято для простоты и будет использоваться далее в статье). При необходимости, смонтируйте остальные разделы в свои директории ("/home", "/var", "/usr" и т.д.).

Установка базовой системы

Обновление базы pacman

pacman.static -Sy -r /newarch

Команда pacman.static не требует для работы каких-либо дополнительных библиотек, а ключ "-r" позволяет работать pacman'у в корнем системы, отличном от "/".


Данной командой Вы установите необходимый рабочий минимум системы

pacman.static -S bash pacman filesystem -r /newarch

Для установки всех базовых пакетов воспользуйтесь следующей командой

pacman.static -S autoconf automake bash bin86 binutils bison bzip2 coreutils cpio cracklib \
 cryptsetup db dcron device-mapper dhcpcd dialog diffutils e2fsprogs ed file filesystem \
 findutils flex gawk gcc gdbm gen-init-cpio gettext glibc grep groff grub gzip initscripts \
 iputils jfsutils kbd kernel-headers klibc klibc-extras klibc-udev less libgcrypt libgpg-error \
 libpcap libtool libusb licenses lilo logrotate lshwd lvm2 lzo2 m4 mailx make man man-pages \
 mdadm mkinitcpio mktemp module-init-tools nano ncurses net-tools openssl pacman pam patch \
 pciutils pcmciautils pcre perl popt ppp procinfo procps psmisc readline reiserfsprogs rp-pppoe \
 sed shadow slocate sysfsutils syslog-ng sysvinit tar tcp_wrappers udev usbutils util-linux vim \
 wget which wireless_tools xfsprogs zlib \
   -r /newarch

Подготовка системы

Монтирование важных файловых систем в каталог Arch

mount /dev/ /newarch/dev/ --bind
mount /sys/ /newarch/sys/ --bind
mount /proc/ /newarch/proc/ --bind

Для работы сети отредактируйте файл /newarch/etc/resolv.conf или замените его своим /etc/resolv.conf

cp /etc/resolv.conf /newarch/etc/

Вход в среду "chroot"

chroot /newarch /bin/bash

Создайте корректные узлы в /dev

cd /dev
mknod -m 660 console c 5 1
mknod -m 660 null c 1 3

Установка ядра

Установка ядра производится при помощи того же pacman:

pacman -S kernel26

Если pacman выдает ошибку:

error: failed to commit transaction (not enough space on disk)

Попробуйте:

cat /proc/mounts > /etc/mtab && pacman -S grub

Кроме kernel26 существуют и другие сборки ядер: kernel26beyond, kernel26suspend2 и т.д. Для их установки необходимо подключить репозиторий extra в файле /etc/pacman.conf, раскомментировав соответствующие строки. После этой операции необходимо выполнить pacman -Sy.

Если Вы желаете установить ещё какое-либо программное обеспечение - воспользуйтесь нижеследующей командой

pacman -S _packagename_

Конфигурирование системы

Отредактируйте файл "/etc/fstab", добавив раздел "/", swap и прочие, если таковые имеются.

Отредактируйте файл "/etc/rc.conf" по желаниям и потребностям (:

Отредактируйте "/etc/locale.gen", раскомментировав необходимые Вам локали системы и сгенерируйте локали командой

locale-gen

Установка загрузчика

Отредактируйте конфигурационный файл загрузчика и установите его.

Инструкции по установке GRUB и LILO есть в данной вики.

Завершение установки

Перезагрузитесь в Вашу новую систему!

От автора

Данная статья является переводом статьи Install Arch from within another distro с небольшими изменениями и дополнениями.