*

Offline Jo

  • *****
  • 231
  • Geschlecht: Männlich
    • JoLichter.de
TuTo: Manjaro (KDE)
« am: 26. Januar 2020, 11:42:38 »
Stand 2020-07-04

LINUX MANJARO
Stabil mit immer aktueller Software
Basiert auf die leichtgewichtige Distribution Arch Linux
Viele aktuelle Desktops KDE, XFCE, GNOME, CINNAMON u.v.m.


VORWORT    direkt zum TUTORIAL
Dank Knoppix, Ubuntu und Mint ist LINUX erfolgreich geworden. Eine Live-DVD oder USB-Stick zum testen und installieren ist mit der simplen Bedienoberfläche auch für Einsteiger geeignet. Mit solch einem LINUX Live-System habt ihr immer eine Rettungs DVD oder Stick zur Hand um z.B. eure Daten zu retten oder ins Internet zu gehen! Ich nutze seit vielen Jahren die Debian Distributionen, Ubuntu, Mint oder KDE neon und habe dabei verschiedene Desktops getestet. KDE, XFCE, GNOME, CINNAMON oder MATE - ist alles Geschmackssache und jeder kann sich sein Lieblings-Desktop installieren.

Leider ist Ubuntu für mich heute nicht mehr das was es zu Beginn war. Schlecht gepflegte Universe, versuch ein eigenes Init-System einzuführen, Amazon-Anbindung, schwieriges Verhältnis zur Open Source-Community und dann noch die Katastrophe mit dem UNITY-Desktop, was viele Ressourcen gekostet hat. Klar, Mint ist inzwischen das bessere Ubuntu, leider aber auch davon abhängig.

Auf der Suche nach einer Alternative, die auch meinen Lieblings-Desktop KDE voll unterstützt, habe ich mich nun für Manjaro entschieden.

WARUM NUTZE ICH NUN MANJARO?
Erst mal möchte ich ein immer aktuelles und stabiles System haben. Manjaro lief selbst in meiner virtuellen Maschine schneller als mein damaliges KDE neon. Bootzeit meines PCs wie hier beschrieben dauert mit open-iscsi, Apache Web Server und MySQL ca. 10 Sekunden bis zur Anmeldung, weitere 3 Sekunden bis zum KDE Desktop, welcher sofort voll verfügbar ist. Das Laden von Anwendungen, wechseln zwischen den Anwendungen und booten des Computer ist einfach schneller. Wie kann ich die Geschwindigkeitsvorteile erklären? Evtl. liegt das an der Anzahl der Dienste und Daemons. Mit httpd und mysql services und fstrim.timer sind das bei mir nur 28 Dienste, bei Ubuntu waren das 94 Dienste! OK ein paar kann ich deaktivieren, dennoch sind es viel mehr. Prüft es selbst:
systemctl list-unit-files --state=enabled --no-pager
Manjaro ist eine auf Arch Linux basierende Linux-Distribution, die in Deutschland, Frankreich und Österreich entwickelt wird. Es ist in erster Linie ein freies Betriebssystem für Personal Computer, welches auf Benutzerfreundlichkeit ausgerichtet ist. Wie seine Basis, Arch Linux, nutzt es ein Rolling-Release-Modell. Jedoch nimmt Manjaro das meiste Risiko aus dem Rolling-Release-Modell heraus, indem es die Veröffentlichung neuer Anwendungen und Funktionen um mehrere Wochen verzögert. Sobald diese getestet und als sicher erwiesen wurden, werden sie zur Verfügung gestellt.

HAUPTMERKMALE
Manjaro teilt viele Eigenschaften mit Arch. Hierzu gehören insbesondere:
  • Geschwindigkeit, Stärke und Effizienz
  • Zugang zu neuer und neuester Software, oftmals bevor die Pakete für andere Distributionen erhältlich sind
  • Manjaro ist ebenfalls ein Rolling Release, so dass jeweils die neueste Software installiert werden kann ohne dass die Notwendigkeit bestünde, auch ein neues System zu installieren
  • Zugang zu von Arch-Nutzern bereit gestellten Paketen (AUR)

Allerdings besitzt Manjaro auch einige Eigenschaften, die es von Arch deutlich unterscheiden, insbesondere:
  • Eine einfachere und benutzerfreundlichere Installationsroutine
  • Automatische Hardwarerkennung, bspw. der Grafikkarte
  • Automatische Installation der Software, die für das Funktionieren des Computers benötigt werden, etwa von Grafiktreibern
  • Manjaro hat ein eigenes Software-Archiv (stable-Repository), um sicherzustellen, dass die Benutzer Zugang zu vollständig getesteter und stabiler Software erhalten, nimmt also in Bezug auf Aktualität der Pakete etwas mehr Abstand von Arch
  • Unterstützung bei der Installation und Benutzung mehrerer Kernel (ich nutze nur LTS-Kernel)
Quelle: wiki.manjaro.org

Mit Manjaro bekommt ihr neueste Technologie, die fertig entwickelt und umfassend getestet wurde (Cutting Edge). Beispiel: Manjaro hatte KDE Plasma 5.18 nicht sofort zur Verfügung gestellt, sondern erst mit dem drittes Release (5.18.3), welches die meisten der gemeldeten Probleme behebt. Dieses Rolling-Release-Modell bleibt immer aktuell und stabil. Bedeutet daher auch öfters größere Updates, was eine schnelle Internetverbindung voraussetzt.

Nicht jeder möchte immer das Neuste haben, selbst wenn umfassend getestet könnte das manche Anwender irritieren? Privat sollte das kein Problem sein, aber im Geschäftsbetrieb könnten die vielen Updates stören. Mitarbeiter die gerne kritisieren, weil sie der Meinung sind das Windows besser ist, fühlen sich dann bestätigt. Wobei bei Windows 10 die Datensammlungswut und die Mega-Updates nur noch nervig sind. Das ist echte Arbeitsverhinderung die es so bei Linux nicht gibt! Egal ob Windows, Linux oder MAC, viele Anwender sind froh wenn sie die benötigen Programme einigermassen beherrschen. Wenn dann mal etwas auf englisch erscheint oder ein Programm eine andere Oberfläsche hat, wird gemault und stört den Büroalltag. In dem Fall würde ich ein Linux LTS wie z.B. Linux MINT nehmen, welches 5 Jahre Langzeitsupport bietet.



TUTORIAL
Hier mein TuTo um Manjaro mit KDE auf einer leeren Festplatte (kann auch während der Einrichtung gelöscht werden) mit /home auf eine extra Partition zu installieren. Die Installation auf einer SSD Festplatte hat keine 5 Minuten gedauert! Die Bilder aus meiner VM zeigt die Testinstallation von Manjaro auf einer virtuellen 30GB Festplatte.

INHALT
Manjaro installieren
Optimieren und pflegen
Paketverwaltungsbefehle
Programme deinstallieren & installieren
SSD optimieren
VirtualBox installieren
Webserver installieren und einrichten (lokal)
Paketliste und System wiederherstellen
Anhang: Neuinstallation auf bestehendes LINUX ohne die /home Partition zu formatieren


