Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung |
tachtler:archlinux_-_minimal_server_installation [2020/01/27 10:55] – klaus | tachtler:archlinux_-_minimal_server_installation [2023/05/10 11:16] (aktuell) – [IPv6 DAD - tentative] klaus |
---|
Anschließend ist nun die Taste | Anschließend ist nun die Taste |
- **''w''** | - **''w''** |
zu drücken, um die Änderung auch tatsächlich in die **Partitionstabelle** die **Festplatte** zu schreiben: | zu drücken, um die Änderung auch tatsächlich in die **Partitionstabelle** der **Festplatte** zu schreiben: |
<code> | <code> |
Command (m for help): w | Command (m for help): w |
root@archiso ~ # cp -a /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.orig | root@archiso ~ # cp -a /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.orig |
</code> | </code> |
| |
| **bis Version 2020-06** |
| |
Um nur die lokalen Server, hier nur aus Deutschland, in der Konfigurationsdatei ''/etc/pacman.d/mirrorlist'' vorzufinden, kann nachfolgender Befehl verwendet werden: | Um nur die lokalen Server, hier nur aus Deutschland, in der Konfigurationsdatei ''/etc/pacman.d/mirrorlist'' vorzufinden, kann nachfolgender Befehl verwendet werden: |
## Germany | ## Germany |
Server = http://ftp.uni-kl.de/pub/linux/archlinux/$repo/os/$arch | Server = http://ftp.uni-kl.de/pub/linux/archlinux/$repo/os/$arch |
| </code> |
| |
| **ab Version 2020-07** |
| |
| Um nur die lokalen Server, hier nur aus Deutschland, in der Konfigurationsdatei ''/etc/pacman.d/mirrorlist'' vorzufinden, kann nachfolgender Befehl verwendet werden: |
| <code> |
| root@archiso ~ # grep -E -A 1 ".*.de.*$" /etc/pacman.d/mirrorlist.orig | sed '/--/d' > /etc/pacman.d/mirrorlist |
| </code> |
| |
| Der so generierte Inhalt der Konfigurationsdatei ''/etc/pacman.d/mirrorlist'' kann zur Kontrolle mit nachfolgendem Befehl ausgegeben werden: |
| <code> |
| root@archiso ~ # cat /etc/pacman.d/mirrorlist |
| Server = https://ftp.halifax.rwth-aachen.de/archlinux/$repo/os/$arch |
| Server = https://arch.jensgutermuth.de/$repo/os/$arch |
| Server = https://mirror.wtnet.de/arch/$repo/os/$arch |
| Server = https://mirror.ubrco.de/archlinux/$repo/os/$arch |
| Server = https://mirror.dal10.us.leaseweb.net/archlinux/$repo/os/$arch |
| Server = https://mirrors.niyawe.de/archlinux/$repo/os/$arch |
| Server = https://archlinux.ip-connect.vn.ua/$repo/os/$arch |
| Server = https://mirror.gnomus.de/$repo/os/$arch |
| Server = https://mirror.bethselamin.de/$repo/os/$arch |
| Server = https://mirror.mikrogravitation.org/archlinux/$repo/os/$arch |
| Server = https://ftp.fau.de/archlinux/$repo/os/$arch |
| Server = https://mirror.cloroformo.org/archlinux/$repo/os/$arch |
| Server = https://mirror.yandex.ru/archlinux/$repo/os/$arch |
| Server = https://mirror.srv.fail/archlinux/$repo/os/$arch |
| Server = https://dist-mirror.fem.tu-ilmenau.de/archlinux/$repo/os/$arch |
| Server = https://ind.mirror.pkgbuild.com/$repo/os/$arch |
| Server = https://packages.oth-regensburg.de/archlinux/$repo/os/$arch |
| Server = https://mirrors.rit.edu/archlinux/$repo/os/$arch |
</code> | </code> |
| |
[root@archiso /]# echo -e '#<ip-address> <hostname.domain.org> <hostname>' >> /etc/hosts | [root@archiso /]# echo -e '#<ip-address> <hostname.domain.org> <hostname>' >> /etc/hosts |
[root@archiso /]# echo -e '127.0.0.1 localhost.localdomain localhost' >> /etc/hosts | [root@archiso /]# echo -e '127.0.0.1 localhost.localdomain localhost' >> /etc/hosts |
[root@archiso /]# echo -e ':1 localhost.localdomain localhost' >> /etc/hosts | [root@archiso /]# echo -e '::1 localhost.localdomain localhost' >> /etc/hosts |
</code> | </code> |
| |
#<ip-address> <hostname.domain.org> <hostname> | #<ip-address> <hostname.domain.org> <hostname> |
127.0.0.1 localhost.localdomain localhost | 127.0.0.1 localhost.localdomain localhost |
:1 localhost.localdomain localhost | ::1 localhost.localdomain localhost |
</code> | </code> |
| |
GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 quiet" | GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 quiet" |
GRUB_CMDLINE_LINUX="" | GRUB_CMDLINE_LINUX="" |
| |
| # Preload both GPT and MBR modules so that they are not missed |
| GRUB_PRELOAD_MODULES="part_gpt part_msdos" |
</code> | </code> |
| |
GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 net.ifnames=0" | GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 net.ifnames=0" |
GRUB_CMDLINE_LINUX="" | GRUB_CMDLINE_LINUX="" |
| |
| # Preload both GPT and MBR modules so that they are not missed |
| # Tachtler |
| # default: GRUB_PRELOAD_MODULES="part_gpt part_msdos" |
| GRUB_PRELOAD_MODULES="part_gpt part_msdos lvm" |
</code> | </code> |
| |
**__Erklärung:__** | **__Erklärungen:__** |
| |
* <code>GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 net.ifnames=0"</code> | * <code>GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 net.ifnames=0"</code> |
| |
Damit Meldungen des ''systemd''-Dienstes/Daemon zu sehen sind, muss der Parameter ''quit'' entfernt werden **__und__** der Parameter ''net.ifnames=0'' hinzugefügt werden. Der Paramater ''net.ifnames=0'' sorgt dafür, das als Benzeichner bei Netzwerkkarten wieder die Notation ''ethX'' (Das ''X'' steht für eine Zahl) verwendet wird! | Damit Meldungen des ''systemd''-Dienstes/Daemon zu sehen sind, muss der Parameter ''quit'' entfernt werden **__und__** der Parameter ''net.ifnames=0'' hinzugefügt werden. Der Paramater ''net.ifnames=0'' sorgt dafür, das als Benzeichner bei Netzwerkkarten wieder die Notation ''ethX'' (Das ''X'' steht für eine Zahl) verwendet wird! |
| |
| * <code>GRUB_PRELOAD_MODULES="part_gpt part_msdos lvm"</code> |
| |
| Hier muss am ende der Zeile das laden des Moduls ''lvm'' hinzugefügt werden, da sonst bei Änderungen am Dateisystem, welches auch den Bootloader **GRUB** betrifft, nachfolgende Fehlermeldung **__vermiden__** werden kann. (Die Fehlermeldung ist zwar "__nur__" ein Hinweis und kosmetischer Natur.) |
| <code> |
| File descriptor 6 (socket:[18177]) leaked on vgs invocation. Parent PID 757: /usr/bin/grub-probe |
| File descriptor 7 (socket:[18178]) leaked on vgs invocation. Parent PID 757: /usr/bin/grub-probe |
| File descriptor 8 (socket:[18188]) leaked on vgs invocation. Parent PID 757: /usr/bin/grub-probe |
| </code> |
| |
Abschließend muss noch die **GRUB**-Konfiguration generiert werden, was mit nachfolgendem Befehl durchgeführt werden kann: | Abschließend muss noch die **GRUB**-Konfiguration generiert werden, was mit nachfolgendem Befehl durchgeführt werden kann: |
[Network] | [Network] |
Address=192.168.1.250/24 | Address=192.168.1.250/24 |
Gateway=192.168.1.10 | Gateway=192.168.1.1 |
DNS=10.7.1.20 | DNS=192.168.122.1 |
</code> | </code> |
| |
Address=192.168.1.250/24 | Address=192.168.1.250/24 |
Gateway=192.168.1.1 | Gateway=192.168.1.1 |
DNS=192.168.122.1 | DNS=192.168.1.1 |
| |
Address=fd00::250/64 | Address=fd00::250/64 |
</code> | </code> |
| |
===== Minimal Desktop GNOME ===== | ===== Problembehandlung ===== |
| |
Um die [[https://www.archlinux.de/|ArchLinux]] - Installation um einen | ==== IPv6 DAD - tentative ==== |
* **"Minimal Desktop" GNOME** | |
zu erweitern, können nachfolgend beschriebene Schritte durchgeführt werden. | |
| |
Nachfolgende ''pacman''-Pakete werden mindestens benötigt: | Falls nach Inbetriebnahme von **ipv6**-Adressen, diese nach einem Neustart z.B. nicht an den **SSH**-Daemon/Dienst gebunden werden können, kann dies an der **DAD** (Duplicate Address Detection) liegen. |
* **''gnome-shell''** | |
* **''gdm''** | |
Optional ist nachfolgendes ''pacman''-Paket, jedoch wird die Installation **dringend empfohlen**, da sonst **keine** Möglichkeit besteht, eine ''shell'' innerhalb der grafischen Benutzeroberfläche zu öffnen: | |
* **''gnome-terminal''** - Terminal / ''shell'' unter [[http://www.gnome.org/|GNOME 3]] | |
| |
Eine erweiterte [[http://www.gnome.org/|GNOME 3]]-Desktop Installation kann durchgeführt werden, wenn nachfolgende ''pacman''-Pakte ebenfalls noch installiert werden, um das Aussehen und die Funktionalität des [[http://www.gnome.org/|GNOME 3]]-Desktops zu erhöhen: | Bei aktivieren von ipv6-Adressen wird überprüft, ob diese Adressen bereits im Netzwerk gefunden werden können und somit nicht eindeutig sind, was dann eine Deaktivierung zur folge hätte. Solange diese Prüfung nicht abgeschlossen ist, befinden sich die ipv6-Adressen in einem Zustand der als **"tentative" (vorläufig, provisorisch)** ist. |
* **''nautilus''** - Nautilus-Datei-Manager | |
* **''nautilus-terminal''** - Einbindung von Terminal / ''shell'' im Nautilus-Datei-Manager und Aufruf über die **[rechte Maustaste]** | |
* **''gnome-control-center''** - Einstellungen / ''shell'' unter [[http://www.gnome.org/|GNOME 3]] | |
* **''gnome-menus''** - Einbindung der Menüs für das [[http://www.gnome.org/|GNOME 3]] "Panel" | |
* **''gnome-shell-extensions''** - Verschiedene Erweiterungen für die [[http://www.gnome.org/|GNOME 3]] "Shell". | |
* ''apps-menu'' - Anwendungsmenü für [[http://www.gnome.org/|GNOME 3]] "Shell" | |
* ''auto-move-windows'' - Verschiebt Anwendungen in bestimmte Arbeitsbereiche, wenn Fenster erstellt werden für [[http://www.gnome.org/|GNOME 3]] "Shell" | |
* ''drive-menu'' - Ein Statusmenü für den Zugriff auf und das Trennen von Wechseldatenträgern innerhalb der Münüleiste der [[http://www.gnome.org/|GNOME 3]] "Shell" | |
* ''horizontal-workspaces'' - Verwendung eines horizontales Arbeitsbereichslayout für [[http://www.gnome.org/|GNOME 3]] "Shell" | |
* ''launch-new-instance'' - Startet immer eine neue Anwendungsinstanz der [[http://www.gnome.org/|GNOME 3]] "Shell". | |
* ''native-window-placement'' - Fenster werden in einer Übersicht in der [[http://www.gnome.org/|GNOME 3]] "Shell" kompakt angeordnet. | |
* ''places-menu'' - Platziert das Statusmenü in der [[http://www.gnome.org/|GNOME 3]] "Shell". | |
* ''screenshot-window-sizer'' - Fenstergrößenänderung für [[http://www.gnome.org/|GNOME 3]] "Shell"-Software-Screenshots. | |
* ''user-theme'' - Unterstützung für benutzerdefinierte Themen in der [[http://www.gnome.org/|GNOME 3]] "Shell". | |
* ''window-list'' - Zeigt eine Fensterliste am unteren Bildschirmrand in der [[http://www.gnome.org/|GNOME 3]] "Shell". | |
* ''windowsNavigator'' - Erlaubt die Auswahl von Fenstern und Arbeitsbereichen im "Overlay-Modus" über die Tastatur. Mit **[Strg]**-Zahl wird ein Arbeitsbereich und mit **[Alt**]-Zahl wird ein Fenster innerhalb der [[http://www.gnome.org/|GNOME 3]] "Shell" ausgewählt. | |
* ''workspace-indicator'' - Legen eine Anzeige auf die Menüleiste, die signalisiert, welchem Arbeitsbereich gerade aktiv ist, ermöglicht es, zu einem anderen innerhalb der [[http://www.gnome.org/|GNOME 3]] "Shell" zu wechseln. | |
* **''gnome-backgrounds''** - Hintergrundbilder für [[http://www.gnome.org/|GNOME 3]] Desktop | |
* **''gnome-tweaks''** - Anpassen der erweiterten [[http://www.gnome.org/|GNOME 3]] Optionen | |
* **''dconf-editor''** - Anpassen der Systemweiten [[http://www.gnome.org/|GNOME 3]] Optionen | |
| |
Aus dem [[https://aur.archlinux.org/?setlang=de|ArchLinux User-Community Repository (AUR)]] können noch eine weitere Vielzahl an Erweiterungen für [[http://www.gnome.org/|GNOME 3]] installiert werden, wie z.B. | Solange die ipv6 Adressen sich im Zustand **"tentative" (vorläufig, provisorisch)** befinden, kann sich kein Dienst an diese ipv6 Adressen binden. |
| |
* **''gnome-shell-extension-desktop-icons''** - Unterstützung von [[http://www.gnome.org/|GNOME 3]]-Desktop-Symbolen wie bei der klassische Anzeige. | :!: **ACHTUNG** - Die **Lösung** des Problems __kann__ darin liegen, die Prüfung **DAD** (Duplicate Address Detection) zu deaktivieren. |
| |
:!: **HINWEIS** - Ab [[http://www.gnome.org/|GNOME 3]] **Version 3.28** wurde die Möglichkeit **Desktop-Icons** mittels ''nautilus'' anzuzeigen **__entfernt__**! | Dazu soll nachfolgende Konfigurationsdatei in nachfolgendem Verzeichnis mit nachfolgendem Namen neu erstellt werden: |
| * ''/ets/sysctl.d/40-ipv6dad.conf'' |
:!: **HINWEIS** - Auch die **''gnome-shell-extension-desktop-icons''** funktioniert aktuell **__nicht__** so, das die **Desktop-Icons** **__nicht__** angezeigt werden. | Der Inhalt dieser Datei kann wie folgt aussehen und **__deaktiviert__** für jedes **Netzwerk-Interface** die **DAD** (Duplicate Address Detection): |
* :!: **ACHTUNG** - **Aktueller __Workaround__: [[https://gitlab.gnome.org/World/ShellExtensions/desktop-icons/issues/152|Cannot show trash, enabling makes other icons vanish]]** | <code bash> |
| net.ipv6.conf.eth0.accept_dad = 0 |
:!: **HINWEIS** - Die **''gnome-shell-extension-desktop-icons''** sollte trotzdem installiert werden, da durch diese Erweiterung mit der **rechten Maustaste** der Menüpunkt **"Open in Terminal"** angezeigt wird! | |
| |
Ab hier werden ''root''-Rechte zur Ausführung der nachfolgenden Befehle benötigt. Um der Benutzer ''root'' zu werden, geben Sie bitte nachfolgenden Befehl ein: | |
<code> | |
$ su - | |
Password: | |
</code> | </code> |
| |
==== Installationsschritt: 1 ==== | |
| |
Bevor mit der eigentlichen Installation des [[http://www.gnome.org/|GNOME 3]] begonnen werden soll, sollte das System mit nachfolgendem Befhl __immer__ auf den aktuellsten Stand gebracht werden: | |
<code> | |
[root@archlinux ~]# pacman -Syu | |
</code> | |
| |
==== Installationsschritt: 2 ==== | |
| |
Installation der ''pacman''-Pakete **''gnome-sehll''**, **''gdm''** und **''gnome-terminal''** mit nachfolgendem Befehl: | |
<code> | |
[root@archlinux ~]# pacman --noconfirm -S gnome-shell gdm gnome-terminal | |
</code> | |
| |
==== Installationsschritt: 3 ==== | |
| |
Damit nach einem Neustart des Servers auch ein grafischer Anmeldebildschirm zur Anzeige kommt, muss der ''gdm''-Dienst/Daemon gestartet werden, was mit nachfolgendem Befehl eingerichtet werden muss: | |
| |
<code> | |
[root@archlinux ~]# systemctl enable gdm.service | |
Created symlink /etc/systemd/system/display-manager.service → /usr/lib/systemd/system/gdm.service. | |
</code> | |
| |
Eine Überprüfung, ob beim Neustart des Server der ''gdm''-Dienst/Deamon wirklich mit gestartet wird, kann mit nachfolgendem Befehl erfolgen und sollte eine Anzeige, wie ebenfalls nachfolgend dargestellt ausgeben: | |
<code> | |
[root@archlinux ~]# systemctl list-unit-files --type=service | grep -E ^gdm | |
gdm.service enabled | |
</code> | |
bzw. | |
<code> | |
[root@archlinux ~]# systemctl is-enabled gdm.service | |
enabled | |
</code> | |
| |
==== Installationsschritt: 4 ==== | |
| |
Neustart des Servers, welcher mit nachfolgendem Befehl durchgeführt werden kann: | |
<code> | |
[root@archlinux ~]# systemctl reboot | |
</code> | |
| |
==== Anmeldebildschirm ==== | |
| |
Nach Durchführung aller vorhergehenden Installationsschritte, sollte nachfolgender Bildschirm nach dem **Reboot** (Neustart) des Servers erscheinen: | |
| |
{{:tachtler:virtualisierung:archlinux:archlinux_gnome_login-screen.png|ArchLinux - GNOME - Login Screen}} | |
| |
==== Verfügbare Applikationen ==== | |
| |
Nach der Anmeldung sind **nur** nachfolgende Applikationen verfügbar: | |
* ''Avahi SSH Server Browser'' - SSH Browser (Netzwerkkommunikation über den Avahi-Dienst/Daemon) | |
* ''Avahi VNC Server Browser'' - VNC Browser (Netzwerkkommunikation über den Avahi-Dienst/Daemon) | |
* ''Avahi Zeroconf Browser'' - Null-Schnittstellen Browser (Netzwerkkommunikation über den Avahi-Dienst/Daemon) | |
* ''QT V4L2 test Utility'' - Test-Programm für die QT-Schnittstelle | |
* ''QT V4L2 video capture Utility'' - Video-Aufname-Programm der QT-Schnittstelle | |
* ''Terminal'' - ''shell''-Terminal | |
* ''Vim'' - Texteditor mit Farb-Hervorhebungen | |
wie nachfolgende Bildschirmkopie zeigt: | |
| |
{{:tachtler:virtualisierung:archlinux:archlinux_gnome_activities_apps-screen.png|ArchLinux - GNOME - Activities App-Screen}} | |
| |
==== Applikationen ausblenden ==== | |
| |
Damit das **"Activities"**-Menü nicht von eher __nicht__ gebräuchlichen, aber **wegen bestehender Abhängigkeiten __nicht__ zu deinstallierenden Programmen** überladen wird, können durch nachfolgende Änderungen der einzelnen Desktop-Dateien des jeweiligen Menüpunktes, diese ausgeblendet werden. | |
| |
Nachfolgende Programm sollen ausgeblendet werden: | |
* ''Avahi SSH Server Browser'' - SSH Browser (Netzwerkkommunikation über den Avahi-Dienst/Daemon) | |
* ''Avahi VNC Server Browser'' - VNC Browser (Netzwerkkommunikation über den Avahi-Dienst/Daemon) | |
* ''Avahi Zeroconf Browser'' - Null-Schnittstellen Browser (Netzwerkkommunikation über den Avahi-Dienst/Daemon) | |
* ''QT V4L2 test Utility'' - Test-Programm für die QT-Schnittstelle | |
* ''QT V4L2 video capture Utility'' - Video-Aufname-Programm der QT-Schnittstelle | |
| |
Alle Desktop-Dateien der jeweiligen Menüpunkte befinden sich in Verzeichnis: | |
* **''/usr/share/applications/''** | |
| |
Nachfolgende Ergänzung **in __jeder__ einzelnen Desktop-Datei des jeweiligen Menüpunkts**, soll daher mit nachfolgender Zeile ergänzt werden, was mit nachfolgenden Befehlen durchgeführt werden kann: | |
<code> | |
NoDisplay=true | |
</code> | |
| |
Nachfolgend die jeweilige Desktop-Datei zum entsprechenden Programm: | |
* **''bssh.desktop''** - ''Avahi SSH Server Browser'' | |
* **''bvnc.desktop''** - ''Avahi VNC Server Browser'' | |
* **''avahi-discover.desktop''** - ''Avahi Zeroconf Browser'' | |
* **''qv4l2.desktop''** - ''QT V4L2 test Utility'' | |
* **''qvidcap.desktop''** - ''QT V4L2 video capture Utility'' | |
| |
<code> | |
[root@archlinux ~]# echo NoDisplay=true >> /usr/share/applications/bssh.desktop | |
</code> | |
<code> | |
[root@archlinux ~]# echo NoDisplay=true >> /usr/share/applications/bvnc.desktop | |
</code> | |
<code> | |
[root@archlinux ~]# echo NoDisplay=true >> /usr/share/applications/avahi-discover.desktop | |
</code> | |
<code> | |
[root@archlinux ~]# echo NoDisplay=true >> /usr/share/applications/qv4l2.desktop | |
</code> | |
<code> | |
[root@archlinux ~]# echo NoDisplay=true >> /usr/share/applications/qvidcap.desktop | |
</code> | |
| |
Nach den oben gezeigten Änderungen, kann das **"Activities"**-Menü nun wie folgt aussehen: | |
| |
{{:tachtler:virtualisierung:archlinux:archlinux_gnome_activities_apps-screen_cleaned.png|ArchLinux - GNOME - Activities App-Screen - bereinigt}} | |
| |
==== Erweiterungsschritt: 1 ==== | |
| |
Installation der ''pacman''-Pakete | |
* **''nautilus''** | |
* **''nautilus-terminal''** | |
* **''gnome-control-center''** | |
* **''gnome-menus''** | |
* **''gnome-shell-extensions''** | |
* **''gnome-backgrounds''** | |
* **''gnome-tweaks''** | |
* **''dconf-editor''** | |
| |
mit nachfolgendem Befehl: | |
<code> | |
[root@archlinux ~]# pacman --noconfirm -S nautilus nautilus-terminal gnome-control-center gnome-menus gnome-shell-extensions gnome-backgrounds gnome-tweaks dconf-editor | |
</code> | |
| |
==== Erweiterungsschritt: 2 ==== | |
| |
Installation der [[https://aur.archlinux.org/?setlang=de|ArchLinux User-Community Repository (AUR)]]-Pakete mittels [[https://github.com/actionless/pikaur|pikaur]] | |
* **''gnome-shell-extension-desktop-icons''** | |
mit nachfolgendem Befehl: | |
<code> | |
[root@archlinux ~]# pikaur --noconfirm -S gnome-shell-extension-desktop-icons | |
</code> | |
| |
:!: **HINWEIS** - Ab [[http://www.gnome.org/|GNOME 3]] **Version 3.28** wurde die Möglichkeit **Desktop-Icons** mittels ''nautilus'' anzuzeigen **__entfernt__**! | |
| |
:!: **HINWEIS** - Auch die **''gnome-shell-extension-desktop-icons''** funktioniert aktuell **__nicht__** so, das die **Desktop-Icons** **__nicht__** angezeigt werden. | |
* :!: **ACHTUNG** - **Aktueller __Workaround__: [[https://gitlab.gnome.org/World/ShellExtensions/desktop-icons/issues/152|Cannot show trash, enabling makes other icons vanish]]** | |
| |
:!: **HINWEIS** - Die **''gnome-shell-extension-desktop-icons''** sollte trotzdem installiert werden, da durch diese Erweiterung mit der **rechten Maustaste** der Menüpunkt **"Open in Terminal"** angezeigt wird! | |
| |
Damit z.B. die **''gnome-shell-extensions-desktop-icons''** und weitere Funktionen **überhaupt funktionsfähig sind**, **__müssen__ für jeden Benutzer des Systems __mit ''login'' (Anmeldemöglichkeit)__** nachfolgende Befehle durchgeführt werden: | |
<code> | |
[root@archlinux ~]# mkdir ~/Desktop | |
[root@archlinux ~]# chmod 755 ~/Desktop | |
[root@archlinux ~]# mkdir -p ~/.local/share/Trash/{expunged,files,info} | |
[root@archlinux ~]# chmod -R 700 ~/.local/share/Trash | |
</code> | |
| |
**__Erklärungen__**: | |
| |
* <code>mkdir ~/Desktop</code> | |
| |
Es wird der Ordner **Desktop** im jeweiligen **HOME**-Verzeichnis des entsprechenden Benutzers angelegt. Das ist erforderlich, das sonst **__keine__** Objekte, wie z.B. Ordner oder Dateien auf dem Desktop angelegt werden können. | |
| |
* <code>chmod 755 ~/Desktop</code> | |
| |
Es werden die entsprechenden **Datei**rechte für den Zugriff auf den Ordner **Desktop** im jeweiligen **HOME**-Verzeichnis des entsprechenden Benutzers gesetzt, damit auf diesen zugegriffen werden kann. | |
| |
* <code>mkdir -p ~/.local/share/Trash/{expunged,files,info}</code> | |
| |
Es wird ein neuer Order **Trash** (Papierkorb) und drei Unterordner | |
* ''expunged'' - für gelöschte Objekte | |
* ''files'' - Dateien zur Löschung | |
* ''info'' - Informationen zu den gelöschten Objekten und Dateien | |
im jeweiligen **HOME**-Verzeichnis unter dem Pfad ''.local/share'' des entsprechenden Benutzers angelegt. Dies ist erforderlich, da sonst ein Datei-Manager keinen Zugriff auf den Papierkorb hat und auch die Anzeige auf dem Desktop sonst nicht erfolgen kann. | |
| |
* <code>chmod -R 700 ~/.local/share/Trash</code> | |
| |
Es werden die entsprechenden **Datei**rechte für den Zugriff auf den Ordner **Trash** im jeweiligen **HOME**-Verzeichnis unter dem Pfad ''.local/share'' des entsprechenden Benutzers gesetzt, damit auf diesen und die Unterordner zugegriffen werden kann. | |
| |
:!: **WICHTIG** - **Falls der Benutzer ''root'' den Befehl __für alle Benutzer ausführt__, müssen die entsprechenden __Besitz__rechte ebenfalls noch wie nachfolgend beschrieben, auf den jeweiligen Benutzer und dessen primärer Gruppenzugehörigkeit gesetzt werden:** | |
<code> | |
[root@archlinux ~]# chown -R [BENUTZERNAME]:[BENUTZEGRUPPE] /home/[BENUTZERNNAME]/Desktop | |
[root@archlinux ~]# chown -R [BENUTZERNAME]:[BENUTZEGRUPPE] /home/[BENUTZERNNAME]/.local/share/Trash | |
</code> | |
| |
* //[BENUTZERNAME] und [BENUTZERGRUPPE] sollten normalerweise identisch sein!// | |
| |
==== Erweiterungsschritt: 3 ==== | |
| |
Logout (Abmeldung) des angemeldeten Benutzer aus dem [[http://www.gnome.org/|GNOME 3]]-Desktop, was mit nachfolgendem Befehl durchgeführt werden kann: | |
<code> | |
[klaus@archlinux ~]$ gnome-session-quit --logout --no-prompt | |
</code> | |
| |
:!: **HINWEIS** - **Anschließend ist eine Neuanmeldung des Benutzer im [[http://www.gnome.org/|GNOME 3]]-Desktop erforderlich!** | |
| |
==== Erweiterungsschritt: 4 ==== | |
| |
Anschließend muss durch drücken der **[linken Maustaste]** über dem Menüpunkt, hier **Activities** ein Auswahlmenü mit Bildern am linken Bildschirmrand erscheinen, wie nachfolgende Bildschirmkopie zeigt: | |
| |
{{:tachtler:virtualisierung:archlinux:archlinux_activities.png|archlinux_activities.png|ArchLinux - Activities}} | |
| |
Hier muss nun mit der **[linken Maustaste]** der Menüpunkt **[Show Applications]** ausgewählt werden, wodurch die Auswahl aller installierten Applikationen erscheint, wie ebenfalls nachfolgende Bildschirmkopie zeigt: | |
| |
{{:tachtler:virtualisierung:archlinux:archlinux_activities_show-applications.png|archlinux_activities_show-applications.png|ArchLinux - Activities - Show Applications}} | |
| |
Hier ist es nun erforderlich mit der **[linken Maustaste]** die Applikation **[Tweaks]** auszuwählen, woraufhin sich die Applikation öffnen sollte, wie hier in nachfolgender Bildschirmkopie gezeigt wird: | |
| |
{{:tachtler:virtualisierung:archlinux:archlinux_activities_show-applications_tweaks.png|archlinux_activities_show-applications_tweaks.png|ArchLinux - Activities - Show Applications - Tweaks}} | |
| |
Als nächstes muss nun mit der **[linken Maustaste]** der Menüpunkt **[Extensions]** am linken Rand ausgewählt werden, wodurch nachfolgende Einstellungsmöglichkeiten zum Vorschein kommen sollten: | |
| |
{{:tachtler:virtualisierung:archlinux:archlinux_tweaks_extensions.png|archlinux_tweaks_extensions.png|ArchLinux - Tweaks - Extensions}} | |
| |
Hier sollten nun alle **Extensions**, bis auf | |
* **__nicht__ "Horizontal Workspaces"** | |
aktiviert werden, wie ebenfalls nachfolgende Bildschirmkopie zeigt: | |
| |
{{:tachtler:virtualisierung:archlinux:archlinux_tweaks_extensions_active.png|archlinux_tweaks_extensions_active.png|ArchLinux - Tweaks - Extensions - aktiviert}} | |
| |
==== Beispiel-Desktop ==== | |
| |
Abschließend kann dann ein [[http://www.gnome.org/|GNOME 3]]-Desktop, wie auf nachfolgenden Bildschirmkopien gezeigt, aussehen: | |
| |
{{:tachtler:virtualisierung:archlinux:archlinux_tweaks_extensions_active_result.png| | |
archlinux_tweaks_extensions_active_result.png|Archlinux - Tweaks - Extensions - aktiviert - Ergebnis}} | |
| |
* //Desktop mit Menüleiste am unteren Bildschirmrand zur Anzeige der laufenden Anwendungen.// | |
| |
:!: **HINWEIS** - Ab [[http://www.gnome.org/|GNOME 3]] **Version 3.28** wurde die Möglichkeit **Desktop-Icons** mittels ''nautilus'' anzuzeigen **__entfernt__**! | |
| |
:!: **HINWEIS** - Auch die **''gnome-shell-extension-desktop-icons''** funktioniert aktuell **__nicht__** so, das die **Desktop-Icons** **__nicht__** angezeigt werden. | |
* :!: **ACHTUNG** - **Aktueller __Workaround__: [[https://gitlab.gnome.org/World/ShellExtensions/desktop-icons/issues/152|Cannot show trash, enabling makes other icons vanish]]** | |
| |
:!: **HINWEIS** - Die **''gnome-shell-extension-desktop-icons''** sollte trotzdem installiert werden, da durch diese Erweiterung mit der **rechten Maustaste** der Menüpunkt **"Open in Terminal"** angezeigt wird! | |
| |
{{:tachtler:virtualisierung:archlinux:archlinux_tweaks_extensions_active_result_menu.png|archlinux_tweaks_extensions_active_result_menu.png|Archlinux - Tweaks - Extensions - aktiviert - Ergebnis}} | |
| |
* //Zusätzliche Menüanzeige zu der "Aktivitäten"-Anzeige in der Menüleiste am oberen Bildschirmrand im klassischen Menüstil von [[http://www.gnome.org/|GNOME 3]].// | |
| |
{{:tachtler:virtualisierung:archlinux:archlinux_tweaks_extensions_active_result_desktop_mouse_right_click_menu.png| | |
archlinux_tweaks_extensions_active_result_desktop_mouse_right_click_menu.png|ArchLinux - Tweaks - Extensions - aktiviert - Ergebnis - Maus - rechte Maustaste Menü}} | |
| |
* //Im Menü, welches durch drücken der **[rechten Maustaste]** geöffnet wird, befindet sich auch der Menüpunkt **"Open in Terminal".**// | |
| |
| |
==== Letzte Applikationen ausblenden ==== | |
| |
Damit das **"Activities"**-Menü nicht von eher __nicht__ gebräuchlichen, aber **wegen bestehender Abhängigkeiten __nicht__ zu deinstallierenden Programmen** überladen wird, können durch nachfolgende Änderungen der einzelnen Desktop-Dateien des jeweiligen Menüpunktes, diese ausgeblendet werden. | |
| |
Nachfolgende Programm sollen ausgeblendet werden: | |
* ''Hardware Locality lstopo'' - Hardware Service | |
* ''Cheese'' - Kamera-App | |
* ''Vim'' - Texteditor mit Farbhervorhebung für die ''Shell'' | |
| |
Alle Desktop-Dateien der jeweiligen Menüpunkte befinden sich in Verzeichnis: | |
* **''/usr/share/applications/''** | |
| |
Nachfolgende Ergänzung **in __jeder__ einzelnen Desktop-Datei des jeweiligen Menüpunkts**, soll daher mit nachfolgender Zeile ergänzt werden, was mit nachfolgenden Befehlen durchgeführt werden kann: | |
<code> | |
NoDisplay=true | |
</code> | |
| |
Nachfolgend die jeweilige Desktop-Datei zum entsprechenden Programm: | |
* **''lstopo.desktop''** - ''Hardware Locality lstopo'' | |
* **''org.gnome.Cheese.desktop''** - ''Cheese'' | |
* **''vim.desktop''** - ''Vim'' | |
<code> | |
[root@archlinux ~]# echo NoDisplay=true >> /usr/share/applications/lstopo.desktop | |
</code> | |
<code> | |
[root@archlinux ~]# echo NoDisplay=true >> /usr/share/applications/org.gnome.Cheese.desktop | |
</code> | |
<code> | |
[root@archlinux ~]# echo NoDisplay=true >> /usr/share/applications/vim.desktop | |
</code> | |
| |
Nach den oben gezeigten Änderungen, kann das **"Activities"**-Menü nun wie folgt aussehen: | |
| |
{{:tachtler:virtualisierung:archlinux:archlinux_gnome_activities_apps-screen_cleaned_last.png|archlinux_gnome_activities_apps-screen_cleaned_last.png|ArchLinux - GNOME - Activities App-Screen - bereinigt - letzte Programme}} | |
| |
==== Workaround: Desktop-Icons ==== | |
| |
:!: **HINWEIS** - Auch die **''gnome-shell-extension-desktop-icons''** funktioniert aktuell **__nicht__** so, das die **Desktop-Icons** **__nicht__** angezeigt werden. | |
* :!: **ACHTUNG** - **Aktueller __Workaround__: [[https://gitlab.gnome.org/World/ShellExtensions/desktop-icons/issues/152|Cannot show trash, enabling makes other icons vanish]]** | |
| |
Nachfolgender Befehl muss als Benutzer **''root''** ausgeführt werden und zwar **__immer__ dann, wenn das Paket ''gnome-shell'' ein Update erfährt:** | |
<code> | |
[root@archlinux ~]# setcap -r /usr/bin/gnome-shell | |
</code> | |
| |
Anschließend ist eine **Abmeldung und erneute Anmeldung** des Benutzer am [[http://www.gnome.org/|GNOME 3]]-Desktop erforderlich, was auch durch nachfolgenden Befehl realisiert werden kann: | |
| |
Logout (Abmeldung) des angemeldeten Benutzer aus dem [[http://www.gnome.org/|GNOME 3]]-Desktop, was mit nachfolgendem Befehl durchgeführt werden kann: | |
<code> | |
[klaus@archlinux ~]$ gnome-session-quit --logout --no-prompt | |
</code> | |
| |
:!: **HINWEIS** - **Anschließend ist eine Neuanmeldung des Benutzer im [[http://www.gnome.org/|GNOME 3]]-Desktop erforderlich!** | |
| |
Anschließend könnte dann der [[http://www.gnome.org/|GNOME 3]]-Desktop wie nachfolgend gezeigt aussehen: | |
| |
{{:tachtler:virtualisierung:archlinux:archlinux_with_desktop_icons.png|ArchLinux - Desktop Icons}} | |
| |