Linux Commands

  • Hier ist eine Auswahl an Linux Kommandos, mit leicht verständlicher Kurzbeschreibung, die bei der Webentwicklung häufig zum Einsatz kommen. Empfehlenswert sind dafür SSH Clients mit passenden Eingabeterminals wie bspw. die von Bitvise oder Putty.
    • ** Packen -Varianten
    • **
    • ** *.gz


    •    
          gzip   -c   datei1   datei2   datei3   >   archiv.gz
                                          
    • ** *.tar.gz


    •    
          tar   cfvz   archiv.tar.gz   datei1   datei2   ...   datein
          tar   cfvz   archiv.tar.gz   --exclude   ordner/datei3   ordner/datei1   ordner/datei2   ...   ordner/datein
                                          


    • Die 2. Zeile mit additionalem Ausdruck, wenn Datein oder Ordner ausgeschlossen werden sollen. Im gezeigten Beispiel wird datei3 ausgeschlossen.

    • ** *.zip


    •    
          zip   -r   archiv.zip   datei1   datei2   ...   datein   
                                          


    • Ersetzen Sie nachfolgende Ausdrücke..
      ' datei1 ' usw.. mit den Serverpfad einschließlich der Datei(n) die gepackt werden sollen.
      ' archiv ' mit den Serverpfad und einem beliebigen Namen der zukünftigen Archiv -datei.




    • ** Entpacken -Varianten
    • **
    • ** *.gz


    •    
          gzip   -d   archiv.gz   <   zielordner
                                          
    • ** *.tar


    •    
          tar   -xvf   archiv.tar   <   zielordner
          tar   -xf   archiv.tar   -C   zielordner
                                          


    • Die 2. Variante in der 2. Zeile nur, wenn die 1. Variante fehl schlägt.

    • ** *.tar.gz


    •    
          tar   xfvz   archiv.tar.gz   <   zielordner 
      
          tar   -tvf   archiv.tar.gz
          tar   -f     archiv.tar.gz   -zxv   pfad/datei
                                          

    • Die 2./3. Variante ab der 2. Zeile nur, wenn eine bestimmte Datei extrahiert werden soll.
      Das Kommando in der zweite Zeile listet den Inhalt samt Pfade auf.

    • ** *.zip


    •    
          unzip   -d   zielordner   archiv.zip
                                          


    • Ersetzen Sie nachfolgende Ausdrücke..
      ' archiv ' mit den Serverpfad und Ihrer Archiv -datei.
      ' zielordner ' mit den Serverpfad, wohin der Inhalt entpackt werden soll.




    • ** Download
    • **


    •    
          wget   -P   zielordner   "https://www.example.com/archiv.tar.gz"
          wget   --user=b   --password=p   zielordner   "http://myweb.de/my.zip"
                                          


    • Die 2. Variante in der 2. Zeile nur, wenn das Download -Verzeichnis ein Passwortschutz enthält. Ersetzen Sie dabei den Ausdruck ' b ' mit dem Benutzernamen und den Ausdruck ' p ' mit dem Passwort vom Verzeichnisschutz.

    • ** Verschieben
    • **


    •    
          mv   -t   zielordner   datei1   datei2
          mv   -t   zielordner   quelle/*
                                          


    • Die 2. Variante in der 2. Zeile ist geeignet um den gesamten Inhalt eines Ordners zu verschieben.

    • ** Löschen
    • **


    •    
          rm   -rf   datei
                                          


    • Ersetzen Sie nachfolgende Ausdrücke..
      ' zielordner ' mit den Serverpfad, wohin die Datei verschoben werden soll.
      ' datei ' mit den Serverpfad einschließlich der Datei, die verschoben werden soll

    • ** Auflisten
    • **


    •    
          ls   -al   ordner
                                          


    • Ersetzen Sie den Ausdruck ' ordner ' mit den Serverpfad einschließlich dem Ordner, dessen Inhalt aufgelistet werden soll.

    • ** Kopieren
    • **


    •    
          cp   -rv   ordner/*   zielordner/
                                          


    • Ersetzen Sie nachfolgende Ausdrücke..
      ' ordner ' mit den Serverpfad einschließlich dem Ordner, dessen Inhalt in den Zielordner kopiert werden soll.
      ' zielordner ' mit den Serverpfad einschließlich dem Zielordner.

    • ** Zusammenführen
    • **


    •     copy   /b   *.txt   newfile.txt
                                          


    • Ersetzen Sie nachfolgende Ausdrücke..
      ' *.txt ' mit der Dateiendung, dessen Inhalte in eine einzige neue Datei zusammengeführt (merged) werden soll.
      Navigieren Sie zuvor in den Ordner mit den abgelegten Datein durch Eingabe von: "cd ordnerpfad".




    • ** MySql -Varianten
    • **
    • ** -dump


    •    
          mysqldump   -u   user   -p   db_name   >   dump.sql
          mysqldump   -u   user   -p   db_name   table1_name   table2_name   table3_name   >   dump.sql
          mysqldump   -h   host   -p   -u   user   db_name   >   dump.sql
          --no-tablespaces
                                          


    • Die 2. Variante in der 2. Zeile nur, wenn man einzelne Tabellen extrahieren möchte.
      Die 3. Variante in der 3. Zeile nur, wenn die Datenbank nicht über ' localhost erreichbar ist.
      In der 4. Zeile der additionale Ausdruck, wenn eine Fehlermeldung mit entsp. Hinweis erscheint.

    • ** -dump -gz


    •    
          mysqldump   -u   user   -p   db_name   |   gzip   >   dump.sql.gz
                                          
    • ** -dump -gz -passwort


    •    
          mysqldump   -u   user   -p   passwort   db_name   |   gzip   >   dump.sql.gz
                                          
    • ** -import


    •    
          mysql   -u   user   -p   db_name   <   datei.sql
          mysql   -u   user   -p   -h   host   db_name   <   datei.sql
          --default-character-set=utf8
                                          


    • Die 2. Variante in der 2. Zeile nur, wenn die Datenbank nicht über ' localhost erreichbar ist.
      In der 3. Zeile der zusätzliche Ausdruck, falls die Umlaute nicht korrekt übertragen werden.


    • Ersetzen Sie nachfolgende Ausdrücke..
      ' user ' mit dem Benutzer der Datenbank.
      ' passwort ' mit dem Passwort der Datenbank.
      ' db_name ' mit dem Namen der Datenbank.
      ' dump ' mit den Serverpfad, wo die Datei entstehen soll und einen beliebigen Namen für die Dumpdatei.




    • ** Directory -Rechte
    • **
    • ** -besitzer + gruppe ändern


    •    
          chown   -cR   besitzer:gruppe   ordner
                                          


    • Ersetzen Sie nachfolgende Ausdrücke..
      ' besitzer ' mit einem existierenden Mitglied, das einer Gruppe zugeordnet ist.
      ' gruppe ' mit der passenden Gruppe.
      ' ordner ' mit den Serverpfad einschließlich dem Ordner, wo die Änderung durchgeführt werden soll.

    • ** -schreibrechte für mitglieder der gruppe


    •    
          chmod   -R   g+w   ordner
                                          


    • Ersetzen Sie den Ausdruck ' ordner ' mit den Serverpfad einschließlich dem Ordner, dessen Premissen geändert werden soll.

    • ** -ausführungsrechte für alle mitglieder


    •    
          chmod   -R   755   ordner
          chmod   -R   755   $(find   ordner   -type   d)
          chmod   -R   644   $(find   ordner   -type   f)
                                          


    • Ersetzen Sie den Ausdruck ' ordner ' mit den Serverpfad einschließlich dem Ordner, dessen Premissen rekursiv(alles innerhalb) geändert werden soll.
      Die 2. Variante in der 2. Zeile nur, wenn rekursiv die Premissen der Ordner geändert werden sollen.
      Die 3. Variante in der 3. Zeile nur, wenn rekursiv die Premissen der Datein geändert werden sollen.




    • ** Email -Administration
    • **
    • ** -ssl zertifikat mailclient *.p12 export


    •    
          chown   -cR   besitzer:gruppe   ordner
      
          openssl   pkcs12   -export   -out   /etc/ssl/certificate.p12   -inkey   /etc/ssl/private/ssl-dovecot.key   -in   
          /etc/ssl/certs/ssl-dovecot.pem   -certfile   /etc/ssl/certs/ca-certificates.crt
                                          


    • Überprüfen Sie die Pfade auf Ihrem Webspace und passen Sie diese ggf. an. Diese Anweisung exportiert das SSL Zertifikat in ein client -taugliches Format.

    • ** -adressen aus vielen datein sammeln, sortieren, doppelte entfernen


    •    
          grep -Rli   "^To:   (.*?)"   /home/colli/Maildir/cur   |   sort   |   uniq   -u   |   \
          awk   '{print   $2"   "$3"   :   "$1}'   >   datei.log
                                          


    • Überprüfen Sie die Pfade auf Ihrem Webspace und passen Sie diese ggf. an. Hängen Sie ggf. einen leicht aufzufindenden Serverpfad an die Datei ' datei.log




    • ** SSH -CLI
    • **
    • ** -verbinden mit server


    •    
          ssh   user   @   ip_server
                                          


    • Die Lücken rechts und links vom @ Zeichen bitte in Ihrem Code entfernen.

    • ** -verbindung beenden


    •    
          exit   __ENTER TASTE__
                                          



    • ** Cron Jobs
    • **
    • ** -cron jobs auflisten


    •    
          crontab   -l
                                          
    • ** -cron jobs einstellen/ anlegen


    •    
          crontab   -e
                                          


    • Einstellen der Crontabs mit dem Editor 'vi' durch Switchen in die gewünschten Modi siehe unten. Taste Escape drücken um den ausgewählten Modus wieder zu verlassen.


      dd
      u
      x
      j
      o
      p
      q
      wq
      i


      Aktuelle Zeile löschen
      Letzte Änderung rückgängig machen
      Zeichen unter dem Cursor löschen
      Linien zusammenführen
      Neue Zeile unter der Aktuellen einfügen
      Daten aus dem Zwischenspeicher an der Cursorposition einfügen
      Editor beenden ohne den Text zu speichern
      Änderungen übernehmen und Editor beenden
      In den Eingabemodus wechseln