1 ) Download Manjaro KDE Plasma 64 bit Version (Live Image), testen und installieren
Ich wähle die minimal Basis-Desktop-Umgebung ohne vorinstallierte zusätzliche Softwarepakete aus.
Download Link, ISO unter der aktuellen Version (höchste Zahl), dann im Ordner "minimal".


(z.B.: manjaro-kde-20.0-minimal-200426-linux56.iso | Stand 2020-04-28)

Wichtig: Erstellt vor der Installation ein Backup!

Das Live-Image habe ich mit dd (disk dump) auf einen USB-Stick kopiert. Unetbootin funktioniert anscheinend mit Efi nicht (komme beim booten immer nur in grub rescue). Unter Windows soll das mit Rufus und dem DD-Modus funktionieren (ungetestet). Ich habe das per Terminal wie folgt getan.

ACHTUNG! Beschreibt das richtige Laufwerk und listet dafür die Partititonen auf, um den Pfad für das USB-Laufwerk zu ermitteln:
sudo fdisk -l(bei mir ist das "/dev/sde1")

Sicherstellen das dieses USB-Gerät ausgehängt ist:
sudo umount /dev/sde1
ISO-Datei auf USB-Gerät schreiben. Den Pfad zur ISO-Datei (bei mir "Downloads") und Dateiname anpassen.
Als USB-Gerät nicht die Partitionsnummer "/dev/sde1" angeben, sondern "/dev/sde" (also ohne Zahl).
Beispiel Manjaro KDE 19.0.2 minimal:
sudo dd bs=4M if=~/Downloads/manjaro-kde-19.0.2-minimal-200311-linux54.iso of=/dev/sde status=progress oflag=sync
Hinweis: In Manjaro selbst könnt ihr dafür den Suse Studio Imagewriter nutzen.

Beim Starten vom Live-Image per VM hatte ich ca. 2 Minuten einen schwarzen Bildschirm, also etwas Geduld und ihr könnt Manjaro testen, im echten System ist das viel schneller.


Wenn das Netzwerk, Soundkarte usw. funktioniert, einfach auf das Icon "Install Manjaro Linux" klicken.





Zwei Btrfs-Partitionen manuell anlegen. Swap-Partition in Testumgebung nicht notwendig, seit Kernel 5 erstelle ich eine swap-Datei nach dem Installieren:
  • / (root - flagged as boot) sollte ca. 40GB groß sein, der Rest ist dann für /home (hier nur 10GB, da das eine Testumgebung ist)
  • /home verschlüsselt mit LUKS
Habe zum Testen die Home-Partition mit LUKS (dm-crypt) verschlüsselt, Nachteil: Nach der Installation erscheint die Passwortabfrage für die Home-Partition während des Boot-Prozesses, bei einem One-User System melde ich mich daher automatisch an um nicht 2x ein Passwort angeben zu müssen. Mit PAM lässt sich das automatisch einbinden, setzt jedoch gute Linux-Kenntnisse voraus.

Gute Alternative: Unter KDE können mit Plasma Vault Ordner per EncFS oder CryFS nachträglich sicher verschlüsselt und eingebunden werden. Finde ich sogar besser, z.B. kann beim Öffnen eines Vault-Ordner das Netzwerk und Bluetooth automatisch deaktiviert werden. In dem Fall also die Home-Partition als Btrfs-Partition ohne Verschlüsselung anlegen.



Nachtrag: Partitionen meiner NVMe SSD die kein "Legacy Mode" unterstützt. Daher eine EFI-Systempartition (flagged: boot, esp) mit /boot/efi, root und /home ohne swap (GPT anstatt MBR-System)






2 ) PAMAC
Nach dem Start kann mit Pamac alles aktualisiert werden und mit dem Einstellungsmanager z.B. zusätzliche Sprachpakete installiert werden. Im Kontextmenü Optionen (Manjaro Notifier KDE Settings) können die Kernel-Benachrichtigungen angepasst werden, ich lasse nur bei LTS-Kernel benachrichtigen.


Pamac ist ein grafischer Paketmanager von Manjaro und als Unterbau dient Pacman, welches ich per Kommandozeile im Terminal nutze. Dieser beherrscht auch die Installation von Paketen über das AUR (Arch User Repositories), welches von einer Gemeinschaft verwaltet wird und kann in den Einstellungen aktiviert werden. AUR Benutzer sollten mit dem Build-Prozess vertraut sein. Tatsächlich ist die AUR-Unterstützung deaktiviert (Standardeinstellung) und muss manuell aktiviert werden. Im Prinzip ist AUR das Pendant zu Ubuntus PPA's. Linux Anfänger und normale Benutzer empfehle ich Pakete nur aus den Manjaro Software Repositories zu installieren und wenn möglich nie aus dem AUR Pakete zu installieren.

Pacman verwaltet Binärpakete die aus den Repositorys stammen und hält das System aktuell, indem die Paketlisten mit einem Server synchronisiert werden. Durch dieses Server/Client-Modell ist es möglich, Pakete mit allen Abhängigkeiten herunterzuladen, zu installieren bzw. zu aktualisieren.
Diese Seite kann bei einem Problem hilfreich sein: archlinux.de/news


3 ) Grub anpassen, z.B. diese Einträge:
kate /etc/default/grubGRUB_DEFAULT=0
GRUB_TIMEOUT=2
#GRUB_TIMEOUT_STYLE=hidden
GRUB_DISTRIBUTOR="Manjaro"
GRUB_CMDLINE_LINUX_DEFAULT="noplymouth"
GRUB_CMDLINE_LINUX=""
GRUB_SAVEDEFAULT="false"


dann Grub aktualisieren und den PC neu starten:
sudo update-grub
Ich möchte die Kernelmeldungen beim Ladeprozess mitverfolgen und 2 Sekunden das Grub Menü sehen, um notfalls einen älteren Kernel zu starten (wenn unterdrückt, beim Booten die linke Shift oder Esc Taste festhalten).
Wenn Btrfs genutzt wird und beim starten die Fehlermeldung sparse file not allowed erscheint, muss "GRUB_SAVEDEFAULT" deaktiviert werden. Das Abspeichern funktioniert aus Sicherheitsgründen nicht auf einem RAID-Verbund, einem LVM-Dateisystem, einem Btrfs-Dateisystem oder einem ZFS-Dateisystem (Quelle: GNU GRUB MANUAL).

4 ) SWAP-DATEI
Anstelle einer dedizierten swap-Partition kann seit dem Kernel 5 im Btrfs-Filesystem eine Auslagerungsdatei nachträglich erstellt werden. Quelle: Swapfiles on BTRFS

