32

Инструкция по установке Arch linux из консоли (Arch Way)

Всем привет!

Я видел здесь на пикабу уже не один гайд по установке дистрибутива с графическим установщиком. Поэтому я решил склеить пост по установке арча из консоли - так как задумано разработчиками.

Я не так давно перешел на арч, и первый раз устанавливал его с помощью Architect Linux, это псевдо графический установщик, рекомендую его тем кто хочет попробовать арч, но боится установки.

Я надеюсь, люди читающие(если такие будут :D), знают что такое менеджер пакетов, менеджер дисплея, окружение рабочего стола, boot loader, и т.д., для этого есть другие посты на пикабу. 

Я использовал VirtualBox и порядок установки с официальной арч вики.

Установка рассчитана на машины с BIOS и HDD, это не значит что для SSD или UEFI все по-другому, просто надо учитывать разные нюансы, и возможно что то делать не так как я. 

У меня возможности проверить это нету, за это прошу прощения.

Скачать образ можна здесь, сделать загрузочную флешку можна с помощью этого на винде, и с помощью утилиты dd на линуксе, есть другие способы, конечно, пользуйтесь чем вам удобнее.


Загружаемся с диска, выбираем разрядность, система загружается, видим консоль и ничего больше, разминаем пальцы, и начинаем творить!

Раскладка клавиатуры. По умолчанию раскладка us, этот пункт пропускаем.

Соединение с интернетом. Чтобы выбрать вайфай точку пишем: wifi-menu

проводное соединение подхватится автоматом.

Синхронизация системных часов. Я не совсем понимаю зачем это нужно на этом этапе, может быть из-за сертификатов каких то или что, просто вписываем:

timedatectl set-ntp true - для активации ntp

timedatectl status - для проверки

Разбивание дисков на разделы. Существует много способов и методов это сделать, кто то использует текстовые утилиты, кто то заранее режет диск в чем то графическом, я буду использую cfdisk - удобная и достаточно универсальная, на мой взгляд, утилита.
Вписываем: cfdisk и вам откроется вот такое меню:

Сделал два основных раздела по 7гб и 1гб swap (раздел подкачки, я не знаю куда делся 1мб)

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

Если вам это не надо, создавайте один, если много оперативной памяти, можна обойтись без swap-раздела.

Форматирование разделов. Для просмотра дисков и разделов используем lsblk

Тут всё достаточно ясно, sda - это диск, он делится на три раздела: sda1, sda2, sda3.

Теперь форматируем с помощью mkfs

mkfs.файловая_система /dev/раздел

То есть чтобы отформатировать раздел sda1 в ext4 нужно ввести:

mkfs.ext4 /dev/sda1

mkswap /dev/раздел - Создаем swap-раздел (у меня /dev/sda3)

swapon /dev/раздел - монтируем его.

Монтирование разделов. Ок, здесь все предельно просто - есть раздел на диске, есть папочка к которой он прикреплен, /mnt будет корнем вашей системы

mount /dev/sda1 /mnt - монтируем первый раздел в корень

mkdir /mnt/home - создаем домашнюю папку

mount /dev/sda2 /mnt/home - монтируем второй раздел в домашнюю папку, то есть теперь папка home это и есть ваш второй раздел. lsblk для проверки:

Установка. Раздел в арч вики из двух пунктов: выбор зеркал загрузки и установка основных пакетов. Никогда не трогал mirrorlist, всегда была нормальная скорость, это можна сделать и после установки, этот пункт я пропускаю.
Установка базы, я советую тут повторить за мной, ибо если вам нужен доступ к AUR(Arch User Repository) вам надо будет base-devel(есть возможность поставить когда угодно).


pacstrap /mnt base base-devel - запускаем и идем делать чаечек или кофеечек.

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

Чтобы система знала какие разделы монтировать при старте, нужно сгенерировать fstab:

genfstab -U /mnt >> /mnt/etc/fstab - для генерации

cat /mnt/etc/fstab - для проверки

Change root. Здесь мы просто переходим в нашу недавно скачанную систему, теперь можна устанавливать все что угодно, оно останется у вас.

