В статията "Минимална базова инсталация на Arch" показахме как се инсталира Arch linux в максимално орязан вариант. Сега ще се постараем да направим системата поносима за ползване, като няма да се увличаме в множество инсталации. Първия и главен проблем, който се набива на очи е, че работим в системата като главен потребител (root). Това е голяма дупка за хакване и първото нещо което ще изправим е именно това. Обаче едновременно с това да оправим времевата зона в която работим и да синхронизираме времето.
За начало да обновим репозиторите и системата.
pacman -Syy pacman -Syu
ln -sf /usr/share/zoneinfo/Europe/Sofia /etc/localtime hwclock --systohc
Сега ако изберем:
date Sat May 31 13:34:26 EEST 2025
Имаме синхронизирани дата и време за нашия регион. Да определим какъв език ще ползваме в системата. Предпочитам Английски, защото има по-малко бъгове. Българския също работи но за някои опции има проблеми. За целта ще ползваме конзолен текстов редактор nano. Да го инсталираме.
pacman -S nano
Да конфигурираме и езика на системата.
echo "bg_BG.UTF-8 UTF-8" >> /etc/locale.gen echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen
Ако пък искате да виждате какво правите използвайте текстовия редактор.
nano /etc/locale.gen #bg_BG.UTF-8 UTF-8 bg_BG.UTF-8 UTF-8 #en_US.UTF-8 UTF-8 en_US.UTF-8 UTF-8
Дефинирахме езика който ще ползва системата. Да генерираме локалните настройки които указахме по-горе.
locale-gen Generating locales... bg_BG.UTF-8... done en_US.UTF-8... done Generation complete.
Да създадем конфигурационен файл указващ езика който ще показва системата ни.
echo LANG=en_US.UTF-8 > /etc/locale.conf
Тук ми се иска да се спра малко по-подробно. Ако бяхме ползвали език за показване да е Български. Примерно вместо en_US.UTF-8 бяхме сложили bg_BG.UTF-8, то тогава надписите нямаше да излязат на Български, а щяха да се показват във вид на квадратчета или там някакви непонятни знаци. За да няма неразбираеми знаци трябва да се оправи още един файл, който оправя шрифтовете.
echo KEYMAP=us > /etc/vconsole.conf echo FONT=UniCyr_8x16 >> /etc/vconsole.conf
Клавиатурната подредба ще ни е англиска. Освен това ще ползваме шрифт, който ще кирилизира непознатите символи. Шрифта също е уникод както дефинирахме по-горе системата. Горната операция може да се направи също така и през текстовия редактор.
nano /etc/vconsole.conf KEYMAP=us FONT=UniCyr_8x16
За Българския език на клавиатурата командата ще е:
echo KEYMAP=bg >> /etc/vconsole.conf
Ако искате веднага да ползвате настройките които сега направихте ще трябва системата да се рестартира. Това ще преинициализира фрейм-буфер екрана. Трябва да предупредя!!! Понякога фрейм-бувера не тръгва с новите настройки, понякога тръгва. Затова избягвам да ползвам Българския език в конзолен режим на работа.
Да създадем допълнителен потребител неразполагащ с правата на root. Не е добра практика да се работи с главния потребите. Той ще може да ползва допълнителни права чрез sudo. За начало да инсталираме пакета.
pacman -Sy sudo
Да създадем и допълнителния потребител, който да членува в тази група.
useradd -g users -G wheel,audio -s /bin/bash -m cccp
Да дадем парола за потребителя cccp.
passwd cccp New password: Pa$$ Retype new password: Pa$$ passwd: password updated successfully
Да подготвим потребителя за работа с графична среда. За целта трябва да го добавим към още няколко групи.
usermod -aG video,storage,power cccp
Да дадем на потребителя cccp, sudo права.
echo "%wheel ALL=(ALL:ALL) ALL" >> /etc/sudoers
Започваме с дефиниране на хоста.
echo My-PC >> /etc/hostname
Да поправим и файла hosts
echo "127.0.1.1 My-PC.localdomain My-PC" >> /etc/hosts cat /etc/hosts # Static table lookup for hostnames. # See hosts(5) for details. 127.0.0.1 localhost ::1 localhost 127.0.1.1 My-PC.localdomain My-PC
Да рестартираме системата и наново да влезем през потребителя cccp.
reboot
Много рядко но ще се наложи да работите със статични IP адреси. Нека да покажем и тази част.
ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host noprefixroute valid_lft forever preferred_lft forever 2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 00:0c:29:05:b9:77 brd ff:ff:ff:ff:ff:ff altname enp2s0 altname enx000c2905b977 inet 192.168.11.75/24 brd 192.168.11.255 scope global dynamic noprefixroute ens32 valid_lft 535sec preferred_lft 535sec inet6 fe80::a418:6b3f:370:52ef/64 scope link noprefixroute valid_lft forever preferred_lft forever ip link set ens32 up ip r default via 192.168.11.1 dev ens32 proto dhcp src 192.168.11.75 metric 100 192.168.11.0/24 dev ens32 proto kernel scope link src 192.168.11.75 metric 100 systemctl disable NetworkManager Removed '/etc/systemd/system/multi-user.target.wants/NetworkManager.service'. Removed '/etc/systemd/system/dbus-org.freedesktop.nm-dispatcher.service'. Removed '/etc/systemd/system/network-online.target.wants/NetworkManager-wait-online.service'. systemctl enable systemd-networkd systemctl start systemd-networkd Created symlink '/etc/systemd/system/dbus-org.freedesktop.network1.service' → '/usr/lib/systemd/system/systemd-networkd.service'. Created symlink '/etc/systemd/system/multi-user.target.wants/systemd-networkd.service' → '/usr/lib/systemd/system/systemd-networkd.service'. Created symlink '/etc/systemd/system/sockets.target.wants/systemd-networkd.socket' → '/usr/lib/systemd/system/systemd-networkd.socket'. Created symlink '/etc/systemd/system/sysinit.target.wants/systemd-network-generator.service' → '/usr/lib/systemd/system/systemd-network-generator.service'. Created symlink '/etc/systemd/system/network-online.target.wants/systemd-networkd-wait-online.service' → '/usr/lib/systemd/system/systemd-networkd-wait-online.service'. nano /etc/systemd/network/ens32.network [Match] Name=ens32 [Network] Address=192.168.11.67/24 Gateway=192.168.11.1 DNS=1.1.1.1 DNS=8.8.8.8 sudo systemctl list-unit-files | grep enabled | grep netctl
sudo nano /etc/bash.bashrc # най-отдолу alias ll="ls -lh --color=auto" source /etc/bash.bashrc
git clone https://aur.archlinux.org/yay-git.git cd yay-git makepkg -si cd .. rm -rf yay-git/ sudo yay -Syu