z.B. eine 8GB swap-Datei anlegen (gleiche Größe wie RAM verfügbar ist, ab 8GB erhöhe ich das nicht mehr), die Reihenfolge ist wichtig:
sudo truncate -s 0 /swapfile
sudo chattr +C /swapfile
sudo btrfs property set /swapfile compression none
sudo fallocate -l 8G /swapfile
sudo mkswap /swapfile
sudo chmod 600 /swapfile
sudo swapon /swapfile
sudo bash -c "echo /swapfile none swap defaults 0 0 >> /etc/fstab"
Eintrag in der fstab kontrollieren:
kate /etc/fstabPC neu starten und prüfen:
swapon -sTipp: Das KDE-Infozentrum zeigt die Speicherbelegung und viele andere Information zum System grafisch an.

Eine swap-Datei kann so entfernt werden:
sudo swapoff /swapfile
sudo rm -f /swapfile
Eintrag aus der fstab entfernen oder ausklammern:
kate /etc/fstabPC neu starten.

Tipp: Updates mache ich nur per Terminal (mehr siehe Paketverwaltungsbefehle)
Einmalig aktuelle Spiegelserver aus diesen 3 Ländern speichern und alles synchronisieren:
sudo pacman-mirrors --country Germany,France,Austria && sudo pacman -Syyuudanach mache ich bei Bedarf oder wöchentlich:
sudo pacman -Syyuu && sudo paccache -rk2
So das war es eigentlich schon! Mit Pamac könnt ihr fehlende Software installieren/deinstallieren und viel Spaß mit Manjaro haben.

 :-[ O0



Infos und Details zu Manjaro KDE
So wie ich KDE unter Manjaro nutze, evtl. ist was für euch dabei?
Tipps, Anregungen oder Fehler die ihr findet, könnt ihr gerne behalten oder mir per Kontaktformular oder Twitter senden.

Version prüfen per Terminal:
lsb_release -aAusgabe Basisinformationen:
inxi -FzAusgabe vollständiger Systeminformationen:
inxi -v8per KDE-Infozentrum


5 ) KDE Systemeinstellungen nach eigenen Bedarf und Wünschen anpassen, z.B.
  • Manjaro -> Hardwarekonfiguration, Kernel und Sprachpakete prüfen
  • Erscheinungsbild -> Globales Design und Stile  -> Breath
  • Erscheinungsbild -> Schriftarten  -> Wer einen 2K (QHD) oder 4K (UHD) Monitor benutzt kann hier die DPI für Schriften anpassen, z.B. hat ein 4K Monitor Dell U3219Q laut Techn. Datenblatt 140 DPI (wer keine Daten hat kann das leicht ausrechnen, Link DPI-Rechner)
  • Erscheinungsbild -> Symbole  -> Ab einem 4K (UHD) Monitor setze ich die Symbolgröße für jedes Icon eine Stufe höher
  • Hinweis: Einfacher ist das dem Schieberegler unter Hardware -> Anzeige und Monitor -> Anzeige-Einrichtung -> Globale Skalierung (das passt auch die DPI für Schriften an)
  • Arbeitsbereich -> Verhalten des Arbeitsbereichs -> Allgemeines Verhalten -> Klick-Verhalten: Doppelklick zum Öffnen der Dateien/Ordner
  • Arbeitsbereich -> Verhalten des Arbeitsbereichs -> Bildschirmsperre -> Aktivierung: 5 Min. | 300 Sek. | Meta+L | Erscheinungsbild: Diaschau, Virtuelle Arbeitsflächen 2
  • Arbeitsbereich ->Verhalten des Arbeitsbereichs -> Aktivitäten: Privatsphäre Verlauf für 1 Monat behalten oder "Nicht merken"
  • Arbeitsbereich -> Fensterverwaltung -> Fensterverhalten, im TAB "Fensteraktionen" Sondertaste: "Meta" (wichtig wenn ihr z.B. VirtualBox mit Windows benutzt)
  • Arbeitsbereich -> Starten und Beenden -> Anmeldeschirm (SDDM) -> Breath
  • Arbeitsbereich -> Starten und Beenden -> Arbeitsflächen-Sitzung: Abmeldung bestätigen aus, Rechner ausschalten, Mit leerer Sitzung starten
  • Arbeitsbereich -> Starten und Beenden -> Startbildschirm -> Breath
  • Arbeitsbereich -> Suchen -> Dateisuche: habe hier alles deaktiviert (beendet den baloo_file_extractor Prozess und die Suche nach Dateinamen funktioniert weiterhin; Indexinformationen löschen: rm -rf ~/.local/share/baloo)
  • Persönliche Informationen -> Benutzerkontodetails -> KDE-Passwortspeicher: Bei Nichtgebrauch schließen nach: 180 Min.
  • Persönliche Informationen -> Regionaleinstellungen -> Sprache: Deutsch, Rechtschreibprüfung: Deutsch (Deutschland)
  • Persönliche Informationen -> Anwendungen -> Standard-Anwendungen: Webbrowser: firefox (evtl. chrome oder palemoon?) / E-Mail-Programm (11/12): kmail (evtl. evolution oder thunderbird?)
  • Persönliche Informationen -> Anwendungen -> Dateizuordnungen: hier die gewünschte Standardprogramme anpassen z.B. für audio, image und video
  • Netzwerk -> Verbindungen: Hier könnt ihr LAN, WLAN oder z.B. VPN mit OpenConnect einrichten (Clientseitig getestet mit einem VASCO Token)
  • Netzwerk -> Bluetooth -> Erweiterte Einstellungen: Bluetooth-Integration aktivieren oder deaktivieren
  • Hardware -> Eingabegeräte -> Tastatur: Zahlenblock beim Plasma Start, Maus: Zeigebeschleunigung anpassen
  • Hardware -> Anzeige und Monitor -> Compositor: Hier nutze ich anstatt OpenGL 2.0 die Version OpenGL 3.1
  • Hardware -> Energieverwaltung -> Bildschirm-Energieverwaltung -> Ausschalten nach: 240 Min. / Wenn der Ausschalt-Knopf betätigt wird: Herunterfahren
  • Hardware -> Wechselmedien -> Automatisches Einhängen von Wechselmedien aktivieren
Tipps: Alte Hardware oder lahme Grafikkarte? Dann schaltet die Desktop Effekte aus: Hardware -> Anzeige und Monitor -> Compositor. Die Diaschau ist eine schöne Alternative zum alten Bildschirmschoner / Screensaver welche es zu Röhrenbildschirm-Zzeiten gab (CRT).

6 ) Paketverwaltungsbefehle
siehe auch KDEtweaksManjaro.sh (als ZPI-Datei) im Anhang
Link einer Tabelle mit Paketverwaltungsbefehle einiger Linux-Distributionen, z.B.:
Komplette System-Aktualisierung:
sudo pacman -Syyuuwenn Pakete auch über AUR installiert wurden (benötigt yay, siehe Punkt 10 ):
yay -SyyuuManjaro sauber halten (lässt zwei Versionen der Pakete für den Fall, dass ein Downgrade durchgeführt werden muss):
sudo paccache -rk2(siehe auch Automatische Cache-Wartung)

