Введение
Arch — это древнее английское слово, означающее «Я не осилил Gentoo».
Здравствуйте дорогие читатели! Я заранее хочу всех предупредить, что ArchLinux не является простым дистрибутивом. Да, он очень хорошо настраивается и может стать абсолютно всем, чем захотите. Но в тоже время, в неумелых руках он легко может превратиться в нерабочий кусок говна. Следует понимать несколько ключевых особенностей ArchLinux:
- В нем нет инсталлятора. Сложно сказать хорошо это или плохо. С одной стороны, устанавливая операционную систему на компьютер в ручном режиме ты многое начинаешь осознавать. С другой стороны, как только ты попадаешь с нестандартную ситуацию, к которой не привык, понимаешь всю глубину наших глубин. Пример: установка на GPT с UEFI. Если не знать, как оно работает, можно хлебнуть проблем при установке загрузчика. Важным моментом является то, что в процессе установки можно что-то пропустить. Например локализацию, загрузчик, конфигурацию fstab или не создать пользователей. Обидно, но всегда можно загрузиться с дистрибутива, chrootнуться в систему и доделать забытое. Я неоднократно забывал загрузчик.
- Менеджер пакетов Pacman и его друг AUR. Научитесь и разберитесь в пользовании ими. Главный момент: так как архитектура обновлений Rolling Release, то не спешите чистить кэш пакетов Pacmanа — возможно потребуется откатиться.
- Всё можно сделать руками. Это хорошо звучит, но правильнее звучит так: почти всё придется сделать самому. И половину из этого руками — просто нет инструментов конфигурирования (см. инсталлятор).
Давайте определим приемы форматирования:
Так будут обозначаться команды, вводимые в консоли
Так будет обозначаться содержимое конфигурационных файлов
Если вы хотите попробовать дистрибутив без установки, то предлагаю скачать шаблон для VirtualBox. Пароль пользователя root: root, пароль позльзователя user: user.
Установка
Мы скачали дистрибутив и создали загрузочный диск. Загружаемся с него и видим консоль.
Это всё, что у нас есть. Нам предстоит:
- Подключиться к Сети
- Настроить время
- Разметить диск
- Смонтировать разделы
- Установить базовый комплект пакетов
- Создать fstab
- Chrootнуться в систему
- Настроить время
- Настроить локализацию
- Сделать базовые настройки сети
- Создать Initramfs
- Задать пароль root
- Установить GRUB
Это самое базовое, что нам требуется для работы и в итоге мы получим пустую систему с доступом в Сеть и локализованным интерфейсом.
Подключение к Сети
Выполним команду:
ip link
После выполнения команды, смотрим имя устройства. Искомое Я выделил красным. Если устройство не определилось, вам сюда.
Получаем настройки протокола IP:
dhcpcd enp0s3
Проверим результат:
Настройка времени
timedatectl set-ntp true
Разметка диска
Я предпочитаю использовать cfdisk. Он позволяет быстро и просто разметить диск.
Созданные разделы требуется отформатировать. Так-же включим swap. Если Вы устанавливаете на UEFI, то не забудьте раздел 250Мб, отформатируйте его в FAT32.
mkfs.reiserfs /dev/sda1 mkswap /dev/sda2 swapon /dev/sda2
Монтирование файловых системы
mount /dev/sda1 /mnt
Отсутствие ответа от команды говорит об успешной операции. Если Вы устанавливаете на UEFI, то не забудьте наш созданный раздел FAT32 смонтировать в /mnt/efi. Подробно тут.
Проверить что у куда смонтировали удобно командой:
df -T -h
Установка базовых пакетов
pacstrap /mnt base linux linux-firmware
Создание fstab
genfstab -U /mnt >> /mnt/etc/fstab
В ответ команда должна задуматься и промолчать. Просмотрим полученный файл (ранее его не было):
cat /mnt/etc/fstab
Chroot в новую систему
arch-chroot /mnt
В ответ как обычно должна быть тишина
Настройка времени
В ответ как обычно тишина. Просмотреть все временные зоны можно командой:
timedatectl list-timezones
Выбираем нужную и продолжаем.
ln -sf /usr/share/zoneinfo/Europe/Moscow /etc/localtime hwclock --systohc
Локализация
Нам надо раскомментировать нужную кодировку в файле /etc/locale.gen. Нам нужна кодировка ru_RU.UTF-8
Текстовый редактор пока не установлен, установлен его командой
pacman -Syu nano
и продолжаем:
nano /etc/locale.gen
Сохраняем файл и запускаем команду:
locale-gen
Создадим файл:
nano /etc/locale.conf
Со следующим содержимым:
LANG=ru_RU.UTF-8
Установим шрифт, поддерживающий русский язык:
pacman -S terminus-font
Настроим клавиатуру, создав файл:
nano /etc/vconsole.conf
Со следующим содержимым:
LOCALE=ru_RU.UTF-8
KEYMAP=ru
FONT=ter-u16b
CONSOLEMAP=
TIMEZONE=Europe/Moscow
HARDWARECLOCK=UTC
USECOLOR=yes
Настройка сети
Зададим имя компьютера:
nano /etc/hostname
Отредактируем файл hosts как на снимке ниже
nano /etc/hosts
Есть масса вариантов настроить сеть, но я предпочитаю Networkd. Создадим файл настроек:
nano /etc/systemd/network/20-wired.network
[Match]
Name=enp0s3
[Network]
DHCP=ipv4
Командуем:
systemctl enable systemd-networkd Pacman -Syu dhcpcd systemctl enable dhcpcd.service
Создание Initramfs
mkinitcpio -p linux
Задание пароля root
passwd
Установка GRUB
Владельцам компьютеров на UEFI лучше почитать тут. У нас всё проще, поэтому командуем:
pacman -S grub grub-install --target=i386-pc /dev/sda grub-mkconfig -o /boot/grub/grub.cfg
Перезапуск
exit reboot
После перезагрузки создадим обычного пользователя:
useradd -m user passwd user
В итоге мы получили установленную, руссифицированную операционную систему. В ней мы имеем консоль и настроенный интернет. Этого достаточно чтобы продолжить установку окружения рабочего стола. Но об этом в другой раз.