Linux

Aus MeinWiki
Wechseln zu: Navigation, Suche

Speicher

Festplatte mit ext3 Dateisystem vergrößern

  • fsck –n /dev/…
  • tune2fs –O ^has_journal  /dev/…
  • fdisk /dev/…
  • reboot
  • e2fsck –f /dev/…
  • resize2fs –f /dev/…
  • tune2fs –j /dev/…
  • tune2fs –c 0 –i 0/dev/…

Festplatte mit ext4 Dateisystem vergrößern

  • Es ist möglich im Betrieb die Festplattengröße zu erweitern.
fdisk /dev/…
e2fsck –f /dev/…
resize2fs –f /dev/…

Ältere Dateien / Verzeichnisse suchen und entfernen

  • Findet Files im aktuellen Verzeichnis (inclusive Unterverzeichnis) die Älter wie 10 Tage sind und zeige sie an.
   find . -type f -mtime +10 -exec ls -al {} ";"
  • Findet Verzeichnise im Verzeichnis /var die Älter wie 180 Tage sind und liste sie auf.
   find /var/* -type d -mtime +180 -exec echo {} ";"
  • Löscht Dateien die Älter wie 30 Tage sind aus dem aktuellen Verzeichnis (inclusive Unterverzeichnis).
   find . -type f -mtime +30 -exec rm -vf {} ";"
  • Löscht Verzeichnis inclusiv Unterverzeichnis aus dem aktuellen Verzeichnis die Älter 15 Tagen sind.
    find /var/ -type d -mtime +10 -exec rm -Rvf {} ";"
  • Lösche Files ohne Unterverzeichnis mit einen bestimmten Datum
    find -maxdepth 1  -type f -newermt 20210220 -a ! -newermt 20210222 -exec rm -vf {} ";"
  • Finde Dateien ohne Unterverzeichnis mit eine bestimmten Datum
    find -maxdepth 1  -type f -printf '%TY%Tm%Td %p\n' | awk '"20210220"<=$1 && $1<="20210222"'
  • Script zum Löschen von älteren Verzeichnissen und Dateien.
   #!/bin/bash
   # Verzeichnis welches nach löschbaren Inhalt durchsucht wird
   SearchDir='/usr/local/pnp4nagios/var/perfdata'
   #Definition des max Alters
   olderDay=10
   # Verzeichnise entfernen.
   test -d ${SearchDir} && \
       find ${SearchDir}/* -type d -mtime +$olderDay -exec rm -Rvf {} ";"
   # Dateien entfernen.
   test -d ${SearchDir} && \
      find ${SearchDir}/* -type f -mtime +$olderDay -exec rm -vf {} ";"

Netzwerk

VLAN Linux

  • vconfig add eth0 5
  • ifconfig eth0.5
  • ifconfig eth0.5 192.168.1.100 netmask 255.255.255.0 broadcast 192.168.1.255 up
  • cat /proc/net/vlan/eth0.5
  • ifconfig eth0.5 down
  • vconfig rem eth0.

NTP-Server testen

sntp -P no -v -r server.domain.net

Portscan

 nmap -sS -p 4786 192.168.2.0/24

Port Testen UDP

 nc -z -v -u [hostname/IP address] [port number]

Port Testen TCP

nc -z -v [hostname/IP address] [port number]

Mail

Mailversand nach extern einrichten / Debian

  • Installation
   apt-get install exim4-daemon-light mailutils
  • Konfiguration
   dpkg-reconfigure exim4-config
   vi /etc/email-addresses
   update-exim4.conf
  • Test
   echo 'Hallo' | mail -s 'Huhu' "Empfanger-Mailadresse"
  • Troubleshooting
   tail -f /var/log/exim4/mainlog

Cron-Job

  • Minuten (0-59)
  • Stunden (0-23)
  • Tag des Monats (1-31)
  • Monat (1-12)
  • Wochentag (0-7, 0 und 7 = Sonntag)
  • / = Schrittweise

Grep

  • folgende Zeilen mit anzeigen.
-A <Anzahl folgend>
-B <Anzahl davor>
-C <Anzahl davor und folgend>
  • nicht vorhanden
-V

LVM

  • Logical Volume anzeigen.
 lvdisplay

Multipath

  • Anzeigen der Devices
multipath -ll
  • Update Devices
multipath -F
multipath -v3

Samba

  • Wenn es zu Problemen mit Symbolischen Links kommt, über mount die Anbindung bewerkstelligen.
mount --bind /mnt/cifs_share /opt/share
fstab:
/mnt/cifs_share  /opt/share none    defaults,bind           0 0
  • Konfiguration neu laden
smbcontrol all reload-config

Script

String

  • Substring Extraction String:Position:(Lengh)
${STRING:8}
${STRING:8:2}
  • Substring Removal shortest match from front String#Substring
${STRING#*_}
  • Substring Removal longest match from front String##Substring
${STRING##*_}
  • Substring Removal shortest match from back String%Substring
${STRING%*_}
  • Substring Removal longest match from back String##Substring
${STRING%%*_}
  • String match
 case "STRING" in
       *OK*) echo ...;;
 esac

Script/Bash

Array

  • Count element.
${#ARRAY[@]}
${#ARRAY[*]}

Tomcat

  • Speicherfehler Javaheap
echo 'export CATALINA_OPTS="-Xms512M -Xmx1024M"' > /usr/share/tomcat7/bin/setenv.sh

SSH

  • Verschlüsselte Einträge aus der Datei known_hosts entfernen.
ssh-keygen -R "Serverrname/IP-Adresse"

Systemd

Runlevel anzeigen

systemctl list-units --type=target

Change Runlevel

rm /etc/systemd/system/default.target
  • Init 3
ln -sf /usr/lib/systemd/system/multi-user.target /etc/systemd/system/default.target
  • Init 5
ln -sf /usr/lib/systemd/system/graphical.target /etc/systemd/system/default.target

Datei

  • Datei leeren
: > dateinamen
  • Bis auf die letzten n Zeilen löschen
tail -n Zeilen dateiname > dateiname

Logrotated

  • Konfiguration testen
 sudo logrotate /etc/logrotate.conf --debug

VI/VIM

  • Copy&Paste im Putty mit rechter Maustaste aktivieren.
 vi /usr/share/vim/vim81/defaults.vim
 " In many terminal emulators the mouse works just fine.  By enabling it you
 " can position the cursor, Visually select and scroll with the mouse.
 "if has('mouse')
 "  set mouse=a
 "endif