Linux Tweaks

 

Grundsätzliches

Terminal öffnen: STRG – ALT – F1

 

Vollupdate nach der Installation

sudo apt-get update && sudo apt-get upgrade
sudo apt-get install linux-generic
sudo apt-get dist-upgrade
sudo update-grub

Aufräumen

bleachbit, FSlint und gtkorphan sind Tools, um Linux von Müll zu befreien.

 

 

Es reicht bei Linux jedoch völlig aus, ab und an alte Kernelversionen mit

sudo apt-get autoremove

zu entfernen und den Paketcache mit

sudo apt-get clean

zu leeren.

Schreibcache der Festplatte aktivieren

„Laufwerke“ aufrufen und die enstprechende Festplatte auswählen.

 

SWAP optimieren

By default, Ubuntu, unfortunately too much tendency to start using the swap (virtual memory on the hard disk). Useful for servers, but not for normal use. 
This speaks Ubuntu, especially with 512 MB of RAM or less, the swap too quickly. Who writes on the hard drive slow ubuntu considerably. Virtual memory on the hard disk is simply much slower than the „real“ RAM. 
The swap tendency may have a value of 0 (fully off) to 100 (swap is constantly used). 
First check the current tendency of your Ubuntu swap: 
Applications> Accessories> Terminal window: 
Tap (copy and paste):

cat /proc/sys/vm/swappiness

Press Enter. Probably the tendency to swap 60, which is only for servers is a good value. For normal home use is far too high. 
Reduce the swap tendency therefore as follows: 
Applications> Accessories> Terminal Window 
Copy and paste.

gksudo gedit /etc/sysctl.conf

Press Enter. 
Now start Gedit little notebook with a specific text file. 
Add at the bottom of that text file, the following lines (copy and paste):


# Reduce the swap tendency 
vm.swappiness = 10

Save the text file and exit Gedit little notebook. 
Restart Your Computer: And now it’s done at 10. 
Home rule is a workable example Ram = 1 GB or more 10. 
Less than 1 GB Ram = 1. 
So I gave him 10 standing.

 

 

Reduce overheating

Overheating is a common problem in computers these days. An overheated computer runs quite slow. It takes ages to open a program when your CPU fan is running like Usain Bolt. There are two tools which you can use to reduce overheating and thus get a better system performance in Ubuntu 13.10, TLP and CPUFREQ.

To install and use TLP, use the following commands in a terminal:

sudo add-apt-repository ppa:linrunner/tlp
sudo apt-get update
sudo apt-get install tlp tlp-rdw
sudo tlp start

You don’t need to do anything after installing TLP. It works in background. To install CPUFREQ indicator use the following command:

sudo apt-get install indicator-cpufreq

Restart your computer and use the Powersave mode in it:

 

Weitere Tweaks

 

1. sysctl.conf
Wichtiger Hinweis: – FALSCHES Bearbeiten der sysctl.conf Datei kann das System instabiel machen und ist nur für fortgeschrittene Benutzer gedacht

Zuerst eine Sicherungskopie der Datei /etc/sysctl.conf anlegen

cp /etc/sysctl.conf /etc/sysctl.conf.bak
sudo pluma /etc/sysctl.conf

 

Folgende Zeilen können eingefügt / geändert werden, wenn mehr als 512 MB RAM vorhanden sind

kernel.sem = 250 32000 100 128
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
fs.file -max = 65536                # maximal geöffnete Datein
vm.swappiness = 10                  # erst swappen, wenn RAM fast voll
vm.vfs_cache_pressure = 50    # Wie mit Inods und Verzeichniseinträgen umgegangen werden soll

vm.swappiness – Der Wert der Variablen kann zwischen 0 und 100 liegen. Der Wert 0 bedeutet, dass der Kernel den Auslagerungsspeicher auf der Festplatte (swap) nur dann nutzt, wenn es nicht anders geht. Der Wert 100 bedeutet das genaue Gegenteil. Es wird so früh wie möglich ein unbenutzter Speicherbereich in den Swapspeicher geschoben.

