Date Редакция Категория comp Теги linux / arch

Официальное руководство по установке Arch Linux рассчитано на все случаи жизни, конфигурации оборудования, намерения и подготовку пользователей, и потому неизбежно содержит множество избыточной для новичка информации (кроме того, есть ещё более подробное руководство для новичков). Наша цель — познакомиться с Arch, почувствовать как работать в этой системе. Самый простой способ достичь этой цели — установить Arch на виртуальную машину, где мы вольны сами выбирать конфигурацию оборудования. Чтобы быстрее установить систему и приступить к работе, создадим виртуальную машину под управлением VirtualBox с одной операционной системой (Arch Linux) и одним жёстким диском.

Кроме того, предполагается, что на хост-машине подключен Интернет.

Подготовка к установке

Скачать дистрибутив можно по адресу: [руководстве](http://www.archlinux.org/download/]].

Загрузка

  • Создадим в VirtualBox новую виртуальную машину.
  • В настройках машины загрузим iso-образ Arch в привод CD и укажем этот привод первым в списке загрузки.
  • Запустим виртуальную машину и выберем архитектуру Arch. Выбирать лучше 64-битный вариант, так как рано или поздно поддержка 32-битных пакетов будет прекращена.

После загрузки вы попадёте в консоль суперпользователя root.

Подключение к Интернет

В случае VirtualBox сеть поднимается сама и уже готова к использованию.

Подготовка жёсткого диска

В первый раз Arch лучше всего ставить на один раздел. Раздел /boot, упоминаемый в [[https://wiki.archlinux.org/index.php/Partitioning), не нужен, поскольку у нас будет всего одна операционная система. Раздел под swap также не нужен. Вместо него разместим swap в файле, как в Windows. Это даст возможность изменять размер swap или вовсе удалить его. Если у вас достаточно оперативной памяти, то swap можно не создавать или создать, но не подключать. Тогда, даже если память закончится, то система просто "подумает" несколько минут, а затем убьет самый "прожорливый" процесс.

Разметка

Для разметки диска можно использовать классический fdisk или более простой cfdisk. Поскольку раздел у нас предполагается всего один, возможностей cfdisk будет достаточно:

# cfdisk /dev/sda

Добавим новый раздел. Он будет первичным (Primary), загрузочным (Bootable) и занимать весь диск. Запишем сделанные нами изменения.

Проверить разметку можно повторно запустив cfdisk.

Форматирование

Размеченный диск нужно отформатировать, то есть создать на нем файловую систему. В качестве последней выберем ext4:

mkfs.ext4 /dev/sda1

Установка базовых пакетов

Создание основных каталогов

Перед тем как ставить пакеты, нам нужно смонтировать подготовленный на предыдущем шаге раздел диска, создать в нём основные каталоги и пробросить в устанавливаемую систему /dev, /proc и /sys:

mount /dev/sda1 /mnt
mkdir /mnt/{dev,proc,sys,etc,run,tmp}
mkdir -p /mnt/var/lib/pacman
mount --bind /dev /mnt/dev
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys

Опция --bind позволяет связать один каталог с другим. Связывать /dev и другие каталоги необходимо для того, чтобы устанавливаемая система могла получить доступ к устройствам и другой информации. Системе это понадобится для установки некоторых пакетов, а нам — для установки и настройки загрузчика из chroot-а (этим мы займёмся чуть позже).

Загрузка пакетов

Команды для установки пакетов при инсталляции отличаются от обычных только тем, что пакетному менеджеру pacman дополнительно указывается корневой каталог устанавливаемой системы. Его мы, если помните, смонтировали в /mnt.

Обязательными для установки являются базовые пакеты и загрузчик:

pacman -r /mnt -Sy base grub

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

Настройка зеркал для новой системы

После окончания загрузки пакетов имеет смысл скопировать список зеркал с установочного образа в нашу новую систему:

cp /etc/pacman.d/mirrorlist /mnt/etc/pacman.d/mirrorlist

Если вы не сделаете этого сейчас, то не забудьте отредактировать список позже, потому что в новой системе все зеркала закомментированы.

Настройка устанавливаемой системы

Переключение

Переключаемся в устанавливаемую систему:

chroot /mnt bash

Дальнейшие действия производятся в устанавливаемой системе. Выходить из chroot нужно будет только после завершения настройки — для перезагрузки.

В дальнейшем, если какого-либо конфигурационного файла нет, и не написано, что он генерируется определенной командой, то его нужно создать.

Имя хоста

Открываем /etc/hostname (например, с помощью nano), пишем туда имя хоста, например arch.

Локаль

Открываем файл /etc/locale.gen и стираем решетку перед локалью ru_RU.UTF-8 UTF-8.

Запускаем генератор локалей:

locale-gen

Теперь открываем файл /etc/locale.conf и пишем туда следующее:

LANG=ru_RU.UTF-8

Не пугайтесь, если введя после этого команду locale вы не увидите изменений. Так и должно быть.

Виртуальная консоль

Открываем файл /etc/vconsole.conf и пишем туда:

KEYMAP=us
FONT=UniCyr_8x16

Часы

Переводим аппаратные часы на "локальное" время и отображаем это в конфигурационном файле /etc/adjtime:

hwclock -w --localtime

localtime указывается для совместимости с Windows.

Указываем свой часовой пояс:

ln -sf /usr/share/zoneinfo/Europe/Moscow /etc/localtime

Если у вас другой часовой пояс, то ищите свой файл в /usr/share/zoneinfo/ и командуйте аналогичным образом.

Автомонтирование

Теперь открываем файл /etc/fstab и прописываем туда наш корневой раздел. Есть несколько способов указания нужного раздела, самый простой — использовать для указания имя устройства:

/dev/sda1 /    ext4 defaults 0 1

Напомню, что разделителем в /etc/fstab служит табуляция.

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

Ставим загрузчик:

grub-install /dev/sda

Если вы хотите видеть как проходит процесс загрузки, то откройте файл /etc/default/grub и закомментируйте quiet из параметров ядра.

Запускаем автоматическую настройку:

grub-mkconfig -o /boot/grub/grub.cfg

grub-mkconfig может ругаться на lvmetad. Это предупреждение можно проигнорировать, а можно удалить пакет lvm2 и перегенерировать конфиг.

Инициализация хранилища ключей

Установка практически выполнена, но прежде чем перезагружать систему, инициализируем и "населим" хранилище ключей для pacman:

pacman-key --init
pacman-key --populate archlinux

Перезагрузка

После этого нужно ещё раз проверить правильность всех настроек, выйти из устанавливаемой системы и перезагрузиться:

exit
reboot

При установке в VirtualBox новая система иногда ведёт себя странным образом: сначала вроде бы нормально загружается, а потом на экране появляется ругань вида upgrade bios or use force_addr=0xaddr и приглашение консоли не появляется. В этом случае нужно просто перейти в другую консоль, нажав HOST + F2. Хост-клавишей обычно выступает правый Ctrl.

Жизнь в новой системе

Если установленная система смогла загрузиться, значит всё в порядке — базовая система у нас теперь есть, осталось только войти в неё под root-ом.

Первым делом защищаем root паролем:

passwd

Создаём файл подкачки

При достаточном объёме оперативной памяти делать это не обязательно. Однако на всякий случай лучше научиться создавать и подключать swap сейчас. Делается это так:

fallocate -l 1G /swapfile
chmod 600 /swapfile
mkswap /swapfile

Файл готов. Чтобы подключить его достаточно ввести команду:

swapon /swapfile

Чтобы подключение происходило автоматически, swap нужно прописать в /etc/fstab:

/swapfile none swap defaults 0 0

Снова поднимаем сеть

Наша задача: выяснить, как в Arch называется наш старый добрый сетевой интерфейс eth0. Для этого ищем интерфейс вида enp0s3 в выдаче

ip link

Затем запускаем для этого интерфейса DHCP:

systemctl start dhcpcd@enp0s3.service

и добавляем всё это в автозагрузку:

systemctl enable dhcpcd@enp0s3.service

Создаём пользователя

useradd -m -g users -s /bin/bash имя_пользователя
passwd имя_пользователя

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

# gpasswd -a имя_пользователя wheel

Поставим и настроим sudo для выполнения команд администратора

# pacman -S sudo

В файле /etc/sudoers раскомментируем строку # %wheel ALL=(ALL) ALL. Теперь мы можем использовать команду sudo.

Базовая настройка системы завершена. Дальнейшую настройку и установку дополнительных пакетов (иксов, драйверов, графических оболочек и т. п.) каждый выполняет по своему вкусу.

Полезные ссылки

  1. Установка Arch Linux
  2. Установка и первичная настройка Arch Linux + Xfce, часть 1


Комментарии

comments powered by Disqus