Schlagwort-Archive: GNU/Linux

Unixähnliche Mehrbenutzer-Betriebssysteme, die auf dem Linux-Kernel und wesentlich auf GNU-Software basieren. Wie CentOS, Debian, Ubuntu Fedora.

Regenbogenfarben im Linux Terminal

Regenbogenfarben im Linux Terminal mit lolcat, cowsay und fortune

Für diejenigen, die glauben, dass die Linux Command Line langweilig ist und keinen Spaß macht, die liegen vermutlich falsch. In diesem Beitrag geht es um Linux, und fantastisch bunte Farbige Linux Terminals.

Das kleine Dienstprogramm namens „lolcat“, das im Terminal die Ausgaben in Regenbogenfarben darstellen kann, habe ich auf einer Fedora Workstation 30 und bei einem Linux Mint 20 (Ubuntu) installiert.

Regenbogenfarben im Linux Terminal

Was ist Lolcat ?

lolcat ist ein Dienstprogramm für Linux, BSD und OSX, das ähnlich wie der Befehl cat (Unix) funktioniert und die Ausgabe in Regenbogenfarben ausgibt. Die Anwendung /usr/bin/lolcat entspricht in etwa dem bei Unixoiden OS bekannten /usr/bin/cat, eng. concatenate (verketten). lolcat wird hauptsächlich dazu genutzt, um Textausgaben im Linux Terminal in Regenbogenfarben auszugeben. lolcat wurde ursprünglich in Ruby entwicklet, dazu gibt es Clone auf Python, und daneben auch in C von jaseg, diese vermutlich performanteste Version, ist als Binary in vielen Repository der Distributionen verfügbar.

lolcat installieren

Das einfachste ist also, lolcat direkt aus den Standard Repository zu installieren. Bei Fedora wird lolcat wie folgt installiert.

$ sudo dnf install -y lolcat

Bei Linux Mint das auf der Linux-Distribution Ubuntu basiert, ist die Bereitstellung daher wie gewohnt mit dem apt-get Paket Manager.

$ sudo apt install -y lolcat

Regenbogenfarben im Linux Terminal

Nun können Kommandozeilen Befehle in Regenbogenfarben ausgegeben werden, wie beispielsweise der Kalender.

$ cal | lolcat
cal | lolcat

Der erweiterte Kalender für das ganze Jahr ausgeben.

$ cal -y | lolcat -v 1.1 -h 0.6

Damit man bei jedem öffnen des Linux Terminals eine andere Willkommensnachricht in Form eines Zitat erhält, ähnlich wie es von MOTD bekannt ist, können folgende Zeilen in die Datei .bashrc am Ende unten eingefügt werden, mit einem Editor der wahl wie nano ~/.bashrc, oder vi ~/.bashrc

function cowsayfortune {
    NUMOFCOWS=`cowsay -l | tail -n +2 | wc -w`
    WHICHCOW=$((RANDOM%$NUMOFCOWS+1))
    THISCOW=`cowsay -l | tail -n +2 | sed -e 's/\ /\'$'\n/g' | sed $WHICHCOW'q;d'`

    #echo "Selected cow: ${THISCOW}, from ${WHICHCOW}"
    fortune | cowsay -f $THISCOW -W 100 | lolcat -v 1.1 -h 0.6
}

cowsayfortune

cowsay installieren

Dazu muss cowsay noch installiert werden, damit werden lustige Tiere oder Fabelwesen in ASCII Text in Regenbogenfarben gezeichnet, dabei die Nachricht in einer Sprechblase erscheint.

$ sudo dnf install -y cowsay

Bei Linux Mint und Ubuntu wiederum wie folgt.

$ sudo apt install -y cowsay

Auch kann beispielsweise die man Page mit Regenbogenfarben aufgefrischt werden.

$ man cowsay | lolcat
Regenbogenfarben im Linux Terminal, an cowsay | lolcat
man cowsay | lolcat

Die Abfrage der Netzwerk Konfiguration wird durch farblich abgegrenzte Kontraste deutlich übersichtlicher, mit den lolcat Parameter vertical_speed (-v) und horizontal_speed (-h).

$ ip a | lolcat -v 10 -h 0
Regenbogenfarben im Linux Terminal
ip a | lolcat -v 10 -h 0

Einige weitere Beispiele in Regenbogenfarben im Linux Terminal mit lolcat.

$ cowsay -f kitty U Can\'t Touch This | lolcat -v 1.1 -h 0.5
cowsay
cowsay -f kitty U Can\’t Touch This | lolcat -v 1.1 -h 0.5

fortune und cowsay mit lolcat

$ fortune | cowsay -f eyes | lolcat -v 2
fortune
fortune | cowsay -f eyes | lolcat -v 2
$ fortune -n long | cowsay -f dragon-and-cow | lolcat -v 1.2 -h 0.8
Regenbogenfarben im Linux Terminal
Abbildung: fortune -n long | cowsay -f dragon-and-cow | lolcat -v 1.2 -h 0.8
$ cowsay -f ghostbusters Look at my gist https://gist.github.com/donkey | lolcat -v 2
Regenbogenfarben im Linux Terminal
cowsay -f ghostbusters Look at my gist https://gist.github.com/donkey | lolcat -v 2

Herzlich Willkommen mit lolcat

$ figlet -c Herzlich Willkommen | lolcat -v 2
Regenbogenfarben im Linux Terminal
figlet -c Herzlich Willkommen | lolcat -v 2

Es gibt unzählige Möglichkeiten zur Anwendung von lolcat im Terminal, an dieser Stelle seien nur einige Beispiele zur Veranschaulichung gezeigt. Wie hier einige nützliche Systembefehle mit lolcat dekoriert werden.