vfs_cache_pressure – Diese Option steuert die Tendenz des Kernels , um den Speicher, der für die Zwischenspeicherung von Verzeichnis-und Inode- Objekte verwendet wird, zurückverlangen. Bei den Standardwert von vfs_cache_pressure = 100 wird der Kernel versuchen, Verzeichniseinträge und Inodes zu einem „angemessenen “ Zeit in Bezug auf Zwischenablage und swapcache zurück zu fordern. Sinkende vfs_cache_pressure bewirkt, dass der Kernel lieber Verzeichniseinträge und Inode- Caches zu behalten.
Wenn vfs_cache_pressure = 0 , wird der Kernel nie versuchen Verzeichniseinträge und Inodes aufgrund von Speicher ernpässen zurückzuverlangen
Das kann schnell zu Out-of-Memory- Bedingungen führen. Steigende vfs_cache_pressure über 100 bewirkt, dass der Kernel lieber Verzeichniseinträge und Inodes zurückfordert

um die Änderungen Live zu übernehmen

    sudo sysctl -p


2. IPv6 deaktivieren

IPv6 wird in den meisten Fällen (noch) nicht benötigt und kann manchmal dazu führen, dass das System langsamer reagiert. Deswegen kann man es bei Bedarf systemweit deaktivieren.

Dazu wird in die Datei /etc/sysctl.conf mit Root-Rechten folgende Zeile:

net.ipv6.conf.all.disable_ipv6=1
net.ipv6.conf.default.disable_ipv6=1
net.ipv6.conf.lo.disable_ipv6=1

 

2.1 Firefox IPv6 deaktivieren

Weitere Firefox Tipps unter 8.1 zu finden

about:config
network.dns.disableIPv6 = > true
network.http.pipelining = > true
network.http.pipelining.maxrequests => 8
network.http.proxy.pipelining => true


3. CPU Einstellungen

3.1 Alle CPU’s beim Systemstart verwenden

Wenn du in deinem PC eine Multi-Core-CPU hast, kannst du den Systemstart beschleunigen, indem du alle CPU’s dafür benutzt

    sudo pluma /etc/init.d/rc

Suchen jetzt nach dieser Zeile:

CONCURRENCY=none

und ersetze es durch:

CONCURRENCY=makefile

Speichern nicht vergessen

3.2 CPU Governor – Prozessortaktung

Hier nur kurz erwähnt eine gute Anleitung gibt es in der Ubuntu Wiki
Eine gute Beschreibung der Governors gibt es von RedHat unter http://goo.gl/UsJWMW (müsste ich kürzen)

Der CPU Governor hat zwei eigenschaften, zum einen kann er den Energieverbrauch senken oder die Performance erhöhen. Je nach dem für welchen man sich entscheidet.

Verfügbare Governors

ondemand – Standard bei den meisten Systemen. Die CPU-Frequenz wird den aktuellen Bedürfnissen an die Rechenleistung angepasst. Dabei wird die CPU-Frequenz u.U. sprunghaft angehoben oder abgesenkt.
conservative – Die CPU-Frequenz wird den aktuellen Bedürfnissen an die Rechenleistung angepasst. Die Taktfrequenz wird aber Schritt-für-Schritt angehoben bzw. abgesenkt.
performance – CPU läuft permanent auf der höchsten erlaubten Taktfrequenz.
powersave – CPU läuft permanent auf der niedrigsten erlaubten Taktfrequenz.
userspace – Dies ist kein Kernel-eigener Governor. Vielmehr wird ein Governor-Programm wie z.B. powernowd verwendet. Sinnvoll, wenn der Kernel meint, nur den Governor performance verwenden zu können


4. Festplatten, SSD und RAID

4.1 Festplatten Aktivität reduzieren

Bei einer ext3 oder ext4 Partition

Normalerweise werden Zugriffszeiten in der Inodetabelle gespeichert. Wenn das nicht relevant ist, kann dies deaktiviert und so die Festplattenaktivität reduziert werden. Es muss nur die Option „relatime“ oder „noatime“ in der /etc/fstab an die passende Stelle gesetzt werden, z.B:

Beschreibung der Optionen:
noatime speichert die Dateizugriffszeiten nicht.
nodiratime speichert die Ordnerzugriffszeiten nicht.
relatime speichert die Zugriffszeit nur dann, wenn der letzte Zugriff vor der letzten Änderung der Datei (ctime und mtime) war.

# Festplatte
UUID=523ed8b9-a9c7-4f73-9b36-6a3418dc4a81   /home   ext4   relatime   0   2


4.2 SSD und TRIM

TRIM ist ein sehr wichtiger Befehl zur Markierung ungenutzter oder ungültiger Datenblöcke auf Speichermedien zum Zweck der späteren Wiederbeschreibung

