Die Seite wird mit häufig von mir gebrauchten Befehlen aktualisiert bei denen ich mich erwische, sie immer und immer wieder zu er-googlen. Und ja, hier landen auch sehr einfache Befehle 😉
Git
Reset des git repos zum Stand des Upstream Branches
git fetch origin
git reset --hard origin/master
Oder auch einfach
git config --global alias.fuck 'reset --hard HEAD'
Xen Guest Tools installieren
Debian:
mkdir -p /mnt/cdrom
mount /dev/xvdd /mnt/cdrom
/mnt/cdrom/Linux/install.sh
umount /mnt/cdrom
Ubuntu:
apt install xen-guest-utilities
Externe IP herausfinden
curl -s -6 ifconfig.co/json | jq '.'
{
"ip": "2a03:4000:26:d1::2",
"ip_decimal": 5.584445078780264e+37,
"country": "Germany",
"country_eu": true,
"country_iso": "DE",
"hostname": "vps07.geekbundle.org",
"latitude": 51,
"longitude": 9
}
Weitere Beispiele unter https://ifconfig.co
Rekursiv Rechte auf Ordner / Dateien setzen
find /path/to/base/dir -type d -exec chmod 755 {} +
find /path/to/base/dir -type f -exec chmod 644 {} +
Leere und mit # auskommentierte Zeilen verstecken:
grep -vE '^(#|$)' ./conf.conf
Sed
Zeile auskommentieren:
sed -e '/ZEILEN_ZUM_AUSKOMMENTIEREN/ s/^#*/#/' -i /etc/fstab
Fedora Package Management
Alle installierten Pakete auflisten:
dnf list installed
Inhalt eines Paketes anzeigen:
dnf repoquery -l packagename
Update alle python3 packages mit pip
python3 -m pip list --outdated --format=json | \
jq -r '.[] | "\(.name)==\(.latest_version)"' | \
xargs --no-run-if-empty -n1 python3 -m pip install -U
Windows Lizenzkey auslesen
sudo cat /sys/firmware/acpi/tables/MSDM | tail -c 32 | xargs -0 echo
Per Host Passwort
Wenn man für jeden Host ein eigenes Passwort haben möchte, aber all die Passwörter z.B. nicht in einer Datenbank speichern möchte, kann man sich Passwörter per openssl vom selben hmac "Master Key" ableiten lassen. Dann muss nur noch der Master Key abgespeichert werden und kann sich bei Bedarf das Passwort über openssl ausgeben lassen
Master Key erstellen:
masterkey=$(pwgen 64 1)
Für jeden Host
echo -n "hostname+year" | openssl dgst -sha256 -hmac "$masterkey" | cut -c 10-26
In welchem Namespace wird ein Mountpoint genutzt
grep vol_raidz1/backups/backuppc /proc/*/mounts
Dass ich das noch erleben darf: Endlich noch jemand, der beim find-Befehl mit exec ein Plus-Zeichen anstelle eines Semikolons benutzt :‘-)
Zu „Rekursiv Rechte auf Ordner / Dateien setzen“ noch ein Optimierungsvorschlag. Zwei find-Befehle mit jeweils -type f und -type d erfassen nur Dateien und Ordner, jedoch keine Symlinks, Gerätedateien, usw. Daher bügele ich zunächst komplett ein chmod drüber, gefolgt von einem find-Befehl, um neben Dateien und Verzeichnissen auch alle übrigen Typen zu erfassen:
chmod -R u=rx,g=r,o=r /path/to/base/dir
find /path/to/base/dir -type d chmod u=rwx,g=rx,o=rx {} +