ALLES in einer Zeile und nicht mehr benötigte Abhängigkeiten anzeigen[ (verwaiste Pakete):
sudo pacman -Syyuu && sudo paccache -rk2 && sudo pacman -Qdtq
oder ALLES in einer Zeile wenn ihr zusätzlich AUR-Upgrade nutzten wollt:
yay -Syyuu && sudo paccache -rk2 && sudo pacman -Qdtq("Failed to parse JSON" erscheint wenn kein AUR genutzt wird)

Verwaiste Pakete entfernen:
sudo pacman -Rsn $(pacman -Qdtq)
Sollte der Pamac Paketmanager Probleme bei Updates machen, kann das helfen:
alle Pakete im Cache vollständig entfernen (Pacman Cache)
sudo pacman -Scc(beide Fragen mit "j" bestätigen)
dann aktuelle Spiegelserver aus diesen 3 Ländern speichern und alles synchronisieren (nutze ich so da schneller, siehe auch Pacman-mirrors)
sudo pacman-mirrors --country Germany,France,Austria && sudo pacman -Syyuu(Mirrorliste wrd hier gespeichert: /etc/pacman.d/mirrorlist)

Automatische Cache-Wartung:
Der Pacman Cache (/var/cache/pacman/pkg/) wird standardmäßig per pamac-cleancache.timer einmal im Monat entfernt, ansonsten wird die Partition irgendwann voll. Details siehe /usr/lib/systemd/system/pamac-cleancache.timer (Timer einmal im Monat in Kombination mit Persistent=true). Prüfen ob dieser Timer aktiv ist:
systemctl list-timers(oder Systemeinstellungen -> Systemverwaltung -> Systemd -> Timers)
wenn dieser Timer fehlt:
sudo systemctl enable pamac-cleancache.timer
sudo systemctl start pamac-cleancache.timer

7 ) Deinstallieren, z.B. noto-fonts-cjk (asiatische Schriftzeichen), Yakuake (drop-down Terminal) + Falkon (Browser):
sudo pacman -Rns noto-fonts-cjk yakuake falkon
8 ) Mozilla Firefox Add-ons und härten
Hinweis: Es ist nahezu unmöglich, die User-Agent Kennung plausibel in allen Punkten zu faken und ein unvollständiger Fake-Versuch kann ein gutes Identifizierungsmerkmal für Tracking­dienste sein, da man sich von der großen Masse der Surfer stärker unterscheidet.

9 ) Evtl. Pale Moon Browser als Firefox Alternative installieren:
sudo pacman -S palemoon
  • deutsches Sprachpaket, beachte die Infos dort (about:config -> general.useragent.locale von "en-US" auf "de" setzen)
  • in den Pale Moon Einstellungen (Erweitert), die Updates deaktivieren, das übernimmt das Linuxsystem
  • Pale Moon unterstützt keine WebExtensions, daher funktioniert nur das ältere deutsche Wörterbuch Version 2.0.6 (german_dictionary-2.0.6-an+fx+sm+tb.xpi im Anhang)
  • uBlock Origin (direkt von github, sucht Latest release: uBlock0.firefox-legacy.xpi)
  • uBlock Origin Updater (damit wird uBlock Origin automatisch aktualisiert)
  • Canvas Fingerprinting verhindern: about:config -> canvas.poisondata auf "true" setzen, es gibt auch eine Erweiterung dazu: canvasblocker-legacy (meine Block Mode Einstellung: fake readout API)
  • Toggle JavaScript (Enabled/Disabled)
  • Pale Moon härten mit firejail (Profil ist vorhanden), Anwendung starten mit: firejail palemoon %u
Hinweis: Pale Moon ist ein wunderbarer Web-Browser und nutze den täglich. Einige Websites halten ihn machmal für veraltet und senden tatsächlich eine Seite mit der Meldung: "Ihr Browser ist veraltet. Bitte aktualisieren Sie auf einen modernen Browser, um diese Seite nutzen zu können". Das ist natürlich Unsinn und ich bin mit dieser Einschätzung nicht einverstanden. Pale Moon hat die Möglichkeit den User-Agent für bestimmte Domains zu ändern. Einfach einen neuen Eintrag auf der about:config Seite machen. Sucht nach "general.useragent.override", dann seht ihr eine Liste vohandener Einstellungen und könnt einen neuen Eintrag mit gleicher Syntax einfügen, z.B.:
"general.useragent.override.MEINE-HAUS-BANK.de" mit dem String: "Mozilla/5.0 (X11; Linux x86_64; rv:76.0) Gecko/20100101 Firefox/76.0" (evtl. die Version anpassen, hier habe ich Firefox 76 eingetragen).

Noch was zum Firejail, dieser kann in den gesamten Desktop integriert werden und jede Anwendung verwendet dann die Firejail-Sandbox, wenn sie standardmäßig unterstützt wird (nutze ich nicht!):
sudo firecfgRückgängig machen:
sudo firecfg --clean
10 ) ein paar fehlende Pakete installieren (meine):
sudo pacman -S yay hunspell-de manjaro-printer system-config-printer cups-pdf libimobiledevice backintime kolourpaint lame fdkaac audacity easytag mencoder frei0r-plugins devede vlc elisa gimp kfind kdf kwave mediainfo handbrake gthumb firejail pingus kmahjongg aisleriot libreoffice zip unzip unrar doublecmd plasma-vault encfs cryfs samba imagemagick dconf-editor geany htop meld kdialog
Hinweis:
  • sollte nach einem KDE (qt5) oder Gnome (gtk2) Zweig bzw. Provider zum Auswählen gefragt werden, wählt KDE (qt5)
  • "LibreOffice Fresh" ist die stabile Version mit den neuesten Funktionen und "LibreOffice Still" ist die stabile Version, die (über einen längeren Zeitraum) mehr Tests unterzogen wurde
  • mit libimobiledevice und ifuse (leider nur im AUR enthalten) können iOS-Gerät wie z.B. das iPhone als USB-Laufwerk eingebunden werden
Nachtrag: Das Paket ifuse und die Gruppe "fuse" wird anscheinend nicht mehr benötigt. Getestet mit iOS 13.5.1 und KDE Plasma 5.18.5, wenn doch:
yay -S ifuseBenutzer der Gruppe "fuse" hinzufügen:
sudo groupadd fuse
sudo gpasswd -a $USER fuse
Kontrolle nach Neustart:
id(Entfernen mit "sudo gpasswd -d $USER fuse" und "sudo groupdel fuse")

Das ttf-ms-fonts Paket ist in den Arch Repositorys enthalten und kann per AUR installiert werden:
yay -S ttf-ms-fonts(von Microsoft freigegebenen Kern-Schriftarten für Windows)
Wenn die Fehlermeldung "cannot find the fakeroot binary" erscheint, müsst ihr das erst installieren (ist im base-devel Paket enthalten):
sudo pacman -S base-devel
Der LibreOffice Writer nervt seit V 6.2 und wird trotz löschen immer wieder in die Favoritenliste angelegt. Workaround:
rm -r ~/.local/share/kactivitymanagerd
kactivitymanagerd stop; killall plasmashell; kactivitymanagerd start; plasmashell &
Das löscht alle Aktivitäten und Favoriten! Dann die Favoriten neu anlegen.

