Kofler | Linux Kommandoreferenz | E-Book | www2.sack.de
E-Book

E-Book, Deutsch, 547 Seiten

Reihe: Rheinwerk Computing

Kofler Linux Kommandoreferenz

Shell-Befehle von A bis Z
6. Auflage 2024
ISBN: 978-3-367-10105-4
Verlag: Rheinwerk
Format: EPUB
Kopierschutz: 0 - No protection

Shell-Befehle von A bis Z

E-Book, Deutsch, 547 Seiten

Reihe: Rheinwerk Computing

ISBN: 978-3-367-10105-4
Verlag: Rheinwerk
Format: EPUB
Kopierschutz: 0 - No protection



Mit der Kommandoreferenz nutzen Sie die Shell voll aus. Sie liefert Ihnen einen strukturierten Überblick über alle Linux-Befehle, erklärt ihre Verwendung und zeigt Ihnen Praxisbeispiele zu den wichtigsten Anwendungsfälle. Einsteiger finden verständliche Erklärungen zu allen Werkzeugen, fortgeschrittene Linux-User profitieren von Hinweisen zu distributionsspezifischen Abweichungen und kommentierten Konfigurationsdateien.

Aus dem Inhalt:

  • Syntaxreferenz
  • Referenz der Tastenkürzel
  • Dateisystem- und Netzwerk-Administration
  • SELinux, AppArmor, iptables und nft
  • Paketverwaltung, Snap, Flatpack
  • Drucker-, Datenbank- und Server-Administration
  • Cloud und Virtualisierung: aws, Docker, kvm, virsh
  • Zertifikate: acme.sh, certbot, openssl
  • WLAN, Bluetooth und weitere Hardware
  • Systemstart/-stopp, Init-System, GRUB
  • Über 500 Kommandos


Michael Kofler hat Telematik an der TU Graz studiert und ist einer der erfolgreichsten deutschsprachigen IT-Fachbuchautoren. Zu seinen Themengebieten zählen neben Linux auch IT-Sicherheit, Python, Swift, Java und der Raspberry Pi. Er ist Entwickler, berät Firmen und arbeitet als Lehrbeauftragter.
Kofler Linux Kommandoreferenz jetzt bestellen!

Autoren/Hrsg.


Weitere Infos & Material



  Thematische Kommandoübersicht ... 5
  Einleitung ... 23
  Kommandos von A bis Z ... 25

       A ... 25
       B ... 53
       C ... 64
       D ... 91
       E ... 118
       F ... 128
       G ... 153
       H ... 180
       I ... 189
       J ... 205
       K ... 211
       L ... 214
       M ... 239
       N ... 278
       O ... 298
       P ... 302
       Q ... 338
       R ... 345
       S ... 367
       T ... 408
       U ... 427
       V ... 438
       W ... 452
       X ... 463
       Y ... 470
       Z ... 470

  Konfigurationsdateien ... 479

       adduser.conf ... 479
       aliases ... 481
       bashrc ... 482
       config.txt ... 482
       crontab ... 484
       deluser.conf ... 487
       dnf.conf ... 488
       fstab ... 490
       group ... 491
       grub ... 492
       grub.cfg ... 495
       gshadow ... 495
       host.conf ... 496
       hostname ... 496
       hosts ... 497
       interfaces ... 497
       journald.conf ... 501
       locale.conf ... 502
       login.defs ... 503
       mailname ... 505
       mdadm.conf ... 506
       modules ... 507
       netplan.yaml ... 507
       networkd.network ... 508
       nmconnection ... 510
       nsswitch.conf ... 512
       os-release ... 513
       passwd ... 514
       profile ... 515
       rc.local ... 515
       resolv.conf ... 516
       rsyslog.conf ... 517
       services ... 520
       shadow ... 520
       sources.list ... 522
       sudoers ... 523
       sysctl.conf ... 525
       systemd.service ... 525
       systemd.timer ... 529
       vconsole.conf ... 531
       wpasupplicant.conf ... 532

  Tastenkürzel ... 533

       bash ... 533
       emacs ... 533
       gnome-terminal ... 536
       grub ... 537
       info ... 537
       joe ... 538
       konsole ... 539
       less ... 539
       man ... 540
       mutt ... 540
       nano ... 541
       screen ... 541
       Textkonsole ... 542
       vi/vim ... 542


Kommandos von A bis Z


A


aa-complain programm


Das Kommando aa-complain aktiviert den complain-Modus für das AppArmor-Profil des angegebenen Programms. Regelverstöße werden damit zwar protokolliert, aber nicht geahndet, d.?h., das Programm läuft ungestört weiter.

aa-complain steht wie alle anderen aa-xxx-Kommandos nur bei Distributionen zur Verfügung, die das Sicherheitssystem AppArmor verwenden (Debian, SUSE und Ubuntu). Unter Ubuntu befindet sich das Kommando im Paket apparmor-utils, das extra installiert werden muss.