Знакомьтесь, pacman - лучший пакетный менеджер в мире линукса! Краткий гайд:

pacman -Syy - обновление баз пакмэна(как apt-get update в дэбианоподбных)

pacman -Syyu - обновление баз плюс обновление пакетов

pacman -S имя_пакета1 имя_пакета2 - установка пакетов из репозитория

pacman -Sy имя_пакета1 имя_пакета2 - обновление баз плюс установка пакетов

pacman -Ss текст - поиск пакетов в репозитории


Меняем корень:

arch-chroot /mnt - после смены корня, так называемый shell prompt изменится

Называем компьютер:

echo имя_компьютера > /etc/hostname

Можна еще изменить файл /etc/hosts, для отображения имени в локальной сети, но я забыл, потому нет скриншота, извините.

Выбираем часовой пояс:

ln -s /usr/share/zoneinfo/Зона/Субзона /etc/localtime

Эта команда создает, так называемую символическую ссылку выбранного пояса в папке /etc

Для просмортра возможные поясов исользуйте ls /usr/share/zoneinfo

Локаль и настройка локали. Поскольку, я всегда использовал en_GB, здесь мне пришлось чуток помучаться, нам нужна русская локаль UTF-8 и консольный шрифт поддерживающий кириллицу, есть и встроенные но я скачал terminus.

вводим nano etc/locale.gen двигаемся стрелочками вниз и раскомментируем нужные локали (убираем #), после чего Ctrl-O для сохранения, подтверждаем имя, и Ctrl-X для выхода. Вводим locale-gen для генерации тех самых локалей, после этого:

echo LANG=ru_RU.UTF-8 > /etc/locale.conf - обязательно UTF-8

pacman -S terminus-font - качаем шрифт терминус

nano /etc/vconsole.conf - устанавливаем шрифт и переключение клавиатуры по 

Ctrl-Shift(только в консоли, я не уверен нужно ли это вообще, но помню в убунте надо было писать на русском "да/нет"). Если есть желание экспериментировать, консольные шрифты находятся в /usr/share/kbd/consolefonts/ смотрим с помощью ls

Настройка сети в новом окружении. Есть не одна утилита для управления соединениями, я использую Network Manager потому что меня устраивает его работа, и других никогда не пробовал. Качаем Network Manager и по желанию апплет к нему:

pacman -S networkmanager network-manager-applet

Теперь нужно его активировать, без этого сеть работать не будет:

systemctl enable NetworkManager - должно появится такое:

systemctl enable dhcpcd - для активации проводных соединений

nmcli dev wifi connect имя_точки password пароль - для подключения к вайфаю

Но если вы скачали апплет, и установите окружение рабочего стола ДО перезагрузки вы сможете подключиться к вайфаю с помощью иконки в трее, я так делать не буду.


Создать initial RAM disk. Вики скажет вам для чего оно, можна настраивать с помощью этого файла: /etc/mkinitcpio.conf но это вряд ли сейчас кому то нужно.


mkinitcpio -p linux - запускаем и ждем 

Установить пароль суперпользователя: Не пропустите этот пункт, как делал я постоянно.

простая комманда passwd

Установка boot loader'а. Их также существует несколько, но grub, наверное самый популярный. Сначала его нужно скачать:

pacman -S grub os-prober - os-prober нужен для определения других ОС

grub-install /dev/диск - устанавливаем grubsda не в sda1), если возникают ошибки можна добавить --recheck или --force, в виртуалбоксе у меня только с --force работает.

После этого вводим:

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

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

Сам я перезагрузился и залогинился под рутом.

Шрифт терминус и русская локаль:

Создаем пользователя. Если хотите пользователя с огромными толстыми правами, просто переписываем:

useradd -m -g users -G adm,storage,wheel,power,audio,video -s /bin/bash имя_пользователя

passwd имя_пользователя - устанавливаем пароль пользователю

Дальше чтобы работал sudo нужно редактировать /etc/sudoers:

EDITOR=nano visudo - раскомментируем одну из этих строк, с запросом пароля или нет:

Если вы не ставили base-devel, с помощью nano открыть не получится, тогда просто visudo, и вы поймете какой жутко неудобный vi.


Чтобы создать папочки типа "загрузки, картинки" нужен xdg-user-dirs, возможно при установке окружения рабочего стола они сами появятся, не знаю.
xdg-user-dirs-update - для создания этих папочек, используйте эту команду от пользователя которому они нужны.

Основные пакеты для Xserver: ИксСервер нужен для отображения любой графики в линуксе, человечество еще не перешло на вэйленд, самые основный пакеты качаем одной коммандой:

sudo pacman -S ttf-dejavu alsa-utils xorg-server xorg-xinit xorg-twm xterm xorg-server-devel

Теперь нужны видео драйверы, без них тоже ничего работать не будет вот список:

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

xf86-video-ati - свободный ATI

xf86-video-intel - свободный Intel

xf86-video-nouveau - свободный Nvidia

Существуют еще проприетарные драйверы, то есть разработаны самой Nvidia или AMD, но они часто не поддерживают новое ядро или еще какие нибудь траблы.

virtualbox-guest-utils - для виртуалбокса, активируем коммандой:

systemctl enable vboxservice - вводим дважды пароль


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

Я ставлю lightdm и mate, список пакетов, которые я установил:

mate mate-extra lightdm lightdm-gtk-greeter lightdm-gtk-greeter-settings


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

Если ставите KDE, то вам надо будет kde-greeter, советую читать документацию.

Не забудьте активировать дисплей-менеджер:

systemctl enable lightdm.service - для lightdm

systemctl enable lxdm - для lxdm

Для доступа к AUR, редактируем /etc/pacman.conf
sudo текстовый_редактор /etc/pacman.conf (в моем случае pluma)

добавляем в конец, как на скриншоте:


[archlinuxfr]

SigLevel = Never

Server = http://repo.archlinux.fr/$arch


Если у вас 64-битная система, раскомментируйте Multilib репозиторий для доступа к 32-битным пакетам.

Устанавливаем yaourt - инструмент для доступа к AUR

pacman -Sy yaourt

yaourt -S pamac-aur --noconfirm - графический фронт-энд для yaourt, по желанию.

В графическом окружении мне делать нечего, настраивайте как хотите, твикайте как хотите.

Спасибо за внимание, надеюсь это будет кому-то полезно, если что-то не понятно - пишите комментарии, понятно - пишите комментарии, больше комментариев богу срача!

Всем пока!

4
Автор поста оценил этот комментарий

>вы поймете какой жутко неудобный vi


Это так только первые пару раз кажется, пока не научишься из него выходить, и не снизойдёт озарение, зачем в нём всё так сделано, и как же это круто и удобно. После этого любой другой редактор кажется жалкой и неудобной поделкой без какого-то функционала.

раскрыть ветку
4
Автор поста оценил этот комментарий

Отличный дистрибутив, и отлично проделанная работа ТС-у. И если найдутся люди, которые таки установят арчи, да не на какую нибудь виртуалку, а на реальное железо. А затем поплясав с бубном вокруг компа все настроят под себя, то вот еще одна наводка: ребята, не поленитесь и запилите себе набор патчей infinality (так гуглится на ура). Со сглаживанием шрифтов у арчи тяжковато (на первый взгляд), просто  беда. А с этим паком Ваша жизнь изменится к лучшему ))

Под арчи больше двух лет, и больше полугода пытался подружить ноут с Radeon 7440(будь она не ладна) на борту хоть с каким нибудь дистром, пришлось даже познать дзен с генту. Но арчи оказался проворнее.

раскрыть ветку
2
Автор поста оценил этот комментарий

Когда то был стрим, где каждое нажатие клавиши выбиралось большинством вариантов из чата стрима. И да, там ставили arch linux.

раскрыть ветку
2
Автор поста оценил этот комментарий

а что, Арч можно как-то еще устанавливать, кроме как из консоли?

раскрыть ветку
1
Автор поста оценил этот комментарий
Иллюстрация к комментарию
раскрыть ветку