date | lolcat
dmesg | lolcat
last | lolcat
free -m | lolcat -v 10 -h 0
sudo du -h | lolcat
tree -s | lolcat -v 2
hostnamectl | lolcat -v 2
hexdump -C ~/.bashrc | lolcat -v 10 -h 0
ip a | lolcat -v 10 -h 0
ip -4 a | lolcat -v 10 -h 0 && ip -6 a | lolcat -v 15 -h 0
route -n | lolcat -v 10 -h 0
sudo lsof -i | lolcat -v 20

Die cowsay file list und die help page, sowie die fortune Optionen.

$ cowsay -l
Cow files in /usr/share/cowsay:
beavis.zen blowfish bud-frogs bunny cheese cower default dragon dragon-and-cow elephant elephant-in-snake eyes flaming-sheep ghostbusters head-in hellokitty kiss kitty koala kosh luke-koala mech-and-cow meow milk moofasa moose mutilated ren sheep skeleton small stegosaurus stimpy supermilker surgery telebears three-eyes turkey turtle tux udder vader vader-koala www

$ cowsay -h
cow{say,think} version 3.03, (c) 1999 Tony Monroe
Usage: cowsay [-bdgpstwy] [-h] [-e eyes] [-f cowfile]
          [-l] [-n] [-T tongue] [-W wrapcolumn] [message]

$ fortune [-afilosw] [-m pattern] [-n number] [ [#%] file/directory/all]

Linux Mint Recovery Menü

Recovery Menü von Linux Mint aktivieren

Wenn auf dem Computer nur Linux Mint installiert ist, und keine anderen Betriebssysteme vorhanden sind, ist das Grub Boot Menü standardmäßig ausgeblendet. Um das Grub Menü beim Start zu erhalten, muss nach dem einschalten die rechte Shift-Taste gedrückt werden, bei virtuellen Maschinen funktioniert das leider nicht, hier muss man das Grub Menü persistent einrichten.

Linux Mint Boot Grub Menü aktivieren

Soll das Linux Mint Grub Menü bei jedem start erscheinen, um das Recovery Menü für Systemreparaturen zu erhalten, oder um Kernel Parameter übergeben zu können, editiert man als root die Datei 90_custom.cfg:

Dabei erst root werden mit sudo su –

$ vi /etc/default/grub.d/90_custom.cfg

und folgende Zeilen hinzufügen:

GRUB_TIMEOUT="5"
GRUB_TIMEOUT_STYLE="menu"

Falls die Datei 90_custom.cfg nicht vorhanden ist, diese einfach mit einem Editor der Wahl erstellen.

Nach dem editieren den folgenden Befehl ausführen:

$ sudo update-grub

Reboot:
Beim nächsten Start erscheint das Grub Boot Menü

Linux Mint Recovery Menü

Der zweite Eintrag „Advanced options for Linux Mint 20“ wählen.

Linux Mint Recovery Menü

Es erscheint das Linux Mint Recovery Menü mit den Reparatur Optionen und dem root shell prompt.

Linux Mint Recovery Menü

Mit „Drop to root shell prompt“ geht es zur Linux Mint Single Mode Menü Console.

Linux Mint Recovery Menü

Wiederherstellungsmodus (Single Mode)

Mit Enter gelangt man in die Linux Mint Menü Wartungskonsole. Hier ist man root und hat Schreibrechte auf des Filesystem. Der Single-User-Runlevel ist der niedrigste Betriebszustand, dieser für Wartungsarbeiten, in dem ausschließlich Systemressourcen wie Festplatten oder Dateisysteme aktiv sind.

root Passwort vergessen

Hier einige der meist selbst verursachten Fehler. Wenn etwa das root Passwort vergessen wurde, kann ein neues vergeben werden.

root@localhost:~# passwd root

sudo Regelwerks-Plugin konnte nicht initialisiert werden

Bei unsachgemäßer Änderungen an der sudoers Datei kann es zu Fehler kommen.

$ sudo visudo
>>> /etc/sudoers: syntax error near line 24 <<<
sudo: parse error in /etc/sudoers near line 24
sudo: no valid sudoers sources found, quitting

Ist sudo im Standard Runlevel nicht mehr möglich und man sich als root von Linux Mint ausgesperrt hat, kann sudo wiederhergestellt werden.

Bevor /etc/sudoers geändert werden kann, muss der Datei das Schreibrecht zugeteilt werden.

$ chmod u+w /etc/sudoers && vi /etc/sudoers

Nach dem editieren muss sudoers wieder geschützt sein.

$ chmod u-w /etc/sudoers

Hier die sudoers Original Datei von Linux Mint 20 für den Fall das diese zur unbrauchbarkeit verändert worden ist.

#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults        env_reset
Defaults        mail_badpass
Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root    ALL=(ALL:ALL) ALL

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

# See sudoers(5) for more information on "#include" directives:

#includedir /etc/sudoers.d

Hinweis! Änderungen sollten immer nur mit visudo gemacht werden.

Festplatte hat kein freien Speicher

Wenn das Linux Mint kein freier Festplattenspeicher mehr hat, können die Logs nicht mehr gespeichert werden, was zum Systemstillstand führt, hier kann in der Single User Mode Console die Speicherbelegung überprüft werden, um wieder freien Speicher zu schaffen.

$ tree -ah /var/log -L 1
$ tree --du -d -shaC | grep -Ev '(  *[^ ]* ){2}\[

Ist das Kommando tree auf dem System nicht vorhanden, kann einer der folgenden du (disk usage) Befehle Hilfe leisten.

$ sudo du –hc ––max-depth=0 /var
$ sudo du -ah /var | sort -n -r | head -n 5
$ sudo du /home -Sh | sort -rh | head -5