Загружаем образ со страницы загрузок.
В данном случае используется archlinux-2016.04.01-dual.iso
(хотя уже есть сборка 2016.07.01).
Содержание
Запуск
Загружаемся:
Проверяем доступ в интернет:
Что бы упростить дальнейшую установку – устанавливаем OpenSSH:
# pacman -Sy openssh
Запускаем и добавляем в автозагрузку:
# systemctl start sshd.socket # systemctl enable sshd.socket
Устанавливаем пароль root
:
# passwd root
Для удобства – продолжаем установку через SSH:
$ ssh [email protected] [email protected]'s password: Last login: Fri Apr 8 08:19:09 2016 root@archiso ~ #
Разбивка диска
Диск будет разбит на три раздела:
/boot
– загрузочный раздел;swap
– область подкачки;/
– корневой раздел для/home
и других каталогов.
Находим диск:
# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 20G 0 disk sr0 11:0 1 724M 0 rom /run/archiso/bootmnt loop0 7:0 0 313.1M 1 loop /run/archiso/sfs/airootfs
Устанавливать будем на диск /dev/sda
:
# fdisk -l /dev/sda Disk /dev/sda: 20 GiB, 21474836480 bytes, 41943040 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes
Создаём разделы.
Подробнее о ручной разметке диска и создании разделов – в посте Debian: ручная разбивка диска с fdisk, создание разделов LVM и установка системы:
# fdisk /dev/sda Welcome to fdisk (util-linux 2.27.1). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Device does not contain a recognized partition table. Created a new DOS disklabel with disk identifier 0xda1eb966. Command (m for help): p Disk /dev/sda: 20 GiB, 21474836480 bytes, 41943040 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0xda1eb966 Command (m for help): n Partition type p primary (0 primary, 0 extended, 4 free) e extended (container for logical partitions) Select (default p): p Partition number (1-4, default 1): First sector (2048-41943039, default 2048): Last sector, +sectors or +size{K,M,G,T,P} (2048-41943039, default 41943039): +512M Created a new partition 1 of type 'Linux' and of size 512 MiB. Command (m for help): n Partition type p primary (1 primary, 0 extended, 3 free) e extended (container for logical partitions) Select (default p): p Partition number (2-4, default 2): First sector (1050624-41943039, default 1050624): Last sector, +sectors or +size{K,M,G,T,P} (1050624-41943039, default 41943039): +2G Created a new partition 2 of type 'Linux' and of size 2 GiB. Command (m for help): n Partition type p primary (2 primary, 0 extended, 2 free) e extended (container for logical partitions) Select (default p): p Partition number (3,4, default 3): First sector (5244928-41943039, default 5244928): Last sector, +sectors or +size{K,M,G,T,P} (5244928-41943039, default 41943039): Created a new partition 3 of type 'Linux' and of size 17.5 GiB. Command (m for help): p Disk /dev/sda: 20 GiB, 21474836480 bytes, 41943040 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0xda1eb966 Device Boot Start End Sectors Size Id Type /dev/sda1 2048 1050623 1048576 512M 83 Linux /dev/sda2 1050624 5244927 4194304 2G 83 Linux /dev/sda3 5244928 41943039 36698112 17.5G 83 Linux Command (m for help): a Partition number (1-3, default 3): 1 The bootable flag on partition 1 is enabled now. Command (m for help): t Partition number (1-3, default 3): 2 Partition type (type L to list all types): 82 Changed type of partition 'Linux' to 'Linux swap / Solaris'. Command (m for help): p Disk /dev/sda: 20 GiB, 21474836480 bytes, 41943040 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0xda1eb966 Device Boot Start End Sectors Size Id Type /dev/sda1 * 2048 1050623 1048576 512M 83 Linux /dev/sda2 1050624 5244927 4194304 2G 82 Linux swap / Solaris /dev/sda3 5244928 41943039 36698112 17.5G 83 Linux Command (m for help): w The partition table has been altered. Calling ioctl() to re-read partition table. Syncing disks.
Создаём файловые системы. Ext2 – для /boot
на sda1
, и Ext4 – для /
на sda3
:
# mkfs.ext2 /dev/sda1 mke2fs 1.42.13 (17-May-2015) Creating filesystem with 131072 4k blocks and 32768 inodes Filesystem UUID: 72b69f3c-21b1-4823-9e14-d02b544161e9 Superblock backups stored on blocks: 32768, 98304 Allocating group tables: done Writing inode tables: done Writing superblocks and filesystem accounting information: done
# mkfs.ext4 /dev/sda3 mke2fs 1.42.13 (17-May-2015) Creating filesystem with 4587264 4k blocks and 1146880 inodes Filesystem UUID: 022ba838-6d58-4703-9de4-ce7d35b46aaa Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000 Allocating group tables: done Writing inode tables: done Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done
Монтируем созданные разделы в каталог /mnt.
Корневой раздел:
# mount /dev/sda3 /mnt
Раздел /boot
:
# mkdir /mnt/boot # mount /dev/sda1 /mnt/boot/
# ls -l /mnt/ total 20 drwxr-xr-x 3 root root 4096 Apr 8 08:37 boot drwx------ 2 root root 16384 Apr 8 08:37 lost+found
Установка Arch Linux
Устанавливаем базовую систему:
# pacstrap -i /mnt/ base base-devel ==> Creating install root at /mnt/ ==> Installing packages to /mnt/ :: Synchronizing package databases... ... :: There are 50 members in group base: :: Repository core 1) bash 2) bzip2 3) coreutils 4) cryptsetup 5) device-mapper 6) dhcpcd 7) diffutils 8) e2fsprogs 9) file 10) filesystem 11) findutils 12) gawk 13) gcc-libs 14) gettext 15) glibc 16) grep 17) gzip 18) inetutils 19) iproute2 20) iputils 21) jfsutils 22) less 23) licenses 24) linux 25) logrotate 26) lvm2 27) man-db 28) man-pages 29) mdadm 30) nano 31) netctl 32) pacman 33) pciutils 34) pcmciautils 35) perl 36) procps-ng 37) psmisc 38) reiserfsprogs 39) s-nail 40) sed 41) shadow 42) sysfsutils 43) systemd-sysvcompat 44) tar 45) texinfo 46) usbutils 47) util-linux 48) vi 49) which 50) xfsprogs Enter a selection (default=all): ... Total Download Size: 222.87 MiB Total Installed Size: 753.33 MiB :: Proceed with installation? [Y/n] y ... (140/141) installing pkg-config [################################################################] 100% (141/141) installing sudo [################################################################] 100%
Создаём файл fstab
:
# genfstab -U -p /mnt >> /mnt/etc/fstab
Проверяем его:
# cat /mnt/etc/fstab # # /etc/fstab: static file system information # # <file system> <dir> <type> <options> <dump> <pass> # /dev/sda3 UUID=d2a090cf-c9de-4c64-be46-f2e7a7fe73d5 / ext4 rw,relatime,data=ordered 0 1 # /dev/sda1 UUID=53d1e6b2-80a0-42d4-8cdc-e3cced5f2bdd /boot ext2 rw,relatime,block_validity,barrier,user_xattr,acl 0 2
Проверяем UUID дисков:
# blkid /dev/sda1 /dev/sda1: UUID="53d1e6b2-80a0-42d4-8cdc-e3cced5f2bdd" TYPE="ext2" PARTUUID="ad96dcfe-01" blkid /dev/sda3 /dev/sda3: UUID="d2a090cf-c9de-4c64-be46-f2e7a7fe73d5" TYPE="ext4" PARTUUID="ad96dcfe-03"
С помощью скрипта /usr/bin/arch-chroot
– меняем окружение и переключаемся в установленную систему:
# arch-chroot /mnt sh-4.3# bash
Устанавливаем имя хоста:
# echo setevoyarch > /etc/hostname
Устанавливаем загрузчик:
# pacman -S grub-bios # grub-install /dev/sda Installing for i386-pc platform. Installation finished. No error reported.
# cp /usr/share/locale/en\@quot/LC_MESSAGES/grub.mo /boot/grub/locale/en.mo # grub-mkconfig -o /boot/grub/grub.cfg Generating grub configuration file ... Found linux image: /boot/vmlinuz-linux Found initrd image: /boot/initramfs-linux.img Found fallback initramfs image: /boot/initramfs-linux-fallback.img done
Выходим из bash
и chroot
-окружения по Ctrl+D:
# exit exit sh-4.3# exit exit
Перезагружаемся:
# reboot Connection to 10.11.100.20 closed by remote host. Connection to 10.11.100.20 closed.
Выбираем загрузку установленной системы:
Настройка сети
С помощью ip address show
(или – ip link
) находим интерфейсы, в данном случае это будет enp0s3
(о переименовании интерфейса – в следующий раз).
Запускаем dchpcd enp0s3
для получения адреса:
Устанавливаем и запускаем OpenSSH:
# pacman -Sy openssh # systemctl start sshd.socket # systemctl enable sshd.socket
Добавляем пользователя:
# useradd -m -G wheel setevoy # passwd setevoy
Разрешаем группе wheel
пользоваться sudo
:
# visudo
Раскоментирууем строку:
... ## Uncomment to allow members of group wheel to execute any command %wheel ALL=(ALL) ALL ...
Логинимся:
$ ssh [email protected] [email protected]'s password: Last login: Sat Jul 9 10:02:33 2016 from 10.11.100.79 [setevoy@setevoyarch ~]$ sudo -s [sudo] password for setevoy:
Копируем файл настроек для интерфейса:
# cp /etc/netctl/examples/ethernet-dhcp /etc/netctl/enp0s3
# cat /etc/netctl/enp0s3 Description='A basic dhcp ethernet connection' Interface=eth0 Connection=ethernet IP=dhcp #DHCPClient=dhcpcd #DHCPReleaseOnStop=no ## for DHCPv6 #IP6=dhcp #DHCP6Client=dhclient ## for IPv6 autoconfiguration #IP6=stateless
Редактируем строку:
... Interface=eth0 ...
И меняем имя интерфейса:
... Interface=en0s3 ...
Редактируем файл /etc/systemd/system/netctl\@enp0s3.service
и там тоже меняем имя интерфейса:
... BindsTo=sys-subsystem-net-devices-enp0s3.device After=sys-subsystem-net-devices-enp0s3.device ...
Проверяем, и добавляем автозапуск:
# netctl status enp0s3 * [email protected] - Networking for netctl profile enp0s3 Loaded: loaded (/usr/lib/systemd/system/[email protected]; static; vendor preset: disabled) Active: inactive (dead) Docs: man:netctl.profile(5)
# netctl enable enp0s3 ln -s '/etc/systemd/system/[email protected]' '/etc/systemd/system/multi-user.target.wants/[email protected]'
Готово.
Ссылки по теме
Build a Killer Customized Arch Linux Installation (2012 год)
How to install Arch Linux with XFCE Desktop
Arch Linux guide: the always up-to-date Arch Linux tutorial