232 lines
7.2 KiB
Bash
232 lines
7.2 KiB
Bash
#swap
|
||
mkswap -L swap /dev/sda2
|
||
swapon /dev/sda2
|
||
|
||
#boot #efi
|
||
mkfs.fat -F 32 /dev/nvme0n1p1
|
||
|
||
#btrfs
|
||
mkfs.btrfs -L arch /dev/sda3 -f
|
||
mount /dev/sda3 /mnt
|
||
btrfs su cr /mnt/@
|
||
btrfs su cr /mnt/@var
|
||
btrfs su cr /mnt/@home
|
||
btrfs su cr /mnt/@snapshots
|
||
umount /mnt
|
||
# compress=zstd:2 оптимально по скорости чтение-запись
|
||
mount -o noatime,compress=zstd:2,space_cache=v2,ssd,subvol=@ /dev/sda3 /mnt
|
||
mkdir -p /mnt/{home,boot,var,.snapshots}
|
||
mount -o noatime,compress=zstd:2,space_cache=v2,ssd,subvol=@var /dev/sda3 /mnt/var
|
||
mount -o noatime,compress=zstd:2,space_cache=v2,ssd,subvol=@home /dev/sda3 /mnt/home
|
||
mount -o noatime,compress=zstd:2,space_cache=v2,ssd,subvol=@snapshots /dev/sda3 /mnt/.snapshots
|
||
|
||
|
||
# --------- ext4 ----------
|
||
mkfs.ext4 /dev/sda3
|
||
mount -o noatime,commit=120 /dev/sda3 /mnt
|
||
|
||
# или отдельно с /home
|
||
# mkdir /mnt/home && mount -o noatime,commit=120 /dev/nvme0n1p(x) /mnt/home
|
||
|
||
# -------------
|
||
|
||
# Mounting Boot
|
||
mkdir -p /mnt/boot
|
||
mount /dev/sda1 /mnt/boot
|
||
|
||
# Установка базовой части системы
|
||
pacman -Sy archlinux-keyring
|
||
pacman-key --init
|
||
pacman-key --populate archlinux
|
||
pacman -Syy
|
||
pacstrap -K /mnt base linux linux-firmware nano
|
||
|
||
# Генерируем fstab
|
||
genfstab -pU /mnt >> /mnt/etc/fstab
|
||
|
||
# лезем в chroot
|
||
arch-chroot /mnt
|
||
passwd
|
||
|
||
hwclock --systohc --utc
|
||
nano /etc/hostname
|
||
|
||
ln -sf /usr/share/zoneinfo/Europe/Moscow /etc/localtime
|
||
nano /etc/locale.gen
|
||
|
||
locale-gen
|
||
nano /etc/vconsole.conf
|
||
KEYMAP=ru
|
||
FONT=cyr-sun16
|
||
|
||
echo 'LANG=ru_RU.UTF-8' >> /etc/locale.conf
|
||
|
||
nano /etc/hosts
|
||
127.0.0.1 localhost
|
||
::1 localhost
|
||
127.0.1.1 name.localdomain name
|
||
|
||
|
||
pacman-key --init
|
||
pacman-key --populate archlinux
|
||
|
||
# Открыть multilib-репозиторий
|
||
nano /etc/pacman.conf
|
||
#(multilib-раскоментировать)
|
||
pacman -Sy
|
||
pacman -S mc bash-completion openssh arch-install-scripts git wget htop ntfs-3g
|
||
mkinitcpio -p linux
|
||
|
||
# сеть
|
||
# ------- dhcpcd -------
|
||
nano /etc/dhcpcd.conf
|
||
interface eth0
|
||
static ip_address=192.168.0.10/24
|
||
static routers=192.168.0.1
|
||
static domain_name_servers=192.168.0.1 8.8.8.8
|
||
|
||
systemctl enable dhcpcd
|
||
|
||
#--------netctl --------------
|
||
pacman -S netctl
|
||
systemctl enable netctl
|
||
cp /etc/netctl/examples/ethernet-static /etc/netctl/eth0-work
|
||
nano /etc/netctl/eth0-work
|
||
|
||
netctl start eth0-work
|
||
netctl enable eth0-work
|
||
|
||
# обновление конфигурации автостарта после изменения настроек профиля
|
||
netctl reenable eth0-work
|
||
|
||
#----------networkmanager---------#
|
||
pacman -S networkmanager
|
||
systemctl enable NetworkManager
|
||
#------------
|
||
|
||
nano /etc/ssh/sshd_config
|
||
|
||
systemctl enable sshd
|
||
|
||
nano /etc/pacman.conf
|
||
# ParallelDownloads = 5 число на 45
|
||
|
||
# список зеркал: nano /etc/pacman.d/mirrorlist
|
||
|
||
# Настройка пользователей
|
||
pacman -S sudo
|
||
|
||
nano /etc/sudoers
|
||
# раскоментировать wheel после root
|
||
|
||
useradd -m -g users -G wheel apulkin
|
||
passwd apulkin
|
||
|
||
sudo systemctl enable NetworkManager
|
||
|
||
#-----------Загрузчик----------------#
|
||
# Проверка режима загрузки
|
||
cat /sys/firmware/efi/fw_platform_size
|
||
|
||
# EFI
|
||
pacman -S grub efibootmgr grub-btrfs os-prober
|
||
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=grub
|
||
grub-mkconfig -o /boot/grub/grub.cfg
|
||
|
||
# BIOS
|
||
pacman -S grub
|
||
grub-install /dev/vda
|
||
grub-install --target=i386-pc /dev/sda
|
||
|
||
# система gpt, загрузчик bios:
|
||
# раздел в 1мб
|
||
grub-install /dev/sda
|
||
grub-mkconfig -o /boot/grub/grub.cfg
|
||
|
||
# Рядом с windows
|
||
pacman -S refing gdisk
|
||
refind-install
|
||
lsblk
|
||
nano /boot/ TAB efi/ Tab refind/refind.conf
|
||
# найти ==arch linux== options "root" par xxx заменить на это root=PAR... = /dev/sda2 rw add_efi_mcmmap
|
||
|
||
nano /boot/ Tab /refind-linux.conf
|
||
# удалить строки кроме 3-ей
|
||
|
||
exit
|
||
umount /mnt -l
|
||
reboot
|
||
|
||
# Графика
|
||
pacman -S xdg-user-dirs
|
||
|
||
# xf86-video-amdgpu — новый, свободный драйвер для видеокарт AMD. xf86-video-ati — старый свободный драйвер для AMD. xf86-video-intel — драйвер для встроенной графики Intel. xf86-video-nouveau — свободный драйвер для карт NVIDIA. xf86-video-vesa — свободный драйвер, поддерживающий все карты, но с очень ограниченной функциональностью. Для виртуальной машины. nvidia — проприетарный драйвер для NVIDIA.Проприетарные драйвера обычно увеличивают производительность.
|
||
|
||
# Intel
|
||
sudo pacman -S xf86-video-intel intel-media-driver lib32-mesa
|
||
|
||
# AMD
|
||
# Драйверы для видеокарты уже в ядре.
|
||
# Для поддержки графических API нужны mesa и vulkan-radeon
|
||
# Для Steam ещё и 32-битные версии этих
|
||
# amdvlk не использовать
|
||
sudo pacman -S xf86-video-amdgpu vulkan-radeon libva-mesa-driver mesa-vdpau
|
||
|
||
# для VM
|
||
sudo pacman -S xf86-video-vesa
|
||
|
||
# Xorg
|
||
# Xorg должен нормально работать без проприетарных драйверов, которые обычно требуются только для дополнительных возможностей, таких как аппаратное ускорение 3D-рендеринга в играх. Исключением из этого правила являются новейшие графические процессоры (особенно видеокарты NVIDIA), которые не поддерживаются драйверами с открытым исходным кодом.
|
||
|
||
sudo pacman -S xorg xorg-server xorg-xinit xorg-drivers mesa
|
||
|
||
# Окружение
|
||
# KDE
|
||
sudo pacman -S plasma kde-applications sddm
|
||
systemctl enable sddm
|
||
pacman -S --needed xorg sddm;
|
||
|
||
# XFCE
|
||
pacman -S xfce4 xfce4-goodies lxdm ttf-liberation ttf-dejavu network-manager-applet ppp
|
||
systemctl enable lxdm
|
||
# ВАЖНО: в конце установки надо поправить fstab
|
||
sudo nano /etc/fstab
|
||
# убираем в строках слова subvolid=***
|
||
|
||
|
||
# АУДИО
|
||
pacman -S pulseaudio-alsa gvfs thunar-volman
|
||
|
||
|
||
# AUR-yay
|
||
sudo pacman -S base-devel
|
||
git clone https://aur.archlinux.org/yay.git && cd yay && makepkg -si
|
||
|
||
|
||
# PACMAN
|
||
# Обновление ключей
|
||
pacman-key --init --keyserver hkps://keys.openpgp.org
|
||
gpg --keyserver-options auto-key-retrieve --verify archlinux-version-x86_64.iso.sig
|
||
pacman-key --refresh-keys
|
||
|
||
# JNLP
|
||
sudo pacman -S icedtea-web
|
||
|
||
|
||
# ПО
|
||
sudo pacman -S mc obsidian telegram-desktop
|
||
sudo pacman -S keepassxc mc htop net-tools
|
||
sudo pacman -S net-tools thunderbird ksnip remmina qbittorrent mc vlc ntp wireguard-tools freerdp
|
||
|
||
echo "username=smbusr100" | sudo tee -a /etc/cifs-credentials
|
||
echo "password=n023\\$hied43fb" | sudo tee -a /etc/cifs-credentials
|
||
sudo chmod +rw /etc/cifs-credentials
|
||
echo "/- /etc/autofs/auto.sdb --ghost,--timeout=30" | sudo tee -a /etc/autofs/auto.master
|
||
echo "/srv/DLNA -fstype=cifs,rw,noperm,vers=3.0,credentials=/etc/cifs-credentials,file_mode=0770,dir_mode=0770 ://10.9.1.3/DLNA" | sudo tee -a /etc/autofs/auto.sdb
|
||
|
||
systemctl restart autofs.service
|
||
systemctl enable autofs.service
|
||
|
||
|
||
|