Beispiel

Das Programm dovecot wird zwar weiterhin überwacht, Regelverstöße werden aber lediglich in einer Logging-Datei festgehalten:

root# aa-complain /usr/sbin/dovecot Setting /usr/sbin/dovecot to complain mode.

aa-disable programm


aa-disable deaktiviert das AppArmor-Profil für das angegebene Programm. Das Programm wird damit nicht mehr durch AppArmor überwacht. Zur Reaktivierung verwenden Sie aa-enforce oder aa-complain.

aa-enforce programm


Das Kommando aa-complain aktiviert den enforce-Modus für das AppArmor-Profil des angegebenen Programms. AppArmor unterbindet damit Datei- oder Netzwerkzugriffe, die durch AppArmor-Regeln verboten sind.

aa-status [option]


aa-status liefert eine Zusammenfassung über den Zustand des AppArmor-Systems. Durch die Angabe genau einer Option aus --complaining, --enabled, --enforced oder --profiled kann die Ausgabe auf eine Detailinformation verkürzt werden.

Beispiel

Auf dem Testrechner ist AppArmor aktiv. 50 Regelprofile sind geladen, aber nur fünf davon überwachen tatsächlich laufende Programme.

root# aa-status 50 profiles are loaded. 48 profiles are in enforce mode. /snap/snapd/20674/usr/lib/snapd/snap-confine /snap/snapd/20674/.../mount-namespace-capture-helper /usr/bin/evince /usr/bin/evince-previewer 5 processes are in enforce mode. /usr/sbin/cups-browsed (856) /usr/sbin/cupsd (552) /usr/sbin/libvirtd (566) libvirtd /snap/snapd-desktop-.../snapd-desktop-integration (1902) /snap/snapd-desktop-.../snapd-desktop-integration (1975)

ack [optionen] suchbegriff


ack ist eine für Programmierer und Administratoren optimierte Variante von grep. Im Gegensatz zum Original ignoriert ack GIT- und SVN-Verzeichnisse, Backup-Dateien sowie binäre Dateien. Bei vielen Distributionen befindet sich ack im gleichnamigen Paket oder in ack-grep. Alternativ kann ack auch als Perl-Modul installiert werden (cpan App::Ack).

ack ist grundsätzlich kompatibel mit grep, durchsucht aber standardmäßig rekursiv alle Dateien im aktuellen Verzeichnis (wie grep -r). Am häufigsten wird das Kommando in den Formen ack suchbegriff oder ack -i suchbegriff (Groß- und Kleinschreibung ignorieren) aufgerufen. Eine Referenz von ack-spezifischen Optionen liefern ack --help und man ack.

Eine Alternative zur ack-Variante ist das Kommando ag. Manche Distributionen bieten das Kommando im Paket silversearcher-ag an. Alternativ können Sie das Programm von GitHub klonen und dann selbst kompilieren:

https://github.com/ggreer/the_silver_searcher/wiki

Beispiel

Das folgende Beispiel sucht nach Dateien in /etc, die den Suchbegriff localhost enthalten, und gibt die entsprechenden Treffer samt Zeilennummern an:

root# cd /etc root# ack localhost security/pam_env.conf 52:# to "localhost" rather than not being set at all 53:#REMOTEHOST DEFAULT=localhost OVERRIDE=@{PAM_RHOST} 64:#NNTPSERVER DEFAULT=localhost speech-dispatcher/speechd.conf 38:# for connections coming from localhost. If LocalhostAccessOnly is set to 0 it disables this 199:#AudioNASServer "tcp/localhost:5450" speech-dispatcher/modules/festival.conf 7:#FestivalServerHost "localhost" ...

acme.sh [optionen]


acme.sh ist ein Script, das bei der Installation von Zertifikaten hilft. acme.sh verwendet standardmäßig die Certificate Authority (CA) https://zerossl.com. Mit der Option --server können alternative CAs eingestellt werden, unter anderen Let's Encrypt (https://letsencrypt.org).

Das Script ist eine handliche Alternative zum Kommando certbot, dessen Python-Abhängigkeiten in der Vergangenheit oft zu Installationsproblemen führten.

Auch acme.sh muss installiert werden. Das gelingt mühelos:

user$ sudo apt/dnf/yum/zypper install curl socat user$ curl https://get.acme.sh -o acme-setup user$ less acme-setup (Script-Code kurz kontrollieren) user$ sudo sh acme-setup email=name@myhostname.com ... Installed to /root/.acme.sh/acme.sh Installing alias to '/root/.bashrc' OK, Close and reopen your terminal to start using acme.sh