Unterstützt deine SSD TRIM?

# hdparm -I /dev/sda |grep TRIM

Die Ausgabe sollte dann so ungefähr aussehen

        *    Data Set Management TRIM supported (limit 1 block)
*    Deterministic read data after TRIM

Es gibt zwei arten von TRIM:
Online Discard = Trim kann entweder sofort zur Laufzeit beim Löschen von Dateien die entsprechenden Daten auf der SSD löschen
Batched Discard = oder zyklisch manuell durch Hilfsprogramme (cron) nicht mehr benötigte Blöcke freigeben

Um die TRIM-Funktion „Online Discard“ nutzen zu können, müssen einige Mountoptionen in der /etc/fstab gesetzt werden.
Dazu ergänzt man mit root-Rechten in der Datei /etc/fstab die bestehenden Zeilen mit den Optionen discard und noatime:

# SSD
UUID=523ed8b9-a9c7-4f73-9b36-6a3418dc4a81   /home ext4 discard,noatime,errors=remount-ro 0       1

Um die TRIM-Funktion „Batched Discard“ nutzen zu können, in die Crontab folgenen eintrag hinzufügen

@weekly echo "*** $(date -R) ***" >> /home/user/trim.log && fstrim -v /home >> /home/user/trim.log

quick and dirty

sudo echo "@weekly fstrim -v /home" >> /etc/crontab


4.3 Software-RAID
4.3.1 Resync und Rebuild beschleunigen

Ein Software-RAID ermöglicht ein unterbrechungsfreien Zugriff auf die gespeicherten Daten auch während eines Ausfalls.
Daten können also auch während eines Resyncs oder Rebuilds gelesen und geschrieben werden, wenn auch mit verringerter Geschwindigkeit.
Lese- und Schreibzugriffe wirken sich umgekehrt wiederum auf die Geschwindigkeit von Resnyc- und Rebuild-Vorgängen aus.
Ist es wichtiger, dass das RAID schnell wieder in den Zustand clean kommt, dann sollte folgende einstellung gemacht werden:

sudo su -c "echo 200000 > /proc/sys/dev/raid/speed_limit_min"

 

Das System wird Rebuild und Resync mindestens mit dieser Geschwindigkeit durchführen und eventuellen Überschuss für Lese-/Schreib-Zugriffe frei halten.

Um den Wert wieder zu senken folgenden Befehl ausführen

sudo su -c "echo 1000 > /proc/sys/dev/raid/speed_limit_min"


5. Tmpfs / Temporäres Filesystem

sudo pluma /etc/fstab

 

und folgende Zeile hinzufügen

tmpfs /tmp tmpfs defaults,noexec,nosuid,size=15% 0 0

 

oder

tmpfs /tmp tmpfs defaults,noexec,nosuid,size=2G 0 0

Somit sind 15% / 2 GB des Arbeitsspeichers (man kann den Wert je nach Bedarf anpassen) für die temporären Dateien reserviert.
Das heißt zwar, dass weniger Speicher für Programme verfügbar ist, dafür werden die Lese- und Schreibzugriffe auf temporäre Dateien beschleunigt und die Festplatte wird nicht beansprucht.

5.1 Tmpfs und SSD

Um das Schreiben auf die SSD zu minimieren ist folgende Option sinnvoll

sudo pluma /etc/fstab
tmpfs /tmp tmpfs noexec,defaults,noatime 0 0
tmpfs /var/tmp tmpfs noexec,defaults,noatime 0 0

ACHTUNG: Wenn ihr z.B. Scripte verwendet, die nach /tmp schreiben darauf achten, dass keine riesigen Datenmengen dort abgelegt werden können ggf. Script anpassen oder tmpfs anders benennen
PS: Mir ist das beim Konvertieren eines Videos via Script mal passiert


6. Namensauflösung

Sollten generell Programme langsam starten, hilft eventuell eine Ergänzung in der /etc/hosts

127.0.0.1 localhost
127.0.1.1 Rechnername

wird zu …

127.0.0.1 localhost Rechnername
127.0.1.1 Rechnername


7. Programme in den RAM vorab laden!!!

Aus Erfahrung kann ich sagen, bei einer SSD als Systemplatte hat das nicht wirklich viel geholfen.
Kann aber bei dir anders sein.

Das Programm preload
http://wiki.ubuntuusers.de/preload
https://www.linuxmintusers.de/index.php?topic=15574.0


