- Jogi nyilatkozat
- 1. Alaprendszer telepítése
- 2. Felhasználói GUI telepítése
- 2.a GNOME telepítése
- 2.b KDE telepítése
- 3 POST install
- 4 Pacman
- 5 ISSUES
- 6 Egyéb csomagok telepítése
A következőket teheted a művel:
- szabadon másolhatod, terjesztheted, bemutathatod és előadhatod a művet
- származékos műveket (feldolgozásokat) hozhatsz létre
Az alábbi feltételekkel:
- Jelöld meg! A szerző vagy a jogosult által meghatározott módon kell meg- jelölni a művet (pl. a szerző és a cím feltüntetésével).
- Ne add el! Ezt a művet nem használhatod fel kereskedelmi célokra
A szerzői jogok tulajdonosának írásos engedélyével bármelyik fenti feltételtől eltérhetsz. A fentiek nem befolyásolják a szabad felhasználáshoz fűződő, illetve az egyéb jogokat
Ez a Legal Code (Jogi változat, vagyis a teljes licenc) szövegének közérthető nyelven megfogalmazott kivonata. Ez a kivonat a http://creativecommons.org/licenses/by-nc/2.5/hu/ oldalon is olvasha- tó. A teljes licensz a http://creativecommons.org/licenses/by-nc/2.5/hu/legalcode olda- lon érhető el.
E jegyzet hivatalos honlapjáról (https://github.com/csekme/arch_install_hun) tölthető le a mindenkori legfris- sebb verzió.
Ez a jegyzet tartalmaz OpenAI ChatGPT válaszokat is, melyek helyességét magam ellenőriztem.
Ez a jegyzet forrásként használja továbbá az Arch linux wiki oldalát.
Bootolható USB létrehozása
$ sudo dd if=archlinux-2024.03.01-x86_64.iso of=/dev/sda bs=515b status=progress
$ syncMiután egy USB, vagy egyéb forrásból származó telepítő segítségével betöltöttük az Arch Linux telepítőt, megkapjuk a konzolt. Elsőként célszerű a billentyűzet kiosztást beállítani hogy könnyű dolgunk legyen a gépeléssel.
Billentyűzet kiosztás beállítása
$ loadkeys huCsatlakozás az internethez
Szükségünk lesz internet eléréshez hogy a csomagokat telepíteni tudjuk. WiFi esetén segítségünkre lesz az iNet wireless daemon (iwd) mely szolgáltat egy parancssoros kis programot az iwctl-t, segítségével tudunk csatlakozni egy routerhez.
Ha beütjük az iwctl parancsot majd egy entert ütünk akkor az iwd interaktív promptját kapjuk meg.
$ iwctl
[iwd]#Ahhoz hogy csatlakozni tudjunk szükségünk lesz az eszköz nevére (wireless kártya) illetve az ssid-ra, a hálozat nevére. A device list segítségével megkereshetjük az eszközünket.
[iwd]# device list
#
# Devices
# -------------------------------------------------------------
# Name Address Powered Adapter Mode
# -------------------------------------------------------------
# wlan0 ... on ... ...A példa alapján a wlan0 az eszközünk. Most már csatlakozhatunk is
[iwd]# station wlan0 connect wifid_ssid-jaLehetőségünk van interaktív prompt helyett egyből csatlakozni a router-hez az iwctl programocskával.
# Wireless esetén
$ iwctl stations wlan0 connect <ssid>
Rendszeróra frissítése
$ timedatectl set-ntp trueA kézikönyv kétféle telepítést mutat be, egy egyszerű telepítést grub bootloader segítségével, illetve egy titkosított partícióra való telepítést systemd-boot segítségével. Későbbiekben csak normál illetve titkosított-ként fogok rá hivatkozni.
A LUKS (Linux Unified Key Setup) egy lemez titkosítási szabvány, amelyet a Linux rendszer használ a lemezek és partíciók biztonságos titkosítására. A LUKS célja, hogy egységes és hordozható formátumot biztosítson a különböző disztribúciók és eszközök között, és a felhasználók számára egyszerűbbé tegye a titkosítás beállítását és használatát.
A LUKS közvetlenül támogatott a Linux kernelben, és felhasználói (user space)eszközökkel, mint például a cryptsetup, kezelhető.
# kilistázzuk a partíciókat
$ fdisk -l
# partícionálás cfdisk segítségével
$ cfdisk /dev/...Hozz létre egy GPT partíciós táblát
A GPT (GUID Partition Table) egy modern partíciós tábla formátum, amelyet az MBR (Master Boot Record) korlátainak kiküszöbölésére fejlesztettek ki. A GPT az UEFI (Unified Extensible Firmware Interface) specifikáció része, és számos előnyt kínál az MBR-rel szemben.
- EFI rendszerpartíció (ESP) (512-1024 MiB,
type: EFI System) - LUKS titkosított partíció (a maradék terület)
Formázd az ESP partíciót FAT32-re:
mkfs.fat -F32 /dev/sdX1LUKS titkosítás és LVM
Titkosítsd a LUKS partíciót
cryptsetup luksFormat /dev/sdX2Nyisd meg a LUKS konténert
cryptsetup open /dev/sdX2 cryptlvmHozz létre egy LVM fizikai kötetet
pvcreate /dev/mapper/cryptlvmHozz létre egy LVM volume groupot
vgcreate vg0 /dev/mapper/cryptlvmHozz létre logikai köteteket a root és swap számára
Root (például 20G):
lvcreate -L 20G vg0 -n rootSwap (például 2G):
lvcreate -L 2G vg0 -n swapA fennmaradó hely (opcionális home partíció):
lvcreate -l 100%FREE vg0 -n homeFájlrendszerek létrehozása
Formázd a logikai köteteket
Root:
mkfs.ext4 /dev/vg0/rootSwap:
mkswap /dev/vg0/swapHome (opcionális):
mkfs.ext4 /dev/vg0/homeMountold a root fájlrendszert
mount /dev/vg0/root /mntHozd létre a szükséges könyvtárakat és mountold azokat
EFI rendszerpartíció:
mkdir /mnt/boot
mount /dev/sdX1 /mnt/bootHome (ha van):
mkdir /mnt/home
mount /dev/vg0/home /mnt/homeAktiváld a swapot
swapon /dev/vg0/swap# kilistázzuk a partíciókat
$ fdisk -l
# partícionálás cfdisk segítségével
$ cfdisk /dev/...cfdisk
Select label type: gpt/dos/sgi/sun
/dev/sda1 - 1G - for /boot EFI
/dev/sda2 - 5G - for root Linux
/dev/sda3 - 1G - for swap Linux swap / Solaris (érdemes a ram kétszeresét megadni, pl.: 16GB esetén 32GB-ot)
formázzuk meg a létrehozott partiíciókat
# Az efi partíció specifikáció szerint kötelezően előírja a FAT partíciós táblát ezért azt FAT-ra formázzuk
$ mkfs.fat -F 32 /dev/sdxy
# A root partíció ext4
$ mkfs.ext4 /dev/sdxy
# A swap partíció pedig
$ mkswap /dev/sdxy
csatoljuk a partíciókat
# A root partíciót a /mnt helyre
$ mount /dev/root_partition /mnt
# Az efi részére hozzuk létre az /mnt/efi helyet és csatoljuk fel
$ mkdir /mnt/efi
$ mount /dev/sdxy /mnt/efi
# csatoljuk a swap partíciót is
$ swapon /dev/sdxy$ pacman -Syy
$ pacstrap /mnt base base-devel linux linux-headers linux-firmware vim dhcpcd# Fstab: Generate an fstab file (use -U or -L to define by UUID or labels, respectively):
$ genfstab -U /mnt >> /mnt/etc/fstabVáltsunk root-ot az új rendszerre:
$ arch-chroot /mntIdőzóna beállítása
# ln -sf /usr/share/zoneinfo/Region/City /etc/localtime
$ ln -sf /usr/share/zoneinfo/Europe/Budapest /etc/localtime
$ hwclock --systohcLokalizáció beállítása
Szerkesszük meg a */etc/locale.gen' fájlt és vegyük ki a kommentezést a megfelelő bejegyzés mögül.
$ vim /etc/locale.gen
----------------------
...
# hu_HU.UTF-8 UTF-8
...
# Ezt követően generáljuk le
$ locale-genHozzunk létre a locale.conf fájlt és adjuk meg a LANG értékét:
$ nano /etc/locale.conf
-----------------------
LANG=hu_HU.UTF-8
echo "LANG=hu_HU.UTF-8" > /etc/locale.confHozzuk létre a konzolos billetnyűzet beállítását és adjuk meg a KEYMAP értékét:
$ nano /etc/vconsole.conf
-------------------------
KEYMAP=huecho "KEYMAP=hu" > /etc/vconsole.confHálózat konfiguráció
Hozzuk létre a hostname fájlt és állítsuk be a hostnevet:
$ nano /etc/hostname
--------------------
myhostnameÁllítsuk be a hosts fájlt
echo "127.0.0.1 localhost" >> /etc/hosts
echo "::1 localhost" >> /etc/hostsÁllítsuk be a DHCP szolgáltatását
$ systemctl enable dhcpcd
A root jelszó megadása
$ passwdHozzunk létre új felhasználót sudo jogokkal
$ useradd -m -g users -G wheel -s /bin/bash username
$ passwd username
# szerkesszük meg a sudoers fájlt
$ nano /etc/sudoers
# a root ALL=(ALL) ALL alá adjuk hozzá az új felhasználónkat
username ALL=(ALL) ALL
# illetve ha a weel csoport tagjait engedjük akkor az alábbi bejegyzést
%wheel ALL=(ALL) ALLAz initramfs (initial RAM filesystem) egy ideiglenes fájlrendszer, amelyet a Linux kernel használ a rendszer indítási folyamatának korai szakaszában. Az initramfs biztosítja a szükséges környezetet ahhoz, hogy a kernel betölthesse a rendszer fő fájlrendszerét és elindíthassa az init folyamatot. Az initramfs tartalmazza azokat az eszközmeghajtókat, modulokat és segédprogramokat, amelyek szükségesek az alapvető rendszerindítási feladatok elvégzéséhez.
Állítsd be a megfelelő jogosultságokat: Győződj meg róla, hogy csak a root felhasználó férhet hozzá írási joggal A /boot mappához, míg más felhasználók csak olvasási joggal rendelkeznek:
chmod 755 /boot
TODO: fmask=0077 dmask=0077 az fstab-ban a boot-ra
Telepítsük a szükséges csomagokat
pacman -Syu efibootmgr cryptsetup lvm2Initramfs beállítása
Szerkeszd a /etc/mkinitcpio.conf fájlt, és add hozzá a keyboard, keymap, encrypt és lvm2 hookokat a HOOKS sorban:
HOOKS=(base udev autodetect modconf block keyboard keymap encrypt lvm2 filesystems)
Generáld újra az initramfs
mkinitcpio -p linuxTelepítsd a systemd-boot bootloadert
bootctl install
Konfiguráld a bootloadert:
Hozz létre egy loader.conf fájlt az /boot/loader könyvtárban és add hozzá a következő sorokat:
default arch
timeout 5
editor 0Hozd létre az Arch Linux boot bejegyzést /boot/loader/entries/arch.conf:
title Arch Linux
linux /vmlinuz-linux
initrd /initramfs-linux.img
options cryptdevice=/dev/sdX2:cryptlvm root=/dev/vg0/root rw
pacman -Sy grub efibootmgr dosfstools os-prober mtools# létrehozzuk az EFI boot direktory-t
$ mkdir /boot/EFI
# felcsatoljuk a boot partíciót
$ mount /dev/sdxy /boot/EFI
# telepítjük a grubot EFI módon
$ grub-install --target=x86_64-efi --bootloader-id=grub_uefi --recheck
# telepítjük a grubhoz a nyelvi fájlokat
$ cp /usr/share/locale/hu/LC_MESSAGES/grub.mo /boot/grub/locale/hu.mo
# kiírjuk a GRUB configot
$ grub-mkconfig -o /boot/grub/grub.cfgKilépés a chrootból és újraindítás
exit
umount -R /mnt
swapoff -a
reboot# Next, Install X Window System (xorg) using command:
$ sudo pacman -S xorg xorg-server
# install gnome
$ sudo pacman -S gnome gnome-tweaks gnome-nettool gdm archlinux-wallpaper networkmanager firefox xdg-desktop-portal-gnome xdg-desktop-portal gcr4
$ sudo systemctl enable gdm.service
$ systemctl enable NetworkManager
$ systemctl enable --user gcr-ssh-agent.socket
# indítsuk újra a gépet
# Ha problémák adódnának a hanggal
$ sudo pacman -S pulseaudio pulseaudio-alsaA telepítést követően néhány fontos beállítás, utó telepítés. Régebbi GTK téma telepítése a mostmár legacy programokhoz. Illetve Flatpak programokhoz. Töltsd le az alábbi repót és telepítsd a témát: https://github.com/lassekongo83/adw-gtk3
Ha flatpak alkalmazásokat használsz célszerű lehet telepíteni az alábbi témákat flatpakon keresztül is.
$ flatpak install org.gtk.Gtk3theme.adw-gtk3 org.gtk.Gtk3theme.adw-gtk3-darkEngedélyezni tudod az adw-gtk3 témát a gnome-tweaks-ben, vagy manuál terminálból:
# Change the theme to adw-gtk3 light
$ gsettings set org.gnome.desktop.interface gtk-theme 'adw-gtk3' && gsettings set org.gnome.desktop.interface color-scheme 'default'0
# Change the theme to adw-gtk3-dark
$ gsettings set org.gnome.desktop.interface gtk-theme 'adw-gtk3-dark' && gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark'
# Revert to GNOME's default theme
$ gsettings set org.gnome.desktop.interface gtk-theme 'Adwaita' && gsettings set org.gnome.desktop.interface color-scheme 'default'GDM billentyűzet kiosztás beállítása
# GDM language
$ localectl set-x11-keymap hudependencies:
sudo pacman -Sy gcr4zsh export:
export SSH_AUTH_SOCK=$XDG_RUNTIME_DIR/gcr/sshenable gcr service
systemctl enable --now --user gcr-ssh-agent.socket$ pacman -S xorg plasma plasma-wayland-session kde-applications
$ systemctl enable sddm.service
$ systemctl enable NetworkManager.serviceA Yay csak az Arch User Repository-ban érhető el. Vegyük figyelembe, hogy manuálisan is telepíthetünk csomagokat az AUR-ból anélkül, hogy AUR segédprogramot használnánk (hasonlóan ahhoz, ahogy a Yay-t fogod telepíteni), de ahogy a neve is sugallja, egy "AUR segédprogram" segít a telepítési folyamatban, megkönnyítve a csomagok telepítését minimális felhasználói beavatkozással.
sudo pacman -S --needed base-devel gitgit clone https://aur.archlinux.org/yay.gitcd yaymakepkg -siAz arch alapértelmezett csomagkezelője a Pacman
Azoknak a csomagoknak a kilistázása amelyek nem a main repóból jöttek tehát AUR vagy pkgbuild csomagok.
sudo pacman -Qmsudo pacman -U --noconfirm your-package.pkg.tar.zstsudo pacman -Rcns <package>Egyéb törléshez tartozó kapcsolók:
| -R | csomag eltávolítása (törlés) flag |
|---|---|
| -c, --cascade | csomagok és az azokat igénylő csomagok eltávolítása |
| -n, --nosave | törölje a konfigurációs fájlokat |
| -s, --recursive | a feleslegessé váló függőségeket is távolítsa el (-ss a kézzel telepített függőségeket is eltávolítja) |
| -u, --unneeded | más csomag által nem igényelt csomagok eltávolítása |
You can use Python's venv like described here.
However if you really want to install packages that way, then there are a couple of solutions:
- use
pip's argument--break-system-packages, - add following lines to
~/.config/pip/pip.conf:
[global]
break-system-packages = truePostman telepítése flatpak-et követően nem indul el. A hiba az hogy hiányolja (vélhetően) nem települ cert amit a Postman használni szeretne. Megoldás generáljunk egy cert-et neki
mkdir -p ~/.var/app/com.getpostman.Postman/config/Postman/proxy
cd ~/.var/app/com.getpostman.Postman/config/Postman/proxy
openssl req -subj '/C=US/CN=Postman Proxy' -new -newkey rsa:2048 -sha256 -days 365 -nodes -x509 -keyout postman-proxy-ca.key -out postman-proxy-ca.crtyay visual-studio-code-binGnome extensions places open vscode issue
xdg-mime default org.gnome.Nautilus.desktop inode/directoryFlameshot telepítése flatpak segítségével
flatpak install org.flameshot.Flameshot
flatpak permission-set screenshot screenshot org.flameshot.Flameshot yesflatpak install io.missioncenter.MissionCenter sudo pacman -Sy nerd-fonts