Im Rahmen der Installation wird /var/spool/cron/root um eine Zeile erweitert. Dadurch kümmert sich Cron um den regelmäßigen Aufruf von acme.sh --cron und damit um die automatische Erneuerung aller Zertifikate, die mit acme.sh eingerichtet wurden.

  • --cron
    erneuert alle mit acme.sh installierten Zertifikate, die älter als 60 Tage sind. Mit der zusätzlichen Option --force kann eine vorzeitige Erneuerung erzwungen werden.

  • --install-cert -d domain

    [--cert-file path/to/certfile]

    [--key-file path/to/keyfile]

    [--fullchain-file path/to/fullchainfile]

    [--reloadcmd "systemctl restart httpd"]

    kopiert die zuvor mit acme.sh --issue erzeugten Zertifikate an einen Ort, wo der Webserver auf sie zugreifen kann, und startet den Webserver anschließend neu. Anstelle von systemctl restart httpd müssen Sie ein für Ihre Distribution geeignetes Kommando angeben, um den Webserver neu zu starten.

    Beachten Sie, dass es nicht zielführend ist, die in /root/.acme.sh gespeicherten Zertifikate selbst in ein anderes Verzeichnis zu kopieren. acme.sh merkt sich die Pfade und das Reload-Kommando für die automatische Zertifikatserneuerung.

    acme.sh verändert die Konfigurationsdateien Ihres Webservers nicht! Sie müssen die Anweisungen mit den Pfaden zu den Zertifikatsdateien selbst hinzufügen.

  • --issue -d domain -w webrootdir
    richtet ein Zertifikat für die angegebene Domäne ein. Die Option -d kann mehrfach verwendet werden, um ein Zertifikat für zusammengehörige Domänen zu erzeugen (also z.?B. -d eine-firma.de -d www.eine-firma.de). Wenn Sie ein Wildcard-Zertifikat wünschen, übergeben Sie beispielsweise -d eine-firma.de -d *.eine-firma.de. Die Zertifikate werden im Verzeichnis /root/.acme.sh gespeichert.

    Wenn auf dem Rechner noch kein Webserver läuft, geben Sie anstelle von -w webrootdir die Option --standalone an. acme.sh agiert dann vorübergehend selbst als Webserver. Das setzt voraus, dass Port 80 durch kein Programm blockiert ist.

  • --remove -d domain
    deaktiviert für die angegebene Domäne die Zertifikatserneuerung, die automatisch alle 60 Tage stattfindet. Obwohl der Optionsname das Gegenteil vermuten lässt, werden die Zertifikate selbst nicht gelöscht. Sie können aber nun das entsprechende Verzeichnis /root/.acme.sh/domain selbst löschen.

  • --server letsencrypt|buypass|google|sslcom|zerossl
    gibt an, welche CA verwendet werden soll. Ohne die Angabe dieser Option gilt zerossl, d.?h.? es werden kostenlose Zertifikate von http://zerossl.com bezogen.

  • --upgrade
    aktualisiert das Script acme.sh.

Beispiel

Die folgenden Kommandos erzeugen ein Zertifikat für die Domänen eine-firma.de und www.eine-firma.de und kopieren die Zertifikate in das für diesen Zweck eingerichtete Verzeichnis /etc/acme-letsencrypt:

root# mkdir /etc/acme-letsencrypt root# acme.sh --issue --server letsencrypt -d eine-firma.de -w /var/www/html Your cert is in /root/.acme.sh/eine-firma.de/eine-firma.de.cer Your cert key is in /root/.acme.sh/eine-firma.de/eine-firma.de.key The intermediate CA cert is in /root/.acme.sh/eine-firma.de/ca.cer And the full chain certs is there: /root/.acme.sh/eine-firma.de/fullchain.cer root# acme.sh --install-cert -d eine-firma.de \ --cert-file /etc/acme-letsencrypt/eine-firma.de.cert \ --key-file /etc/acme-letsencrypt/eine-firma.de.key \ --fullchain-file /etc/acme-letsencrypt/eine-firma.de.fullchain --reloadcmd 'systemctl restart httpd' Installing cert to: /etc/acme-letsencrypt/eine-firma.de.cert Installing key to: /etc/acme-letsencrypt/eine-firma.de.key Installing full chain to: /etc/acme-letsencrypt/eine-firma.de.fullchain Run reload cmd: systemctl restart httpd Reload success

Alternativen

Anstelle von acme.sh kam früher häufig certbot zum Einsatz. Dieses Python-Script ist immer noch gebräuchlich, bereitet aber oft Probleme bei der Installation. Eine weitere Alternative ist getssl (siehe https://github.com/srvrco/getssl).

acpi [optionen]


acpi liefert Informationen zur Energieversorgung des Rechners.

  • -a
    zeigt an, ob der Rechner an das...


Kofler, Michael
Michael Kofler hat Telematik an der TU Graz studiert und ist einer der erfolgreichsten deutschsprachigen IT-Fachbuchautoren. Zu seinen Themengebieten zählen neben Linux auch IT-Sicherheit, Python, Swift, Java und der Raspberry Pi. Er ist Entwickler, berät Firmen undarbeitet als Lehrbeauftragter.



Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.