8. Firefox Tuning

8.1 Verlagerung des Browser-Caches bei Firefox

Da der Internet-Browser das meistgenutzte Programm ist, macht es Sinn, diesem mitzuteilen,
dass es den Programm-eigenen Cache ebenfalls nach /tmp und damit auf die vorher eingerichtete RAM-Disk schreibt.
Dies verringert erneut zahlreiche Schreibzugriffe auf die SSD/HDD.

Man öffnet einen neuen Tab im Firefox und gibt in diesen about:config ein.
Die Warnung, welche man sieht, ruft man diese Seite erstmals auf, kann man auf die leichte Schulter nehmen, aber sollte sie durchlesen.
Man klickt nun mit der rechten Maustaste in das große, weiße Feld und wählt
„Neu -> String“.
Im aufpoppenden Fenster gibt man den Namen

browser.cache.disk.parent_directory

ein und bestätigt mit OK. Im nächsten Fenster gibt man als Wert

/tmp

ein. Auch dies wird mit OK bestätigt und man kann den Tab wieder schließen.


8.2 Firefox Tuning

DSL-Anschluss
Um das Surfen mit dem Browser zu beschleunigen, benutzt Firefox das Pipelining. Das bedeutet: Mehrere Bestandteile einer Web-Seite werden gleichzeitig angefordert, zum Beispiel sämtliche Bilder. Auf eine Antwort des Servers wird dabei nicht einzeln gewartet.

Wieder in die Firefox Adresszeile about:config eintippen und folgende Werte ändern:

network.http.pipelining – true
network.http.proxy.pipelining – true
network.http.pipelining.ssl – true

 

HTTP-Einstellungen
Mit HTTP (Hypertext Transfer Protocol) werden die Daten zwischen Browser und Webserver verschickt. Diese Einstellungen sollten vorsichtig gewählt werden, sonst kann es zu Problemen kommen: Geben Sie zu falsche Werte ein, können Verbindungsabbrüche oder Datenstau die Folge sein. Die hier gemachten Vorschläge sind für Rechner geeignet, die über eine DSL-Verbindung verfügen.

about:config

network.http.max-connections – 48
network.http.max-connections-per-server – 24
network.http.max-persistent-connections-per-proxy – 12
network.http.max-persistent-connections-per-server – 8
network.http.pipelining.maxrequests - 8

 

Firefox Addons
Mit dem Firefox Addon about:addons-memory kann man sich die Speichernutzung von installierten Addons anschauen.
Angegeben wird sowohl der absolute Wert als auch der prozentuale Anteil am Verbrauch aller Erweiterungen.


9. OpenOffice

Die Startzeit von OpenOffice kann man drastisch verkürzen wenn man ein wenig Speicher über hat.
Extras-> Optionen-> Arbeitsspeicher

Verwenden für OpenOffice.org: 256 MB
Speicher pro Objekt: 64 MB
Schnellstart des Systemanschnittes der Kontrolleiste auswählen

Wenn du Java JRE in OpenOffice nicht benötigst, dann einfach under Optionen Java JRE deaktivieren.


10. VLC
In VLC kann man die Darstellung von Videos, mit Fehlern, drastisch verbessern.

Einstellungen-> Input/Codecs-> ffmpeg

direktes rendern auswählen –> Fehlerbelastbarkeit: 44
Auch sonst kann man je nach Ausstattung hier die Qualität mit den anderen Einstellungen verbessern.


11. apt-get cache
Einmal im Monat wird der Cache und verweiste Pakete entfernt
Am besten in die root crontab hinterlegen

Terminal öffen:

su - root
crontab -e

Folgende Zeile so eintippen ACHTUNG eventuell ist der vi aktiv, dann nach dem aufruf i drücken und folgende Zeile eingeben

@monthly sudo apt-get autoremove && sudo apt-get clean

Speichern im vi mit <ESC> drücken, dann :wq und <Enter> | abbrechen im vi mit <ESC> drücken, dann mit :q! <Enter>

quick and dirty

echo "@monthly sudo apt-get autoremove && sudo apt-get clean" >> /etc/crontab

PS: Eine SSD kann viel bewirken und muss nicht teuer sein. SSD mit 32 GB ab 20 €
Reicht für Linux alleine für den „normal“ Benutzer aus, Homeverzeichnis kann ja auf einer HDD liegen bleiben