Plugin Content Aware Healing für GIMP (Filter -> Verbessern -> Heal Selection...), enthalten in gimp-plugin-registry:
yay -S babl-git gegl-git python2-gimp gimp-plugin-registry
Brennprogramm und optionale Abhängigkeiten installieren:
sudo pacman -S k3b dvd+rw-tools emovix cdrdao transcode cdparanoia soxBenutzer der Gruppe optical hinzufügen:
sudo gpasswd -a $USER opticalPC neu starten, im K3b Programm die Einstellungen prüfen (K3b einrichten...), z.B. Temporärer Ordner habe ich auf "/tmp" festgelegt.

Videoeditor:
Avidemux ist für einfache Schneide- Filter- und Kodierungsaufgaben geeignet.
sudo pacman -S avidemux-qt
Mit Kdenlive ist es möglich, mehrere Bild- und Tonspuren zu bearbeiten und verwendet die MLT Video Rendering Engine.
sudo pacman -S kdenlive
11 ) Druckfunktion aktivieren (benötigt manjaro-printer):
sudo systemctl enable org.cups.cupsd.servicePC neu starten oder manuell die Druckfunktion starten:
sudo systemctl start org.cups.cupsd.service(cups deaktivieren mit disable)

CUPS Web Interface: http://localhost:631

E-Mail Programme Kontact oder Evolution ist Geschmackssache, finde beide gut da diese Programme IMAP, CardDav, CalDav und openPGP nativ unterstützen:

12 ) Kontact ist ein Paket das die Programme KMail, KOrganizer und KAddressBook usw unter einem Hut vereint:
sudo pacman -S yay kontact kmail kaddressbook korganizer knotes akregator aspell-de
13 ) Evolution ist eine gute alternative das ich nutze, Evolution ist ein Gnome E-Mail und -Kalender Programm welches auch sehr gut unter KDE läuft:
sudo pacman -S evolution gnome-keyring seahorse gnupg
GNOME Schlüsselbund automatisch mit Login entsperren (Quelle):
kate /etc/pam.d/sddmHabe diese 2 Zeilen ans Ende eingefügt:
auth       optional     pam_gnome_keyring.so
session    optional     pam_gnome_keyring.so auto_start


Reset Evolution und deinstallieren:
evolution --force-shutdown
rm -rf ~/.local/share/evolution
rm -rf ~/.cache/evolution
rm -rf ~/.config/evolution
dconf reset -f /org/gnome/evolution/
dconf reset -f /org/gnome/evolution-data-server
sudo pacman -Rns evolution

14) bauh (optional, nutze ich nicht), ist eine GUI für AppImage, Flatpak, Snap, AUR und Web:
sudo pacman -S bauh flatpak
15 ) Roger Router benötigt die Pakete libcapi und librm aus den AUR Repos und sollte mit installiert werden (wer AUR nicht nutzen möchte, kann das per Flatpak installieren):
sudo pacman -S yay
yay -S librm libcapi
yay -S roger-router pulseaudio pulseaudio-alsa

Installation des Fax-Druckers (cups muss dafür aktiviert sein):
lpadmin -p Roger-Router-Fax -m drv:///sample.drv/generic.ppd -v socket://localhost:9100/ -E -o PageSize=A4
Telefonliste löschen: Erst Liste im Fritz-Router löschen, dann die csv-Datei.
rm ~/.local/share/rm/$USER/journal.csv
Roger Router Reset:
dconf reset -f /org/tabos/

Alternative: Roger Router per Flatpak installieren
sudo pacman -S flatpakRoger-Router über flathub installieren:
flatpak install flathub org.tabos.roger
Wenn die Warnung "org.freedesktop.Platform.openh264 ist nicht installiert" kommt, versucht folgendes:
flatpak install flathub org.freedesktop.Platform/x86_64/19.08
flatpak update

Roger-Router starten (evtl. muss der PC erst neu gestartet werden):
flatpak run org.tabos.roger
Faltpak Updates:
flatpak update
Faltpak Liste:
flatpak list
Roger Router deinstallieren:
flatpak uninstall org.tabos.roger
flatpak uninstall --unused
rm -r ~/.var/app/org.tabos.roger/

Einstellungen werden in der Flatpak Version im "keyfile" gespeichert und ist im Ordner:
~/.var/app/org.tabos.roger/config/glib-2.0/settings/

Telefonliste "journal.csv" im Ordner:
~/.var/app/org.tabos.roger/data/rm/[ProfilName]/

16 ) Gambas IDE installieren (optional)
In der Gruppe base-devel sind z.B. benötigte pakete wie autoconf, automake, fakeroot, make und gcc enthalten:
sudo pacman -S gambas3 rpm-tools base-develdebhelper installieren (nur nötig wenn Debian Installationspakete erstellt werden sollen):
yay -S debhelperWenn ein Gambas Programm unter Arch installiert wird, werden benötigte Pakete wie z.B. der Runtime-Interpreter (gambas3-runtime) automatisch mit installiert (IDE nicht notwendig).

16 ) SSD optimieren
a) In der /etc/fstab dürfen die Optionen "space_cache" und "autodefrag" bei SSD's mit dem Filesystem Btrfs nicht verwendet werden, jedoch noatime (Dateizugriffszeiten nicht speichern) und ssd.
(Der Kernel erkennt eine SSD automatisch wenn in der Datei /sys/block/<device>/queue/rotational eine "0" steht, setze die Option ssd sicherheitshalber dennoch)

Beispiel:
UUID=xxxx-xxxx /boot/efi        vfat    umask=0077 0 2
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /              btrfs   subvol=@,defaults,noatime,ssd 0 1
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /home          btrfs   defaults,noatime,ssd 0 2


Prüfen ob die SSD TRIM (discard) unterstützt:
lsblk --discardDISC-GRAN und DISC-MAX Werte ungleich Null zeigen die TRIM-Unterstützung an. Manuelles trimmen:
sudo fstrim -a -v
Es ist besser manuelles TRIM zu verwenden, daher verwende ich die Option "discard" in der fstab nicht und habe den fstrim.timer systemd Service aktiviert (Standard wöchentlich):
sudo systemctl enable fstrim.timer(kann mit 'disable' wieder deaktiviert werden)

Timer prüfen (oder Systemeinstellungen -> Systemverwaltung -> Systemd -> Timers):
systemctl cat fstrim.timerLogdatei einsehen:
journalctl | grep fstrim
b) Der LINUX-Kernel stellt tmpfs bereit. Tmpfs unterscheidet sich von einer LINUX Ramdisk insofern, als Speicher dynamisch alloziert wird und weniger genutzte Seiten in einen Swap-Bereich ausgelagert werden können. Seit systemd ist kein Eintrag in der fstab nötig (Link) und benutzt tmpfs bis zur Hälfte des RAM. Prüfen ob Unit tmp.mount geladen ist:
sudo systemctl status tmp.mount
In der Regel ist hier keine Anpassung notwendig!

