Устанавливаем Arch Linux

Archlinux

При написания этого руководства активно использовалась вики Арча и в частности Beginners' Guide, который я настоятельно всем рекомендую.

Подготовка #

Скачайте последний образ и загрузитесь с него.

wi-fi #

wifi-menu

Если нужно узнать mac/hwaddr, чтобы добавить его в белый список:

ip link show wlan0

sshd #

Я предпочитаю выполнять все операции по базовой установке системы через ssh, как минимум, чтобы не вбивать все команды вручную.

Задайте пароль рута:

passwd

И запустите сам сервер:

systemctl start sshd

На клиенте:

ssh root@192.168.0.25

Разделы и файловая система #

Создайте нужные разделы, у меня они выглядят так:

  • / — рут, всё свободным место ssd, за вычетом 20G. Все системные файлы и конфиги
  • /data — 20gb, для всех важных данных (проекты, скрипты, документы, фотографии). Второй раздел ssd.
  • /storage — жёсткий диск на 2T. Всякий мусор и бэкапы.

Я не создаю отдельного раздела для swap, и не советую это делать, если у вас от 4G оперативной памяти.

Алгоритм действий может быть примерно таким (если разбиваете один диск):

fdisk -l
fdisk /dev/sda
p
o
n
p
1

a
1
p
w

Создайте ext4 на нужном диске (отформатирует его, если на нём уже есть данные):

mkfs -t ext4 /dev/sda1

И монтируйте корневой раздел:

mount /dev/sda1 /mnt

Ядро системы #

Заправим лист зеркал, этот же сервер будет использоваться в установленной системе:

echo 'Server = http://archlinux.limun.org/$repo/os/$arch' > /etc/pacman.d/mirrorlist

У меня возникали проблемы при обновлении с зеркал Яндекса, поэтому немецкий limun.org.

Устанавливаем базовые пакеты:

pacstrap /mnt base base-devel
pacstrap /mnt grub-bios

fstab #

Генерируем fstab:

genfstab -U -p /mnt >> /mnt/etc/fstab

И сразу проверяем его на корректность:

nano /mnt/etc/fstab
UUID=ede1432e-64c2-446f-9936-8f84d3a479db  /  ext4  rw,relatime  0 1

После этого можно переходить в созданное окружение

chroot и первоначальная настройка #

arch-chroot /mnt /bin/bash

pacman / yaourt #

cp /etc/pacman.conf /etc/pacman.conf.bak
echo '[archlinuxfr]
Server = http://repo.archlinux.fr/$arch' >> /etc/pacman.conf
pacman -Syyu --noconfirm yaourt && yaourt -Syua --noconfirm

grub #

pacman -S --noconfirm os-prober
grub-install /dev/sda
grub-mkconfig -o /boot/grub/grub.cfg

sshd #

Установим sshd, чтобы продолжить настройку через ssh после перезагрузки:

pacman -S --noconfirm openssh

И включим его автозагрузку на время установки:

systemctl enable sshd.service

Название хоста и dhcp #

echo laundry > /etc/hostname
systemctl enable dhcpcd@eth0.service

Часовой пояс, формат времени, синхронизация #

ln -s /usr/share/zoneinfo/Europe/Moscow /etc/localtime
hwclock --systohc --utc
pacman -S --noconfirm ntp
ntpd -qg
hwclock -w

Кодировка и шрифт консоли #

echo 'en_US.UTF-8 UTF-8
ru_RU.UTF-8 UTF-8' > /etc/locale.gen
locale-gen
echo 'LANG="en_US.UTF-8"' > /etc/locale.conf
echo 'KEYMAP=ruwin_cplk-UTF-8
FONT=Lat2-Terminus16' > /etc/vconsole.conf
sed -i '/^HOOKS="/ s/"$/ consolefont keymap"/' /etc/mkinitcpio.conf
mkinitcpio -p linux

Системный пользователь + root #

groupadd ksevelyar
useradd -m -g ksevelyar -G wheel,storage,power -s /bin/zsh ksevelyar
passwd ksevelyar

Настраиваем sudo:

pacman -S --noconfirm sudo
cp /etc/sudoers /etc/sudoers.bak
echo 'Defaults insults
Defaults timestamp_timeout=30
Defaults env_reset, always_set_home, set_home, set_logname
Defaults passprompt="Sudo invoked by [%u] on [%H]:"

root   ALL=(ALL) ALL

%wheel ALL=(ALL) ALL' > /etc/sudoers

Ставим zsh:

yaourt -S --noconfirm zsh

И делаем его оболочкой для рута:

chsh -s $(which zsh)

Инструменты #

pacman -S --noconfirm p7zip unzip zip unrar rar
pacman -S --noconfirm nano mc
pacman -S --noconfirm curl wget rsync git
pacman -S --noconfirm sshfs ntfs-3g
pacman -S --noconfirm htop ncdu

Если нужен wi-fi:

pacman -S wireless_tools dialog wpa_supplicant

Завершение #

Задайте пароль рута и перезагружайтесь в свежеустановленную систему:

passwd
exit
reboot

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

ssh ksevelyar@192.168.0.25

В ваших руках чистая система, в которой нет мусора.

О том как настроить минималистичное графическое окружение читайте в следующей статье.

Добавить комментарий