diff --git a/_config.yml b/_config.yml index e684171..321baea 100644 --- a/_config.yml +++ b/_config.yml @@ -40,13 +40,13 @@ author: hernikplays # "Copyright (c) 2017-{currentYear} {author}" # "Copyright © 2017-2021 Foobar" # -copyright: "Copyright (c) 2021-{currentYear} {author}" +copyright: "Copyright (c) 2021-{currentYear} {author}, obsah dostupný pod licencí CC BY-SA 4.0" description: >- # this means to ignore newlines until "baseurl:" - Welcome to my website/blog, full of weird stuff written by yours truly. + Mít blog je dnes trendy baseurl: "" # the subpath of your site, e.g. /blog -url: "https://caras.cafe" # the base hostname & protocol for your site, e.g. https://example.com +url: "https://blog.caras.cafe" # the base hostname & protocol for your site, e.g. https://example.com favicon: "" # the favicon for your site # Yat date format diff --git a/_layouts/post.html b/_layouts/post.html index 9018374..4eb0c85 100644 --- a/_layouts/post.html +++ b/_layouts/post.html @@ -65,8 +65,6 @@ sidebar: {%- include extensions/comments/disqus.html -%} {%- endif -%} - {%- include extensions/comments/gitment.html -%} - {%- if site.utterances.repo -%} {%- include extensions/comments/utterances.html -%} {%- endif -%} diff --git a/_posts/2023-02-26-portable-linux.md b/_posts/2023-02-26-portable-linux.md new file mode 100644 index 0000000..033b680 --- /dev/null +++ b/_posts/2023-02-26-portable-linux.md @@ -0,0 +1,102 @@ +--- +layout: post +title: Jak si vytvořit přenosný Arch Linux systém na USB +subtitle: Protože občas je Linux nutný na cestách +categories: tutoriál +tags: návod arch +sidebar: [] +--- +# Co bude potřeba +- Systém s Linuxem +- USB s alespoň 4 GB místa + +{: .box-note} +**Poznámka:** Instalaci můžete provést i na Windows či macOS, stačí si nainstalovat VirtualBox, na kterém spustíte nějaký linux systém skrz live ISO a následně řeknete VirtualBoxu, aby přesměroval vaše přenosné USB do virtuálního počítače. + +# 1. Příprava USB +{: .box-note} +**Poznámka:** Pokud instalujete systém, který má GUI instalátor, můžete nejdřív zkusit systém nainstalovat přes něj. + +## 1.1 Rozdělení na oddíly +Pro jednoduchost budu používat nástroj GParted, který je dostupný snad na všech distribucích. Skrz něj si na USB v záložce `Zařízení` vytvoříme novou tabulku oddílů. Jako typ zvolíme `gpt` a dáme `Použít`. + +Dále si vytvoříme naše systémové oddíly. Pokud používáte UEFI (což dnes asi ano), vytvoříme na disku oddíl ve formátu FAT32 o velikosti ~500 MiB (to je [**MiB**](https://simple.wikipedia.org/wiki/Mebibyte), **nikoli MB**; pokud plánujete používat více jader tak třeba 800 MiB). Ten bude sloužit jako [EFI systémový oddílový](https://wiki.archlinux.org/title/EFI_system_partition). Ze zbytku vytvoříme nový EXT4 oddíl, na kterém bude náš systém. + +Naše rozdělení pak bude vypadat asi takto: + +![GParted zobrazení oddílů na USB](/assets/images/portable-arch/01.png) + +Nyní je třeba naše oddíly připojit k našemu již běžícímu systému. + +## 1.2 Připojení +Nejdřív si zjistíme označení našich oddílů. Na to stačí příkaz `lsblk`. + +![Výpis lsblk](/assets/images/portable-arch/02.png) + +V mém případě je USB označeno jako `sdb`, kde EFI oddíl je `sdb1` a sýstemový oddíl je `sdb2`. + +V `/mnt` si vytvoříme složku, kam naše oddíly připojíme. Nejdřív připojíme náš systémový oddíl. + +```sh +sudo mount --mkdir /dev/sdb2 /mnt/usb +``` + +Poté vytvoříme složku v `/mnt/usb`, do které připojíme náš EFI oddíl. Složka by se měla jmenovat vždy `boot`. + +```sh +sudo mount --mkdir /dev/sdb1 /mnt/usb/boot +``` + +# 2. Instalace Arch Linuxu +## 2.1 Instalace nutných balíků +Přípravu systému provedeme příkazem `pacstrap`, který je dostupný v balíku `arch-install-scripts`. Příkaz nám nainstaluje základní balíky a linuxové jádro. + +```sh +pacstrap -K /mnt/usb base linux linux-firmware coreutils bash grep gawk file tar gzip systemd sed sudo nano +``` + +Pokud chcete použít jiné jádro, stačí nahradit `linux` za jádro vašeho výběru. + +## 2.2 Nastavení GRUB +GRUB nám bude sloužit k nabootování. Instalovat ho budeme už přímo na náš přenosný systém, takže se v našem nepřenosném systému přeneseme do jeho prostředí pomocí príkazu `arch-chroot` (součástí `arch-install-scripts`). + +{: .box-note} +**Poznámka:** Pokud jste nenásledovali UEFI instrukce, bude se tento krok lišit, vizte [Arch Wiki návod](https://wiki.archlinux.org/title/GRUB#BIOS_systems) + +```sh +sudo arch-chroot /mnt/usb/ +``` + +Nejdříve nainstalujeme balíky `grub` a `efibootmgr` příkazem `pacman -S grub efibootmgr`. Jelikož není úplně ideální používat Secure Boot s linuxem a nastavovat ho je celkem otrava, bude v tomto návodu přeskočen. Budete-li ho potřebovat, následujte [oficiální Arch Wiki návod](https://wiki.archlinux.org/title/GRUB#Secure_Boot_support). + +Nasměrujeme GRUB instalaci na náš EFI oddíl. Protože jsme uvnitř našeho přenosného systému, nesměrujeme na `/mnt/usb` ale přímo `/` (v případě nejistoty zkontrolujte lokaci EFI oddílu příkazem `lsblk`). + +```sh +grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB --removable +``` + +Po instalaci ještě musíme vytvořit základní konfigurační soubor. + +```sh +grub-mkconfig -o /boot/grub/grub.cfg +``` + +## 2.3 Vytvoření prvního uživatele +Uživatele přidáme příkazem `useradd`. Pro vytvoření uživatele s domovskou složkou použijeme `useradd -m jmenouzivatele`. Pro vytvoření hesla použijeme příkaz `passwd`: `passwd jmenouzivatele`. + +Uživatele rovnou přidáme do skupiny sudařů, abychom nemuseli používat roota na administrátorské procesy. Nejdříve ale musíme umožnit skupině, aby příkaz `sudo` mohla používat. Otevřeme si konfiguraci příkazem `visudo` a kombinací `Ctrl+W` vyhledáme `%sudo`. Sekce by měla v souboru vypadat takto: + +``` +## Uncomment to allow members of group sudo to execute any command +# %sudo ALL=(ALL:ALL) ALL +``` + +Odstraníme mřížku před `%` a soubor uložíme stisknutím kombinace `Ctrl+X`, poté klávesy `y` a `enter`. Teď stačí skupinu vytvořit příkazem `groupadd sudo` a uživatele přidat do skupiny příkazem `usermod -aG sudo jmenouzivatele`. + +## 2.4 Nainstalujte, co je třeba +Nejlépe následujte návod na [Arch Wiki](https://wiki.archlinux.org/title/Installation_guide#Time_zone) pro doinstalování všeho, co je potřeba pro funkční systém. + +## 3. Konec +Nyní stačí jen nabootovat a nainstalovat vše co jen potřebujete. + +Adaptováno z [Install Arch Linux on a removable medium](https://wiki.archlinux.org/title/Install_Arch_Linux_on_a_removable_medium) od autorů Arch Wiki pod licencí [CC-BY-SA 3.0](https://creativecommons.org/licenses/by-sa/3.0/) \ No newline at end of file diff --git a/assets/images/portable-arch/01.png b/assets/images/portable-arch/01.png new file mode 100644 index 0000000..7618879 Binary files /dev/null and b/assets/images/portable-arch/01.png differ diff --git a/assets/images/portable-arch/02.png b/assets/images/portable-arch/02.png new file mode 100644 index 0000000..3ae44b8 Binary files /dev/null and b/assets/images/portable-arch/02.png differ