Habe etwas Feintunig per fstab gemacht:
kate /etc/fstab# dynamic RAMDisk
tmpfs /tmp tmpfs defaults,noatime,size=40%,mode=1777 0 0
tmpfs /var/tmp tmpfs defaults,noatime,size=5%,mode=1777 0 0

(noatime = Dateizugriffszeiten nicht speichern und die /tmp Verzeichnisse benutzen ein Sticky Bit, daher das "mode=1777")

Der /tmp Eintrag wird nach einem PC Neustart durch einen systemd-generator generisch erstellt (ansonsten gibt es diese Datei nicht), prüfen:
cat /run/systemd/generator/tmp.mount
Im Verzeichnis /var/tmp werden temporäre Dateien abgelgt die zwischen Systemneustarts erhalten bleiben (z.B. systemd). Da ich das nicht benötige lege ich diese Daten auch im RAM ab. Logs lege ich nicht ins RAM, da sonst mein Apache den Start verweigert. Grund: /var/log/httpd fehlt nach dem Startup. Also entweder das Startscript patchen oder es sein lassen. Davon abgesehen würde ich diese Logfiles ungern auf eine Ramdisk legen, da diese beim Neustart gelöscht werden.

Einstellung nach Neustart prüfen, z.B.:
df -htmpfs           794M  1,2M  792M   1% /tmp
tmpfs           199M     0  199M   0% /var/tmp

(ohne SWAP-Speicher könnte es trotz genug Arbeitsspeicher zu Problemen kommen)

c) Firefox Cache ins RAM verlegen und Sitzungswiederherstellung anpassen (gilt auch für auch Firefox-ESR und Pale Moon)

Browser starten und in der Adressleiste about:config eingeben.
Dann irgendwo auf dem leeren Bildschirm im Browser, unter about:config,
einen Rechtsklick ausführen und auf "Neu" klicken. Hier einen neuen String mit dem Namen browser.cache.disk.parent_directory und dem Wert /tmp erstellen.
Auch solltet ihr das Backup für die Sitzungswiederherstellung von 15 Sekunden auf 5 Minuten setzen. Sucht nach browser.sessionstore.interval und setzt den Wert von 15000ms auf 300000ms.
Das muss für jeden User wiederholt werden.

d) SMART Werte von NVMe SSD auslesen (z.B. Samsung 970 PRO):
sudo pacman -S nvme-clilisten:
sudo nvme listInfos lesen:
sudo nvme --smart-log /dev/nvme0n1
e) Eine "~/.xsession-errors" Datei wie unter Debian gibt es hier nicht mehr und ist nun systemd Sache, Log siehe ksystemlog.



VIRTUALBOX installieren
Bei der Installation von VirtualBox wird die Version des aktuellen Kernels benötigt, Ausgabe mit:
uname -r(Ausgabe z.B. "5.4.15-2-MANJARO")

VB installieren:
sudo pacman -S virtualboxund wählt den eben entsprechenden Kernel aus, in dem Fall "linux54-virtualbox-host-modules"

Nach der Installation muss das VirtualBox-Modul dem Kernel hinzugefügt werden. Entweder den PC neu booten oder das Kernel Modul manuell hinzuzufügen:
sudo modprobe vboxdrv
Wird später ein neue Kernel installiert, muss das VirtualBox Modul nicht neu angepasst werden. Das Manjaro-Hardware-Erkennungs-Tool (mwhd-kernel) updated automatisch neue Kernel mit den entsprechenden Modulen.

Benutzer der Gruppe vboxusers hinzufügen, sonst ist kein USB verfügbar:
sudo gpasswd -a $USER vboxusers(entfernen mit: sudo gpasswd -d $USER vboxusers)

Passende "Oracle VirtualBox Extension Pack-x.x.x" (Nutzung von USB 2.0 und 3.0) könnt ihr hier laden und installieren:
Oracle_VM_VirtualBox_Extension_Pack-x.x.x.vbox-extpack





WEBSERVER (Apache, PHP und MariaDb) installieren
Benutze ich nur um CMS-Seiten LOKAL zu testen. Mein online Server rennt natürlich nur im FastCGI-Mode ohne Desktop Umgebung und die CMS ist entsprechend 'gehärtet' und immer aktuell!

