DigiPinguïns: van startknop naar desktop - UEFI, GRUB & systemd (Koen Wybo)

24
Van startknop naar desktopomgeving Of de wonderlijke techniek van het opstarten van linux. Koen Wybo november 2016 Koen Wybo Van startknop naar desktopomgeving november 2016 1 / 24

Transcript of DigiPinguïns: van startknop naar desktop - UEFI, GRUB & systemd (Koen Wybo)

Van startknop naar desktopomgevingOf de wonderlijke techniek van het opstarten van linux.

Koen Wybo

november 2016

Koen Wybo Van startknop naar desktopomgeving november 2016 1 / 24

Extra

Hoofddoelstelling: technische achtergrondinfo . . .. . . met praktisch nut:

een traag opstartend systeem sneller maken

mijn pc start niet meer op: waar ligt de fout en hoe verhelpen?

linux kent geen ccleaner maar je kan wel wat manueel ‘opruimen’.

Persoonlijke insteek

Toegepast op Debian. Enkele details zijn anders in andere distributies.

Koen Wybo Van startknop naar desktopomgeving november 2016 2 / 24

Let’s get started

Hoe start een debian/linuxsysteem eigenlijk op?

Koen Wybo Van startknop naar desktopomgeving november 2016 3 / 24

Van powerknop tot desktop-omgeving

StartknopBios/UEFIbootloaderKernel initialiseert hardwareSysteemdiensten opstartenInlogmanagerDesktopomgeving.Een serieuze boterham en te weinig tijd...

Koen Wybo Van startknop naar desktopomgeving november 2016 4 / 24

Van powerknop tot desktop-omgeving

1 Startknop - Bios/UEFI

2 GRUB2: bootloader

3 Kernel initialiseert hardware

4 Systemd: systeemdiensten opstarten

5 GDM3: inlogmanager

6 GNOME: desktopomgeving.

Koen Wybo Van startknop naar desktopomgeving november 2016 5 / 24

Ondertussen in de pc-winkel

Je hebt het misschien al gemerkt. . . Nieuwe pc’s starten ‘anders’ op danoudere pc’s.BIOS is dood - leve UEFI

Koen Wybo Van startknop naar desktopomgeving november 2016 6 / 24

EUFI Wat is het?

Unified Extensible Firmware InterfaceOpvolger van BIOS:De firmware van het moederbord van een pc die het besturingssysteem dehardwarecomponenten in de computer laat aanspreken (wikipedia).

UEFI noemen sommigen een mini-OS ’onder’ je geınstalleerdebesturingssysteem maar anderen noemen het een pre-boot executionenvironment ;-)Niet onbelangrijk: UEFI wordt ontwikkeld door een consortium vanbedrijven.

Koen Wybo Van startknop naar desktopomgeving november 2016 7 / 24

UEFI: het goede nieuws

fabrikanten kunnen eigen grafische interface ontwerpen

Grotere harde schijven (tot 8 ZiB = TB x 1024 x 1024 x1024)meer partities (standaard 128)nieuw: GPT-tabel

is modulair van opzet en het wordt ieder jaar verder uitgebreid:uiteindelijk beslist de fabrikant tot op zekere hoogte wat hij wenst teintegreren.

met een eigen ESP-partitie kan het heel wat hardwarespecifiekehardware op hd bewaren.

kan een eigen bootloader hebben.

kan updaten via netwerk / internet

extra beveiliging door middel van secure boot

Koen Wybo Van startknop naar desktopomgeving november 2016 8 / 24

Geen applaus: UEFI-lockdown

Secure boot: optie om met digitale sleutels bootloader, linuxkernel(en modules), drivers, externe apparaten, ... te laten verifieren. Ditbiedt mogelijkheden en moeilijkheden.

UEFI-instellingen zijn afhankelijk van het type moederbord enproducent

Microsoft ‘golden key’ is in augustus jongsleden gekraakt.

UEFI revocation list

Koen Wybo Van startknop naar desktopomgeving november 2016 9 / 24

Linux installatie op UEFI

Als je komt van BIOS en je wil UEFI volledig (dus niet legacy-mode)

selecteer uefi-installmethode

herpartitioneer je harde schijf met GPT: alle bestaande data verdwijnt.

maak een extra partitie: Efi System Partitie : esp (512 MB)

Debian maakt gebruik van Shim

Koen Wybo Van startknop naar desktopomgeving november 2016 10 / 24

UEFI-problemen fixen

Is moederbord-afhankelijk: er is geen standaardprocedure

in UEFI schakel secore boot uit, eventueel legacy-mode is(DOS-formateringstabel)

vanuit linux:

