Fedora Schnelleinstieg

Aus ThinkPad-Wiki

Einleitung

Diese Anleitung soll als Schnelleinstieg zur Installation von Fedora auf ThinkPads dienen. Sie ist daher bewußt sehr knapp gehalten und verweist an zahlreichen Stellen zur Vertiefung auf das englische ThinkWiki und andere externe Quellen.

Installation

Fedora-Versionen

Fedora bildet die Basis für Red Hat Enterprise Linux (RHEL).

Immer im Mai und November eines Jahres erscheint die jeweils neueste Fedora-Version (Release). Die Releases werden fortlaufend nummeriert, im Mai 2011 erschien Version 14, im November 2011 Version 15 und so weiter. Eine Fedora-Version wird von den Entwicklern immer nur bis ein Jahr nach dem Erscheinungsdatum mit Sicherheitsupdates unterstützt. Danach sollte man auf die neueste Version von Fedora Upgraden. Letzteres ist zwar auch ohne Neuinstallation möglich, eine Neuinstallation erspart einem aber manchmal unvermeidliche Kompatibilitätsprobleme beim Umstieg. Wer sich auf die ständigen Updates nicht einlassen will, sollte zu einem anderen Betriebssystem mit längeren Support-Zyklen greifen: etwa RHEL Derivate wie CentOS und Scientific Linux oder z.b. Debian und Ubuntu LTS-Versionen.

Bei der Erstinstallation von Fedora ist es manchmal klug, nicht die neueste erhältliche Version zu wählen, wenn diese erst vor weniger als einem Monat erschienen ist. Denn im ersten Monat nach dem Release weisen neue Fedora-Versionen manchmal den ein oder anderen ärgerlichen Bug auf. Wer im Gegenteil etwas experimentierfreudiger ist, kann natürlich sogar umgekehrt auch die neueste Beta- oder gar Alpha-Version installieren. Diese Versionen sind nicht stabil! Aber sobald die endgültige Release-Version erhältlich ist, verwandeln sich diese Vorabversionen automatisch und ohne Neuinstallation in Releases.

Desktops und Spins

Normalerweise wird Fedora mit dem Desktopmanager Gnome ausgeliefert. Andere Desktopmanager können beispielsweise über die Wahl eines anderen "Spins" von Fedora ausgewählt werden: http://spins.fedoraproject.org/de/, neben Gnome sind erhältlich: KDE, XFCE und LXDE. Die anderen Spins sind für spezielle Anwendungsumgebungen interessant.

Der Unterbau - d.h. Kernel, Treiber und Dienste - ist bei allen Spins völlig identisch. Die Spins mit XFCE und LXDE sind besonders geeignet für leistungsschwache, ältere ThinkPad-Hardware mit weniger als 512 MB RAM.

Hinweis: aufgrund des identischen Unterbaus ist für den Wechsel des Desktops keine Neuinstallation erforderlich. Man kann jederzeit weitere Umgebungen nachinstallieren bzw. wieder entfernen.

Architektur

Fedora ist in einer 32-Bit- ("i686") und einer 64-bit-Variante ("x86_64") erhältlich. Ohne Bedenken kann die 64-Bit-Variante gewählt werden, wenn man weiß, dass der eigene Prozessor damit kompatibel ist (alle neueren ThinkPads, z.B. i3, i5, i7 oder Core 2 Duo). Im Zweifel funktioniert immer die 32-Bit-Version.

Installationsmedien