Pakete für Webserver installieren:
sudo pacman -S mariadb php php-apache phpmyadmin php-gd php-imagick
WICHTIG!
Wenn sich die Datenbank (/var/lib/mysql) in einem Btrfs-Dateisystem befindet, sollte das Copy-on-Write für dieses Verzeichnis deaktiviert werden, bevor eine Datenbank erstellt wird (Quelle). So wird das copy-on-write für das Verzeichnis und Dateien deaktiviert (no-COW).
Prüfe ob Ordner leer ist:
sudo ls -all /var/lib/mysql/dann:
sudo chattr +C /var/lib/mysql
Wenn nicht leer, hilft dieser Trick um das nachträglich zu tun (als su):
sudo systemctl stop mysqld
mv /var/lib/mysql /var/lib/mysql_old
mkdir /var/lib/mysql
chattr +C /var/lib/mysql
cp -a /var/lib/mysql_old/* /var/lib/mysql
chown -R mysql:mysql /var/lib/mysql
sudo systemctl restart mysqld
wenn das funktioniert hat:
rm -rf /var/lib/mysql_old
MariaDB (MySQL) initialisieren:
sudo mysql_install_db --user=mysql --basedir=/usr --datadir=/var/lib/mysql
MariaDB starten und beim Booten starten:
sudo systemctl start mysqld
sudo systemctl enable mysqld
MariaDB Status prüfen:
systemctl status mysqld(Abbruch mit Strg & C )

Eigentlich sollte es mit dem Script "mysql_secure_installation" ohne MySQL-Passwort weiter gehen, jedoch hat das bei mir seit MariaDB noch nie funktioniert. Also erst das MySQL Passwort setzen (MariaDB 10.1.20 und neuer):
sudo mysql
MariaDB [(none)]> USE mysql;
MariaDB [(none)]> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MeinPASSWORT';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> exit

und die MySQL Installation mit diesem Script abschließen (wichtig!):
mysql_secure_installation(Abbruch mit Strg & C )

Hinweis: Sollte das Script euer MySQL Passwort nicht annehmen, hilft eine Reset (sonst überspringen):
sudo mysqld_safe --skip-grant-tables &
sudo mysql -u root
dann:
MariaDB [(none)]> use mysql;
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MeinPASSWORT';
MariaDB [(none)]> exit
Prüfen, reparieren und optimieren der Tabellen:
sudo killall -9 mysqld
sudo mysqlcheck -A --auto-repair -u root -p
sudo mysqlcheck -A --auto-repair -f -o -u root -p

Installation mit diesem Script abschließen (wichtig!):
mysql_secure_installationAls erstes werdet ihr nach den MySQL root Passwort gefragt.
Dann bei der Frage "Switch to unix_socket authentication" per 'n' weiter und bei "You already have your root account protected" auch mit 'n' weiter. Als nächstes sollte auf jeden Fall der Anonymous User entfernt werden wenn der Server produktiv eingesetzt wird. Im nächsten Schritt sollte dem root User das Recht genommen werden sich über das Netzwerk anzumelden (ich arbeite nur lokal). Zusätzlich zum Anonymous User gibt es eine Testdatenbank die entfernt werden sollte. Am Ende werden die Berechtigungen neu geladen.

Wenn nachträglich Anpassungen vorgenommen werden müssen, MariaDB aktualisieren:
sudo su
systemctl restart mariadb.service && mariadb-upgrade -u root -p
exit
(Wichtig, obigen Befehl als root ausführen, sonst gibt es diesen Fehler: Could not create the upgrade info file '/var/lib/mysql/mysql_upgrade_info' in the MariaDB Servers)

Die Apache Datei httpd.conf konfigurieren:
kate /etc/httpd/conf/httpd.conf
Wenn Server nur lokal erreichbar sein soll:

Listen 127.0.0.1:80

Diese Zeilen mit einer Raute (#) auskommentieren:

#LoadModule unique_id_module modules/mod_unique_id.so
#LoadModule authn_file_module modules/mod_authn_file.so
#LoadModule mpm_event_module modules/mod_mpm_event.so

Diese Zeile aktivieren (Raute entfernen):

LoadModule mpm_prefork_module modules/mod_mpm_prefork.so

Diese Zeilen am Ende hinzufügen:

LoadModule php7_module modules/libphp7.so
AddHandler php7-script .php
Include conf/extra/php7_module.conf
Include conf/extra/phpmyadmin.conf

und prüfen ob diese Module aktiviert sind:

LoadModule userdir_module modules/mod_userdir.so
LoadModule rewrite_module modules/mod_rewrite.so


dann phpmyadmin.conf anlegen:
kate /etc/httpd/conf/extra/phpmyadmin.conf
Alias /phpmyadmin "/usr/share/webapps/phpMyAdmin"
<Directory "/usr/share/webapps/phpMyAdmin">
    DirectoryIndex index.php
    AllowOverride All
    Options FollowSymlinks
    Require local
</Directory>
Info "Require all granted" nur wenn nicht Lokal!

php.ini konfigurieren:
kate /etc/php/php.iniDiese Zeilen prüfen/anpassen/aktivieren:

date.timezone = Europe/Berlin
extension=gd
extension=pdo_mysql
extension=mysqli
open_basedir = /srv/http/:/var/www/:/home/:/tmp/:/var/tmp/:/var/cache/:/usr/share/pear/:/usr/share/webapps/:/etc/webapps/
session.gc_probability = 1


config.inc.php konfigurieren:
kate /etc/webapps/phpmyadmin/config.inc.phpHier ein langes geheimes Passwort zur Cookie-Authentifizierung setzen, z.B.:
$cfg['blowfish_secret'] = 'seit_phpMyAdmin504-istdasPflicht_undMussLangSein!'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

Apache starten und beim Booten starten:
sudo systemctl restart httpd
sudo systemctl enable httpd

Apache Status prüfen:
systemctl status httpd(Abbruch mit Strg & C )

Listet PHP Module:
php -m
PHP Info Datei erstellen und speichern:
kate /srv/http/phpinfo.php<?php
 phpinfo();
?>

dann im Browser http://localhost/phpinfo.php öffnen, PHP Version und Konfiguration sollte angezeigt werden.

phpMyAdmin ist eine freie Webanwendung zur Administration von MySQL-Datenbanken und MariaDB, im Browser http://localhost/phpmyadmin/ öffen.



Wenn die Fehlermeldung "Auf das $cfg['TempDir'] (/usr/share/webapps/phpMyAdmin/tmp/) kann nicht zugegriffen werden. PhpMyAdmin kann keine Templates zwischenspeichern und ist daher langsam." kommt, den Temp Ordner anlegen und "http" als Besitzer und Gruppe setzen (chmod 777 is dann nicht notwendig):
sudo mkdir /usr/share/webapps/phpMyAdmin/tmp/
sudo chown -R http:http /usr/share/webapps/phpMyAdmin/tmp/

Sollte die Meldung "Der phpMyAdmin-Konfigurationsspeicher ist nicht vollständig konfiguriert, einige erweiterte Funktionen wurden deaktiviert..." kommen, fehlt wahrscheinlich die Datenbank „phpmyadmin“. Dann einfach mit diesem Link die Datenbank „phpmyadmin“ anlegen und die Konfigurationsspeicher-Tabellen einrichten: http://localhost/phpmyadmin/chk_rel.php.



"User directories" aktivieren ~/public_html
(möchte mein CMS nicht im Ordner /var/www/ testen, sondern in meinem /home)
kate /etc/httpd/conf/extra/httpd-userdir.confDieser Bereich sollte so aussehen:

UserDir public_html
#
# Control access to UserDir directories. The following is an example
# for a site where these directories are restricted to read-only.
#
<Directory "/home/*/public_html">
    DirectoryIndex index.php index.html
    AllowOverride All
    Options MultiViews SymLinksIfOwnerMatch IncludesNoExec
    Require method GET POST OPTIONS
</Directory>
Habe das "Directory Listing" des Apache-Webservers deaktiviert, also "Indexes" entfernt (Zugriff auf alle Unterverzeichnisse werden verwehrt).

Ordner public_html erstellen und Berechtigungen anpassen:
mkdir ~/public_html
chmod 775 ~/public_html
chmod 755 ~
Apache neustarten:
sudo systemctl restart httpd
PHP Info Datei erstellen und speichern:
kate ~/public_html/phpinfo.php<?php
 phpinfo();
?>

dann im Browser "http://localhost/~BENUTZERNAME/phpinfo.php" öffnen, PHP Version und Konfiguration sollte angezeigt werden.



Dateien die der Webserver erzeugt oder ändert (z.B. ein CMS) sind nur für Mitglieder der Gruppe 'http' (bei Debian 'www-data') schreibbar. Um diese Dateien zu beschreiben, den Benutzer zu dieser Gruppe hinzufügen (Neustart notwendig):
sudo gpasswd -a $USER http(entfernen mit: sudo gpasswd -d $USER http)

