Инструкция по установке 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 но это вряд ли сейчас кому то нужно.
Установить пароль суперпользователя: Не пропустите этот пункт, как делал я постоянно.
простая комманда passwd
Установка boot loader'а. Их также существует несколько, но grub, наверное самый популярный. Сначала его нужно скачать:
pacman -S grub os-prober - os-prober нужен для определения других ОС
grub-install /dev/диск - устанавливаем grub (в sda не в 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, по желанию.
В графическом окружении мне делать нечего, настраивайте как хотите, твикайте как хотите.
Спасибо за внимание, надеюсь это будет кому-то полезно, если что-то не понятно - пишите комментарии, понятно - пишите комментарии, больше комментариев богу срача!
Всем пока!