Für die Installation lädt man sich die Live-CD (ca. 650 MB) oder Install-DVD (ca. 3,5 GB) des gewünschten Spins herunter (z.B. http://fedoraproject.org/de_CH/get-fedora-options#formats). Manchmal berichten User von kleineren Problemen bei der Installation von Live-CD. Man geht also auf Nummer sicher, wenn man die deutlich größere Install-DVD wählt.

Auf ThinkPads ohne optisches Laufwerk installiert man am einfachsten per USB-Stick. Dessen Erstellung aus einem heruntergeladenen ISO-Image wird speziell für Fedora hier auf Englisch beschrieben. Da diese Vorgehensweise für die meisten Linux-Distributionen gleich ist, funktioniert auch jede andere Anleitung, die man dazu über Google findet.

Basisinstallation

Seit Fedora 16 wird bei der Installation auf eine jungfräuliche Festplatte standardmäßig eine so genannte GUID Partition Table (GPT) angelegt. Manche Systeme kommen mit diesem ungewöhnlichen (da ziemlich fortschrittlichen) Format nicht zurecht. Bei der Installation parallel zu existierenden Betriebssystemen sollte es dagegen keine Probleme geben.

Sollte Fedora also nach der Installation nicht starten, weil das System angibt, es finde kein gültiges Betriebssystem auf der Festplatte, so muss man die Installation leider nochmal starten und dabei folgendes beachten: Im Bootmenü des Installationsmediums sollte dann der erste Eintrag bearbeitet werden (Taste "e"), indem man an die Zeile, die mit "Linux" beginnt, das Wort "nogpt" (mit einem einfachen Leerzeichen vom Rest getrennt) anhängt.

Gemeinsamer Datenzugriff Fedora - Windows

Die hier besprochenen Fedora-Versionen können von Haus aus problemlos lesend und schreibend auf NTFS-Partitionen zugreifen. Das Anlegen einer separaten Partition (FAT) für den Datenaustausch ist daher nicht unbedingt nötig.

Wichtig: es ist nicht möglich, die Benutzerdaten (/home) auf einer NTFS-Partition zu halten.

Administrators Group

Nach Abschluss des eigentlichen Installationsprozess startet das System neu. Nach diesem "Firstboot" öffnet sich zunächst erneut das Installationstool und bietet die Möglichkeit, einen oder mehrere Benutzer anzulegen. Falls es sich um einen Einzelplatzrechner handelt (ein System, dass nur von einer Person benutzt wird), ist es sehr nützlich, den eigenen Benutzer in die "Administratorgruppe" aufzunehmen. Nur dann funktioniert auch der Befehl "sudo", der in diesem wie in vielen anderen Linux-Tutorials benutzt wird. Ein Benutzer, der nicht zu dieser Gruppe (intern "wheel" genannt) gehört, kann trotzdem Befehle mit root-Rechten ausführen, indem er statt sudo BEFEHL den Befehl su -c 'BEFEHL' verwendet und anschließend das root-Passwort eingibt.

Nach der Installation

Update des Systems

Vor allen weiteren Konfigurationsschritten sollte man entweder per "Aktivitäten → Anwendungen → Systemwerkzeuge → Software-Aktualisierungen" oder im Terminal mit

sudo yum -y update

alle verfügbaren Updates installieren und das System neu starten.

Flash-Plugin

Das Flash-Plugin kann man über das Repository von Adobe installieren. Dafür surft man auf die Adobe Flashplayer Webseite und wählt "YUM für Linux (YUM)". Wenn man dann auf "Jetzt herunterladen" klickt, erhält man ein RPM-Paket, dass man auf dem Computer speichert und mit einem Doppelklick installiert. Die eigentliche Installation des Flash-Plugins geht dann über die Software-Verwaltung oder mit dem Befehl sudo yum -y install flash-plugin.

RPM-Fusion

Aus ideologischen und lizenzrechtlichen Gründen bietet Fedora offiziell keine Unterstützung für eine Reihe von Paketen, die unter anderen Betriebssystem ohne weiteres mitgeliefert werden. Dazu gehört Unterstützung für MP3s und die Wiedergabe kopiergeschützter DVDs. Die für MP3-Unterstützung nötigen Pakete können aus dem Repository RPM Fusion installiert werden. Um das Repository zum eigenen System hinzuzufügen, folgt man am besten der Beschreibung auf der offiziellen Webseite.

Media-Codecs (MP3 etc.)

Die wichtigsten Media-Codecs befinden sich in den Paketen

gstreamer-plugins-bad
gstreamer-plugins-bad-free
gstreamer-plugins-bad-nonfree
gstreamer-plugins-base
gstreamer-plugins-good
gstreamer-plugins-ugly

Damit das beliebte Audio-Bearbeitungstool Audacity mit MP3s umgehen kann, benötigt man das Paket "audacity-freeworld". Es sollte nicht (!) gleichzeitig das Paket "audacity" installiert sein. Unterstützung für kopiergeschützte DVDs gibt es nur, wenn man das Paket "libdvdcss" aus dem Repository livna installiert.

Windows-Schriftarten

Auf Arial, Times New Roman usw. muss man natürlich auch unter Fedora nicht verzichten. Allerdings muss man die zugehörigen Schriftartendateien (z.B. Arial.ttf) aus einer existierenden Windows-Installation oder von einer Windows-Installations-CD beziehen, da sie kommerziellen Lizenzen unterliegen.

Man kopiert diese .ttf-Dateien in ein Verzeichnis in /usr/share/fonts, etwa so:

# in einer Root-Shell
mkdir /usr/share/fonts/mstruetype
cp *.ttf /usr/share/fonts/mstruetype
cd /usr/share/fonts/mstruetype
mkfontdir
mkfontscale
fc-cache -f

DPI

System DPI

Ob der X-Server die richtige DPI für das Display erkannt hat, läßt sich mit folgendem Befehl prüfen:

xdpyinfo | grep -B2 resolution

Bei einem T60 mit UXGA IPS-Panel sieht es so aus:

[test@localhost ~]$  xdpyinfo | grep -B2 resolution
screen #0:
  dimensions:    1600x1200 pixels (305x229 millimeters)
  resolution:    133x133 dots per inch
[test@localhost ~]$

Wenn die DPI oder die Panel-Ausmaße nicht richtig erkannt worden sind, muss folgende Datei mit diesem Inhalt erstellt werden(root erforderlich): /etc/X11/xorg.conf.d/90-monitor.conf (DisplaySize oder DPI muss entsprechend dem jeweiligen Gerät angepasst werden)

Section "Device"
      Identifier      "foobar"
       # Using the name of the output defined by the video driver plus the identifier of a
       #     monitor section, one associates a monitor section with an output by adding an
       #     option to the Device section in the following format:
       #     Option "Monitor-outputname" "monitor ID"
       Option          "monitor-VGA-0" "vga"
       Option          "monitor-LVDS" "panel"
       Option         "monitor-DVI-0" "dvi"
EndSection
Section "Monitor"
       Identifier      "panel"
       DisplaySize 305 229  # In millimeters, specs for HV150UX1-101 304.8(H) x 228.6(V)
EndSection
Section "Monitor"
       Identifier      "vga"
       DPI             96x96
EndSection
Section "Screen"
       Identifier      "Default Screen"
       Monitor       "panel"
EndSection

Font DPI

Firefox

Firefox weigert sich beharrlich eine andere DPI zu benutzen als 96. Abhilfe schaft es in about:config den Parameter layout.css.devPixelsPerPx neu zu setzen. Das Schema ist: system's DPI/96. Beispiel: 133dpi / 96dpi = 1.385416667 (Wichtig: Bei deutscher locale wird aus dem "." im Beispiel ein "," z.B. 1,385416667)

LibreOffice

LibreOffice kann die DPI nicht richtig erkennen. Als Test einfach Writer öffnen und als Format A4 auswählen. Anschließend die Anzeige/Zoom auf 100% stellen und mit einem A4-Blatt überprüfen.

Ändern läßt sich dies durch das Erstellen der Datei ~/.Xresources mit dem Inhalt: (DPI muss an das Gerät angepasst werden. WARNUNG: Das UserInterface sieht dann reichlich komisch aus!)

! Xft settings ---------------------------------------------------------------
Xft.dpi:        133
Xft.antialias:  true
Xft.rgba:	rgb
Xft.hinting:    true
Xft.hintstyle:  hintsmedium

Tipps und Tricks

Datei rc.local anlegen:

Die Datei rc.local dient dazu, Scripte bzw. Programme automatisch beim Start als root auszuführen. Sie wird unter Fedora nicht mehr per default installiert. Möchte man diese nutzen, legt man als root eine Datei /etc/rc.d/rc.local an, öffnet diese mit einem Editor und fügt Folgendes ein:

 #!/bin/bash
 #
 # an dieser Stelle die Scripte einfügen
 #
 exit 0

anschliessend ist noch ein

 chmod 700 /etc/rc.d/rc.local

notwendig.

Alte Kernel entfernen (Anzahl=x):

package-cleanup --oldkernels --count=x

Alte Pakete im Cache behalten:

sed -i s/keepcache=0/keepcache=1/g /etc/yum.conf

Trim Support für SSD Laufwerke und LUKS Verschlüsselung (ab Fedora 17):

Achtung, bitte vor Aktivierung weitere Details und Sicherheitsbedenken lesen: http://asalor.blogspot.com/2011/08/trim-dm-crypt-problems.html

Man fügt in die Datei /etc/crypttab am Ende jeder Zeile ein allow-discards hinzu. Beispiel:

nano /etc/crypttab
luks-12345678-1234-1234-1234-12345678 UUID=12345678-1234-1234-1234-12345678 none allow-discards

anschliessend initramfs neu bauen mit:

dracut -f -v

Screencast Recording start/stop unter Gnome 3:

[STRG]+[Alt]+[Shift]+[R]

Leeres Dokument mit rechter Maustaste erstellen in Nautilus 3.6:

In Nautilus: Rechte Maustaste -> Neues Dokument -> Leeres Dokument

Diese Funktion wurde in Nautilus 3.6 deaktiviert und kann wie folgt aktiviert werden:

mkdir -p ~/Templates
touch ~/Templates/123.txt

SELinux

Im Vergleich zu Ubuntu oder Suse Linux, die Apparmor verwenden um das Linux Security Module Framework zu nutzen, verwendet Red Hat/Fedora, wie auch z.B. Debian, SELinux. Red Hat ist maßgeblich an der Entwicklung von SELinux beteiligt und stellt dafür auch zwei Entwickler bereit. Der Großteil der Entwicklung findet im Kernel statt. SELinux ist im Vergleich zu Apparmor wesentlich komplexer, aber dafür flexibler und mächtiger. In der Standardinstallation von Fedora ist SELinux schon per default aktiv. Dadurch bekommen die Entwickler wesentlich mehr Feedback und in neueren Fedora Releases bekommt der Benutzer mittlerweile selten mit, dass SELinux überhaupt läuft.

Es stehen in SELinux insgesamt 3 Modes zur Verfügung die über die Datei /etc/selinux/config konfiguriert werden können:

  • enforcing - SELinux ist aktiv, der Zugriff wird über die Policies gesteuert
  • disabled - SELinux ist deaktiviert, nicht empfohlen da damit auch das Relabeling abgeschalten wird
  • permissive - SElinux ist aktiv aber unerlaubter Zugriff wird nur geloggt und nicht blockiert

Mittels setenforce Permissive bzw. setenforce Enforcing kann man auch temporär zwischen den Modes hin- und herschalten. Die Zugriffskontrolle durch SELinux greift erst nach den herkömmlichen Linux/Unix-Kontrollen. Wird dort ein Vorgang auf Grund von fehlenden Berechtigungen nicht gestattet, wird SELinux erst gar nicht konsultiert. Fedora verwendet per default eine Target Policy, dass heisst es wird nur das eingeschränkt, wo auch ein Policy-Modul definiert wurde. Die Policy beschreibt, welche Prozesse/Programme worauf zugreifen dürfen.

Die einzelnen Policy-Module kann man sich über semodule --list anzeigen lassen. Um Selinux benutzerfreundlicher zu gestalten, wurden Booleans "einfache Schalter" eingeführt um verschiedene Features an bzw. abzuschalten. getsebool -a zeigt eine Übersicht an.

Möchte man zum Beispiel verhindern, dass Prozesse auf den Speicherbereich anderer Prozesses zugreifen dürfen, kann man dies mit deny_ptrace wie folgt ändern:

Temporär:

getsebool -a | grep ptrace
 deny_ptrace --> off
togglesebool deny_ptrace
 deny_ptrace: active

Dauerhaft:

setsebool -P deny_ptrace 1

SELinux bietet auch eine Sandbox Funktion. Damit kann man verschiedene Anwendungen in einer gesichteren Umgebung öffnen. Beispiel für Firefox mit Webzugriff, aktuellem Profil und einer Auflösung von 1024x800:

sandbox -X -t sandbox_web_t -W metacity -i /home/$USER/.mozilla -w 1024x800 firefox

Beispiel für Evince:

sandbox -X evince ~/Dokument.pdf

ThinkPad

Trackpoint

Scrollen mit der mittleren Taste des Trackpoints erreicht man durch anlegen der Datei /etc/X11/xorg.conf.d/20-trackpoint.conf mit dem Inhalt

Section "InputClass"
    Identifier      "Trackpoint"
    MatchProduct    "TrackPoint|DualPoint Stick"
    MatchDevicePath "/dev/input/event*"
    Option          "EmulateWheel" "true"
    Option          "EmulateWheelButton" "2"
    Option          "EmulateWheelTimeout" "200" 
    Option          "YAxisMapping" "4 5" # vertikales Scrollen
    Option          "XAxisMapping" "6 7" # horizontales Scrollen
EndSection

gefolgt von einer erneuten Benutzeranmeldung. Hierfür sind root-Rechte erforderlich.

Touchpad deaktivieren

Man nimmt unter "gnome-session-properties" (im Terminal oder Alt+F2) einen neuen Eintrag mit dem Kommando

gsettings set org.gnome.settings-daemon.peripherals.touchpad touchpad-enabled false

auf. Künftig wird bei der Benutzeranmeldung das Touchpad ausgeschaltet.

Sondertasten

Fn-Tastenkombinationen

Die Fn-Tastenkombinationen sollten im Wesentlichen direkt nach der Installation funktionieren. Manche Fn-Tastenkombis haben Windows-spezifische Funktionen. Um diesen eine Funktion zuzuweisen, öffnet man am einfachsten die "Systemeinstellungen" (in der Gnome Shell im Benutzermenü oben rechts) und bearbeitet die Einstellungen unter Tastatur → Tastaturkürzel.

Sollten die FN-Tasten nicht richtig arbeiten, kann dies an einem fiesen Bug in Fedora 16 liegen. Lösung(root erforderlich):

yum reinstall bash

Mikrofon-Stumm-Taste ohne Funktion

Seit Fedora 16, also seit Linux Kernel 3.0, funktioniert die Sondertaste, mit der man das interne Mikrofon auf stumm stellt, nicht mehr. Das heißt, es gibt keine einfache Möglichkeit, eine Funktion auf der grafischen Oberfläche zuzuweisen. Es gibt allerdings ein Workaround für dieses Problem: http://www.fedoraforum.de/viewtopic.php?p=123046&sid=e20bf29430a31df2bc2a304c3c1bf3d3#p123046

Webcam

Eine Übersicht der verschiedenen Thinkpad Modelle und der verbauten Webcam findet man hier: Thinkwiki Webcam
Bei Thinkpads mit UVC camera kann einfach das Modul "uvcvideo" geladen werden:

modprobe -v uvcvideo

dauerhaft mit:

touch /etc/modules-load.d/uvcvideo.conf
echo uvcvideo > /etc/modules-load.d/uvcvideo.conf

UMTS / WWAN

Fedora unterstützt per Network Manager nahezu alle internen Karten ohne weitere Installation bzw. Konfiguration. Ausnahmen sind derzeit:

Gobi 2000

Zuerst wird das Verzeichnis /lib/firmware/gobi erstellt. Anschliessend muss die richtige Firmware (Dateien: amss.mbn, apps.mbn, UQCN.mbn) in das Verzeichnis kopiert werden, siehe Qualcomm Gobi 2000 Firmware installieren . Danach ein chmod 755 -R /lib/firmware/gobi.

Jetzt kann der Gobi-Loader installiert werden:

yum install gcc rpmdevtools
wget http://www.codon.org.uk/~mjg59/tmp/gobi/gobi_loader-0.7-1.src.rpm
rpmbuild --rebuild gobi_loader-0.7-1.src.rpm
cd /home/$USER/rpmbuild/RPMS/*/
yum localinstall --nogpgcheck gobi_loader-0.7-1.*.rpm

Nach einem Reboot sollte der Treiber geladen sein

 lsusb | grep Qualcomm
 Bus 002 Device 003: ID 05c6:9204 Qualcomm, Inc.        # Treiber nicht geladen
 Bus 002 Device 003: ID 05c6:9205 Qualcomm, Inc.        # Treiber geladen

Jetzt kann man die UMTS-Verbindung im Networkmanager einrichten.

Probleme: einige User berichten von unregelmäßigen Abbrüchen. Es scheint sich hierbei um einen Upstream Bug zu handeln.

 dmesg | grep disconnect
 [ 2783.137788] usb 2-1.4: USB disconnect, device number 3
 [ 2783.138370] qcserial ttyUSB0: Qualcomm USB modem converter now disconnected from ttyUSB0

Lösung: unbekannt

Fingerprint

Leider ist die Treiberunterstützung unter Linux lückenhaft (alle Einzelheiten im thinkwiki), daher unterstützen die existierenden Softwareprojekte viele - aber keineswegs alle - verbauten Leser. Zur eindeutigen Identifikation der Leser ist die unten angegebene USB-ID zweckmäßig, die man mit dem Befehl

lsusb

ermitteln kann.

Nicht unterstützte Modelle

Für folgende Geräte gibt es keinen Linux-Treiber für den FPR:

ThinkPad R400/500, T400/500, W500/W700(ds), X200(s/t), X301:

  • 08ff:2810 - Authentec AES2810

ThinkPad X230(i) T430(i) L530 L430

  • 147e:2020 Upek / AuthenTec mit TCD51 Chip

WLAN LED blinken ändern

Die Wlan LED blinkt standardmäßig bei Aktivität. Dies kann man durch erstellen der Datei /etc/modprobe.d/iwlegacy.conf mit folgendem Inhalt ändern(root erforderlich):

#no blinking LED for wlan
options iwlegacy led_mode=1

Strom sparen

TLP

Installation und Dokumentation siehe: http://thinkwiki.de/TLP_-_Linux_Stromsparen#Fedora_16_und_h.C3.B6her

Einstellungen siehe: http://thinkwiki.de/TLP_Einstellungen

Die Kernel-Bootoptionen können ebenfalls aus der TLP Dokumentation übernommen werden. Anstatt eines "sudo update-grub" aktiviert man diese als root mit dem Befehl

 grub2-mkconfig -o /boot/grub2/grub.cfg

Akku-Ladeschwellen setzen

Wie unter anderem im ThinkWiki beschrieben, lassen sich auch unter Fedora die Akku-Ladeschwellen mit dem Kernel-Modul "tp_smapi" setzen.

Bei neueren Modellen X230(i), T430(i), L530 und L430 mit dem Kernel-Modul "acpi_call" und dem Script tpacpi-bat.
Mit der Version 0.3.7 unterstützt TLP neben tp_smapi auch acpi_call und tpacpi-bat.

Die Ladeschwellen können in der TLP-Konfigurationsdatei /etc/default/tlp eingestellt werden.

TP Smapi / ACPI-Call

Für tp_smapi und und acpi_call sind akmod-rpm im Linrunner Repo zu finden.

Installation siehe: http://thinkwiki.de/TLP_-_Linux_Stromsparen#Fedora_16_und_h.C3.B6her

Lüftersteuerung

Mithilfe des Programms ThinkFan kann man auch unter Fedora seinen Lüfter in Abhängigkeit der Temperatur steuern lassen.

  • Fertige rpm Pakete gibt es hier
  • Installiert wird per
# su -c "yum localinstall thinkfan*.rpm
  • Die Konfiguration läuft wie in Thinkfan beschrieben

Undervolting

Um weiter Strom zu sparen, die Betriebstemperatur zu senken und damit die Lebensdauer der Komponenten zu erhöhen, ist Undervolting zweckmäßig. Zur Vorbereitung werden folgende Pakete benötigt:

# su -c "yum install @development-tools"
# su -c "yum install fedora-packager dkms"

Danach wird von hier der PHC Patch geladen werden (aktuell: rev.9.1). Dieser wird nun entpackt und in das Verzeichnis gewechselt:

# tar xf phc-intel-pack-rev9.1.tar.bz2
# cd phc-intel-pack-rev9.1

Nun wird ein dkms Paket gebaut und danach installiert:

# make dkms_mkrpm
# su -c "yum localinstall phc-intel-0.3.2-1dkms.noarch.rpm"

Nach einem Neustart funktioniert PHC und lässt sich per TLP komfortabel konfigurieren, siehe hierzu TLP und TLP Einstellungen.