Berechtigungen für home und public_html anpassen/prüfen, die Reihenfolge ist wichtig:
sudo chown -R $USER:$USER ~/
find ~/ \( -type d -exec chmod 755 {} + \) -or \( -type f -exec chmod 644 {} + \)
find ~/public_html/ \( -type d -exec chmod 775 {} + \) -or \( -type f -exec chmod 664 {} + \)
sudo chown -R http:http ~/public_html
AppImage und ShellScript ausführbar machen:
chmod +x ./*.AppImage
chmod +x ./*.sh
prüfen:
find ~ ! -user $USER -lsdas sollte nur Dateien aus dem Ordner public_html auflisten.


Paketliste und System wiederherstellen
Kontrollieren ob/wann/was über dem Packetmanager de-/installiert wurde findet ihr in der pacman.log:
less /var/log/pacman.logoder mit einem Filter, z.B.:
grep "ALPM] installed" /var/log/pacman.logoder per pamac-gui im Menü -> "Chronik anzeigen", zeigt dann die Pamac Historie in einem Fenster.

Paketliste erstellen (Quelle)
Erstellt eine Liste von Paketen ohne (q) Versionsnummer aus, die ausdrücklich installiert wurden und nicht von anderen als Abhängigkeit benötigt werden:
pacman -Qeqt > paketliste.txt
System wiederherstellen. Man sollte diese Wiederherstellung möglichst in einem "frischen" System vornehmen (direkt nach der Basisinstallation).
pacman -S $(cat paketliste.txt)

ANHANG: Neuinstallation auf bestehendes LINUX ohne die /home Partition zu formatieren

Vorteil: Alle Dateien und Einstellungen bleiben erhalten - ohne Gewähr!
Gründe: Entweder weil eine Neuinstallation ratsam ist, ihr euer Linux zerschossen habt oder zu Linux Manjaro wechseln wollt, oder...

Voraussetzungen:
  • ihr kennt die Rechteverwaltung im Linux-Dateisystem (chown & chmod) - viele Probleme enstehen wenn Dateien im /home Ordner z.B. root gehören
  • Einstellungsdateien auf Standard setzen (reset) oder aus einem Backup wiederherstellen ist kein Problem für euch
  • nutzt die gleiche Desktop-Umgebung und Version - kein muss wenn nur kompatible Einstellungsdateien wiederhergestellt werden
  • /home ist auf einer eigenen Partition
  • Backup ist vorhanden und ihr wisst wie ein Restore funktioniert (wenn was schief läuft)

Prüfen ob die /home Dateien euch gehören, ausser ihr nutzt z.B. einen lokalen Webserver (siehe oben):
find ~ ! -user $USER -ls(Ausgabe sollte leer sein)
ansonsten:
sudo chown -R $USER:$USER ~/(Alle Dateien in /home/[Benutzer] gehören dann euch)
chmod anpassen, alle Ordner 755 und Dateien 644:
find ~/ \( -type d -exec chmod 755 {} + \) -or \( -type f -exec chmod 644 {} + \)AppImage und ShellScript ausführbar machen:
chmod +x ./*.AppImage
chmod +x ./*.sh

Backups erstelle ich mit BackInTime oder Timeshift. Wer kein Backup hat oder zusätzlich ein manuelles Backup auf einer externen Festplatte erstellen will, kann das wie hier beschrieben vor der Neuinstallation tun. Ansonsten könnt ihr die "Vorbereitung" überspringen.

VORBEREITUNG

a) Mit der KDE-Partitionsverwaltung eine externe USB-Festplatte formatieren, wenn noch nicht getan: Dateiformat ext4 und als Bezeichnung z.B. "Backup_ext4". Wenn ihr das Backup behalten wollt sollte die Festplatte mit LUKS verschlüsselt werden. Jedoch wäre dieses Backup schnell zu alt, daher würde ich solch eine verschlüsselte Festplatte nur mit einem Backup-Werkzeug wie z.B. BackInTime oder Timeshift nutzen.

Nach dem die Festplatte formatiert ist, die Zugriffsrechte per Terminal setzen (damit kein sudo notwendig ist). Pfad und Benutzername anpassen, bei mir ist der Benutzername jo:
sudo chown $USER:$USER /run/media/jo/Backup_ext4
sudo chmod 755 /run/media/jo/Backup_ext4

b) alle Dateien auf Backup Festplatte kopieren:
cp -arv ~/* /run/media/jo/Backup_ext4Hinweis: Wenn ihr Plasma Vault nutzt und diese(n) Ordner geöffnet habt, werden Dateien unverschlüsselt auf die Backup Festplatte geschrieben. Verschlüsselte Dateien liegen im versteckten Ordner "~/.local/share/plasma-vault/". Daher halte ich Plasma Vault beim Backup erstellen geschlossen. (Settings: ~/.config/plasmavaultrc)

c) alle versteckte Dateien (Einstellungen) auf Backup Festplatte kopieren (ich lösche erst die Cache Dateien):
sudo rm -r ~/.cache/cp -arv ~/.[!.]* /run/media/jo/Backup_ext4/Dann die Backup Festplatte aushängen und sicher verwahren bis nach der Neuinstallation.

NEUINSTALLTION BEGINNEN

d) PC mit einem aktuellen Live-Image starten und Manjaro installieren. Beim installieren darf "/home" nur eingebunden und nicht formatiert werden! WICHTIG: Benutzername und Passwort muß identisch mit der alten Version sein!

e) Bei einem Kubuntu System hatte ich so Manjaro KDE installiert, in dem Fall findet ihr die alten Daten unter "/home/@home/[Benutzername]"
Diese Daten solltet ihr z.B. mit Dolphin ohne Root-Rechte in euren neuen Ordner "/home/[Benutzername]" kopieren oder verschieben.
Wenn die neue Desktop-Umgebung nicht zum alten Desktop passt oder zu alt ist, kopiere ich mit dem Dolphin oder Double Commander (doublecmd) nur versteckte Dateien zurück die Sinn machen (evtl. Schlüsselbund, Browser, E-Mail oder FileZilla Einstellungen).

Nach einem Ab- und Anmelden sollten alle Einstellungen wie vor der Neuinstallation konfiguriert sein.
Dann den alten Ordner "@home" löschen, fehlende Pakete nach installieren und Grub und SWAP konrollieren bzw. anpassen (siehe oben).

Bei dem Kubuntu zu Manjaro KDE Umzug wollte kwallet das WiFi Passwort nicht speichern, hier hatte ein kwallet-Reset geholfen:
rm -r ~/.local/share/kwalletd/
f) Wenn was schief gelaufen ist:
Stellt alle Daten aus dem Backup per Dolphin oder Terminal wieder her. Alle Dateien per Terminal zurück kopieren:
yes | cp -rv /run/media/jo/Backup_ext4/* ~/Daten werden ohne Rückfrage überschrieben!

Alle versteckte Ordner und Dateien wieder herstellen:
yes | cp -rv /run/media/jo/Backup_ext4/.[!.]* ~/Daten werden ohne Rückfrage überschrieben!
Wenn die neue Desktop-Umgebung nicht zum alten Desktop passt oder zu alt ist, kopiere ich mit dem Dolphin oder Double Commander (doublecmd) nur versteckte Dateien zurück die Sinn machen (evtl. Schlüsselbund, Browser, E-Mail oder FileZilla Einstellungen).

 :-[


PS: KDE-Kontrollleiste aus versehen gelöscht? Einfach aus einem Backup wiederherstellen (~/.config/plasma-org.kde.plasma.desktop-appletsrc).

« Letzte Änderung: 04. Juli 2020, 22:32:55 von Jo »