efibootmgr: de efi bootmanager (in plaats van Grub2) instellengdisk: instellen van GPT-tabellen en GPT-partities, gebruik ’gdisk/dev/sda’mokutil: instellen van secureboot keys, mokutil –sb-state

vanuit dualboot met windows: Settings, click/tap on theUpdate-security icon, Click/tap on Recovery, click/tap on Restartnow under Advanced startup. Bij herstart kun troubleshoot/Advanced Options / UEFI firmware settings

Koen Wybo Van startknop naar desktopomgeving november 2016 11 / 24

GRUB2: aanpassen

Eenmalig aanpassen: druk op de toets e bij Grub tijdens opstarten.

Definitief aanpassen: eerst /etc/default/grub aanpassen dan inDebian-based distro’s : update-grub (uiteraard allemaal als root)

Koen Wybo Van startknop naar desktopomgeving november 2016 12 / 24

Kernel

Kernel: herkenning van je hardware en inladen van de nodige modules.

Welke hardware is er herkend? ‘journalctl -b’ of ‘dmesg’Werken met kernelmodules: lsmod, modinfo en modprobeKernelparameters bij opstart aanpassen: zie grub2 aanpassen en volledigelijst met parameters op https:

//www.kernel.org/doc/Documentation/kernel-parameters.txt

Wat ik niet zal uitleggen: hoe compileer je je eigen kernelDat kan ... in de volgende sessie ;-)

Koen Wybo Van startknop naar desktopomgeving november 2016 13 / 24

Systemd: wat je vooraf dient te weten

Oorspronkelijk begonnen als nieuw init-systeem (maar is ondertussenaan het groeien tot een volledig systeembeheerstool)

is de standaard in alle grote distributies: eenmaal gekend kun je er inelke distributie ermee aan de slag. (ubuntu vanaf 16.04)

is niet 1 systeem maar eerder modulair: journal, netwerken, enz.

Koen Wybo Van startknop naar desktopomgeving november 2016 14 / 24

Systemd en het opstarten van services

Hoe snel start mijn systeem op?

systemd-analyze

systemd-analyze blame

Koen Wybo Van startknop naar desktopomgeving november 2016 15 / 24

Service: basis

Wat is het?comfort en functionaliteit ’op de achtergrond’.

Koen Wybo Van startknop naar desktopomgeving november 2016 16 / 24

Welke diensten /services zijn actief op je pc?

terminal: systemctl list-unit-files -all

terminal: systemctl list-unit-files -t service

grafisch: systemd-ui: beperkt

grafisch: veel beter maar helaas niet in Jessie: kde-config-systemd

Koen Wybo Van startknop naar desktopomgeving november 2016 17 / 24

Welke diensten heb ik echt nodig?

Wie ben je en welke functionaliteit heb je echt nodig / kun je missen?Persoonlijk:

geen assisterende technologie voor mensen met een beperking (orca,speechdispatcher, at-spi, caribou)

geen automatische update-manager (packagekit), geenkleurprofiel-daemon (colord),

geen 3G, 4G, of bluetooth nodig?(modemmanager) en inlogmodem(pppd-dns),

en nog een paar ’onnozele’ pakketten als exim4

Koen Wybo Van startknop naar desktopomgeving november 2016 18 / 24

Welke diensten heb ik echt nodig?

Je kan nog verder: geen nood aan een printer (cups), delen over netwerkvan printer, bestanden en mediaservers (avahi), bluetooth?

Koen Wybo Van startknop naar desktopomgeving november 2016 19 / 24

Hoe activeren / uitschakelen?

start of stop of reload

enable en disable

unmask en mask

systemctl mask naam.service

Koen Wybo Van startknop naar desktopomgeving november 2016 20 / 24

Inlogmanager: gdm3

aanpassen van /etc/gdm3/greeter.gconf-defaultsdaarna dpkg-reconfigure gdm3

Andere inlogmanager? lightdm, kdm, xdm, sddm, enz.

Koen Wybo Van startknop naar desktopomgeving november 2016 21 / 24

GNOME optimaliseren

. . . door het aanpassen van achtergronddiensten

.desktop-bestanden door gebruiker aangemaakt in .config/autostart

.desktop-bestanden door GNOME aangemaakt voor elke gebruiker in/etc/xdg/autostart

Verwijderen, intern aanpassen of .desktop hernoemen.

Koen Wybo Van startknop naar desktopomgeving november 2016 22 / 24

GNOME optimaliseren

en verder:

uitschakelen van indexeringsdiensten als tracker en zeitgeist.

animaties uitschakelen via dconf-editor.

Koen Wybo Van startknop naar desktopomgeving november 2016 23 / 24

Vragen staat vrij . . .

Koen Wybo Van startknop naar desktopomgeving november 2016 24 / 24