Hier sollen Dinge gesammelt werden, die mir zu Merkzwecken dienen.
sudo apt-get install pftk odersudo apt-get install snapd undsudo snap install pdftkpdftk burst file.pdfpdftk file1.pdf file2.pdf cat output out.pdfpdftk 'Beispiel Datei.pdf' cat 9 output page9.pdfpdftk beispiel.pdf attach_files tux01.eps beispiel.tex output beispiel_anhang.pdf,Quelle: http://www.lagotzki.de/pdftk/index.html#attachmentpdftk alle_Flyer_Elektrotechnik_und_Informatik_HIT_2024.pdf dump_data output data.txtpdftk alle_Flyer_Elektrotechnik_und_Informatik_HIT_2024.pdf update_info data.txt output alle_Flyer_Elektrotechnik_und_Informatik_HIT_2024_mit_Lesezeichen.pdfsudo apt install imagemagickconvert *.jpeg out.pdfmogrify -format jpg *.heicconvert -density 600 Test04.pdf Test04.png density in pixel/cm-alpha off um Transparenz zu entfernenconvert *.jpeg -deskew 80% out.pdfmogrify -resize 1200 *.JPG größte Seite auf 1200, Namen beibehalten100×200 # width = 100, height = 20, keep ratio
100×200\! # deform ratio
300x # width = 300, height = proportional
x300 # width = proportional, height = 300sudo apt-get install unpaperunpaper scan.png outexiftool -all= *.jpg, installieren mit sudo apt-get install libimage-exiftool-perlsudo apt install printer-driver-dymosudo apt install glabelscat /etc/os-release Zeigt Infos zur Distribution anls -l lange Darstellungsform des Verzeichnisinhaltsls -1 Zeigt nur die Dateinamen untereinander ls -1 > dir.txt speichert die Dateinamen in einer Textdateils -li zeigt die inodes an. tree oder tree ordner zeigt den Inhalt in grafischer Darstellung an, Installation: sudo apt install treesu - in die root-shell wechseln less /dev/log zeigt Infos über eine Datei an less -s /dev/log überspringt mehrfache Leerzeilen less -S /dev/log Zeilenumbruch für überlange Zeilenid zeigt ID des Nutzers, bzw. Gruppenzugehörigkeit anfind -name „*JPG“ -exec convert -resize 1920×1920 {} {} \; Dateien mit JPG finden und auf maximale Seitenlänge mit 1920 Pixeln wandelnlocate libcrypto.so.1.0.0 eine Datei/Bibliothek finden dpkg -l libssl* ein Paket suchensudo chown name:gruppe Dateiname Besitzer und Gruppe einer Datei änderntimeout 30s ping 192.168.178.1 https://www.cyberciti.biz/faq/linux-run-a-command-with-a-time-limit/mmv -v „*“ „#u1“, Kleinbuchstaben: mmv -v „*“ „#l1“, Quelle: https://www.linux-community.de/ausgaben/easylinux/2009/01/shell-tipps/stat /etc/hosts Informationen über Erstellung Bearbeitung etc zu einer Datei erhaltencat /etc/hosts |od -a eine Datei in ASCII anzeigengrep -rnwi '/Pfad/zu/Ordner/' -e 'Textschnipsel' Quelledvdbackup -p -M -i /dev/dvd -o ~/Videosdvdbackup -p –title=4 -i /dev/dvd -o ~/Videosdvdbackup -p –title=4 -i /dev/dvd -n URLAUB_OSTEEE -o ~/Videosdvdbackup -p –titleset=4 -i /dev/dvd -o ~/Videosrename -n 's/pg_00/Urkunde-/g' *.pdf -n zeigt zunächst an, was passieren würde, „pg_00“ wird ersetzt durch „Urkunde-“rename 's/\s/_/g' ./*.pdf (Quelle: https://unix.stackexchange.com/questions/223182/how-to-replace-spaces-in-all-file-names-with-underscore-in-linux-using-shell-scr)md5sum filename um die md5 Prüfsumme zu bekommenkeytool -list -printcert -jarfile filename.zip um md5 und sha Prüfsumme aus dem Java Archiv zu bekommen# Strip .jpg from all filenames
for f in *.jpg; do mv „$f“ „${f%.jpg}“; done
# Add .jpg to all filenames (even those with .jpg already)
for f in *; do mv „$f“ „$f.jpg“; done
# Add .jpg to all filenames…unless they are already .jpg
for f in *; do case „$f“ in *.jpg) echo skipped $f;; *) mv „$f“ „$f“.jpg; esac; done
# Add .jpg to all filenames…unless they already have a . extension
for f in *; do case „$f“ in *.*) echo skipped $f;; *) mv „$f“ „$f“.jpg; esac; donels -v | cat -n | while read n f; do mv „$f“ `printf „%03d.mp3“ $n`; donemp3wrap ERGEBNIS.mp3 TITEL-0*.mp3 journalctl und dmesgdf -h -d 1 todo: mit awk nach Dateigröße sortiert ausgebenrf -r folder, ohne nachfrage: rm -rf folderuvgrep -in Bauvorhaben *.pdf *.odt
von https://github.com/hgesser/uvgrep, Abhängigkeiten installieren: sudo apt install libxml2-utils
pdfgrepsudo ncdu /nano: mceditcrontab -einxi -Fxxxrz Sektion System zeigt bei MINT die zugrunde liegende Version vom Ubuntulsb_release -a zeigt an, welche Linux Mint Distribution läuftrsync -aAXv –exclude={„path/to/excluded/directories“} / /path/to/destination https://www.unixmen.com/how-to-backup-with-rsync/borg create –verbose –filter AME –list –stats –show-rc –compression lz4 ssh:\/\/dietpi@192.168.1.1/mnt/dietpi_userdata/borg_backup_repo/Backup::2024-09-03-0639 /home/user/Dokumenteborg break-lock /mnt/dietpi_userdata/borg_backup_repo/Backupfdupes -Sr . listet alle gleichen Dateien blockweise anrdfind -dryrun true -makehardlinks true . zeige an was er machen würde, ersetzte gleiche Dateien durch Hardlinksrdfind -makehardlinks true .jdupes -Lr /path/to/your/files ersetzt gleiche Dateien durch hardlinks, inklusive Unterverzeichnissenldconfig -v listet alle gefundenen aufsudo ln -sf libad.so.4.6.525 /usr/local/lib/libad.so erstellt einen Link aus eine spezielle Versionnm –dynamic –demangle /lib/x86_64-linux-gnu/libm.so.6 | grep GLIBC zeigt die aktiven glibc Versionen anldd datei.so zeigt an, welche Bibliotheken dynamisch verlinkt sindldd –version zeigt die glibc Version anreadelf -h /usr/local/lib/libad.so.4.6.525 Anzeigen des Formats, u.a. ELF32 oder ELF64ldconfig –help oder ldconfig -p Infos zu Biblioheken ausgeben, ohne Parameter und mit sudo neu einlesen??lsusb zeigt USB Geräte an, inkl. USB IDls /dev/serial/by-path/ - gleicher Steckplatz = gleiche Bezeichnung Quellelsusb -t zeigt Treiber an, z.B. wenn bei USB-SATA Adaptern als driver uas steht, unterstützen die UASP https://www.jeffgeerling.com/blog/2020/uasp-makes-raspberry-pi-4-disk-io-50-fastercd Verzeichnis auf HDD (Stammverzeichnis)dd /dev/zero leeredatei status=progressleerdatei löschen (alles bis auf ganz wenig freier Speicherplatz ist überschriebenblkid die Platte identifizieren!!!!dd bs=1M if=/dev/zero of=/dev/sdX status=progress überschreibt die Partition/Plattedd if=/dev/sda bs=4M | pv | of=/dev/sdd1/meinbackup_2.imgsudo dd if=/dev/sda bs=4M | pv | gzip > backup.img.gzgzip -dc backup.img.gz | pv | sudo dd of=/dev/sda bs=4M bzw. sudo dd if=/dev/sdd1/meinbackup_2.img | pv | of=/dev/sda bs=4M (ungestestet)strace zeigt die Aufrufe des Programms anstrace -e open bash Opensystemcalls für das Programm bash anzeigen time zeigt, wie lang das Programm lief, wieviel CPU genutzt wurde, … Achtung: in bash gibt es time als Befehl, es muss der richtige gewählt werden /usr/bin/time /usr/bin/time -f „\t%E real,\t%U user,\t%S sys, \t%PCPU“ df -hsudo ngrep -d lo 5000 zeige Netzwerktraffic am Gerät localhost port 5000 an curl –header „Accept-language: en-US“ localhost:5000 Header setzenpgrep -f mystery PID ermitteln z.B. 12345sudo cat /proc/12345/stacksudo cat /proc/(pgrep -f mystery)/stackdstat -d Zeigt Lese- und Schreiboperationen anldd –versionip route oder ip route | grep defaultip -6 a IPv6 Adresse anzeigennetstat -tulpn - offene Ports anzeigenip -br -c addr show tabelarisch die Netzwerkadressen anzeigenip -br -c link show tabelarisch die Verbindungen anzeigensudo nmap -sn 192.168.178.0/24sudo service network-manager restart, z.B. nachdem sudo xed /etc/hosts geändert wurdesystemctl /etc/init.d Systemcat /proc/fs/cifs/DebugData, tail -f /var/log/kern.log#!/bin/sh
set -euo pipefail bei Fehler abbrechen, nicht weitermachen wenn eine Variable nicht gesetzt ist und wenn eins von mehreren Befehle in einer Pipe fehl schlägt, Quelle: https://infosec.exchange/@darkuncle/113032028521655044sudo apt-get remove libhpmud0 libsane-hpaiosh hplip-3.20.11.runsudo add-apt-repository ppa:scorpio/qelectrotech-devsudo xed /etc/apt/preferences.d/40qelectrotech-develPackage: qelectrotech*
Pin: version 0.90.*
Pin-Priority: 1001sudo apt-get updateecryptfs-recover-private /media/<UUID>/home/.ecryptfs/<USERNAME>/.Private in der /tmp Verzeichnis mit Read-only eingehängt werden, zum Schreibzugriff -rw ergänzen Link (Wenn es das TMP Verzeichnis nicht mounten kann, dann which ecryptfs-recover-private kopieren und editieren, fünftletzte Zeile im Mountbefehl '-i' (lokaly only) entfernen)phoronix-test-suite benchmark c-rayphoronix-test-suite benchmark build-linux-kerneltools/objtool/include/objtool/elf.h:10:10: fatal error: gelf.h: Datei oder Verzeichnis nicht gefunden –> apt install libelf-devfor user in $(cut -f1 -d: /etc/passwd); do crontab -u $user -l; done Quelle: Tamara https://debianforum.de/forum/viewtopic.php?t=104233sudo lshw -shortsudo dpkg -i CiscoPacketTracer822_amd64_signed.deb
apt install -fpacmd list-sink-inputs, pactl list short sources, pactl list short parec –format=s16le –channels=1 –latency-msec=5 | ./baudline -stdinparec -d alsa_input.usb-046d_HD_Pro_Webcam_C920_D64B083F-02.analog-stereo –format=s16le –channels=1 –latency-msec=5 | ./baudline -stdin mein Mikrofon der Webcam direkt nutzen. Gibt es eine Version für andere Betriebssysteme als Windows? Zusätzlich bieten wir AutoBINGOOO für Mac OSX an. Linux unterstützen wir nicht nativ, es ist aber möglich Win32-Software mittels Windows-Emulation auf einem Linux-Rechner zu betreiben. Support für diese Einrichtung können wir aber nicht bieten.sudo apt-get install wine-stablewine setup_autobingooo.exessh-keygen -t rsa -b 4096 -C „your.email@example.com“ (mit oder ohne Password, in Datei is_rsa und id_rsa.pub)sudo chmod 600 ~/.ssh/id_rsa und sudo chmod 600 ~/.ssh/id_rsa.pubssh -T git@git_server.orggit remote -vgit remote set-url origin git@git_server.org:user/repo_url_for.git
Eine ISO Datei erstellen:
dd if=/dev/cdrom of=image.iso
Eine ISO Datei einbinden:
mkdir verzeichnis
sudo mount image.iso ~/verzeichnis -o users,ro,loop
Die Bedeutung der Schalter und Optionen: sudo: als Superuser arbeiten, mount ist der Befehl, image.iso der Dateiname ~/verzeichnis der Pfad (muss vorhanden und leer sein) wo das Image verfügbar gemacht werden soll, -o user, dass von jedem Benutzer wieder ein unmount gemacht werden kann, ro bedeutet read-only, und loop, dass es kein Gerät sondern eine Umleitung ist. Quelle u.a.: [http://www.arsenal-of-wisdom.org/?p=212]
Wieder trennen:
umount ~/verzeichnis
Weiteres zum arbeiten mit DVDs: https://wiki.ubuntuusers.de/dvdbackup/ dvdbackup -M -i /dev/dvd -o ~/Videos
In Settings Telnet aktivieren, dann mit z.B. PuTTY.exe [http://winscp.net/eng/download.php#putty] [http://winscp.net/download/putty.exe] in die busybox gehen. Jetzt kann z.B. die [http://www.cis.upenn.edu/~bcpierce/unison/index.html|Unison] Archiv für ARM von [http://www.crutzi.info/unison/binary/armel] laden mit dem Befehl:
wget www.crutzi.info/sites/default/files/unison-2.40.102-static-armel.zip
entpacken mit
unzip unison-2.40.102-static-armel.zip
und ausführbar machen mit
chmod u+x unison
Jetzt kann ein kurzer (Selbst)Test zeigen ob das Programm arbeitet:
./unison -selftest
Der nächste Schritt wäre das einrichten von SSH und starten von unison als Server…