linux:spielerei_mit_linux-systemen
Dies ist eine alte Version des Dokuments!
Inhaltsverzeichnis
Linux
Hier sollen Dinge gesammelt werden, die mir zu Merkzwecken dienen.
- nette Tipps, LUKS, screen in crontab: https://limejack.org/doku.php/de/tooltips
- pdftk zum zerteilen etc. von PDFs, nicht mehr in neueren Umgebungen enthalten, aber als snap verfügbar
sudo apt-get install pftkodersudo apt-get install snapdundsudo snap install pdftk
- Alternative zu pdftk ist pdfunite von poppler http://poppler.freedesktop.org
- pdf zu jpg/png:
- pdf Seiten entnehmen:
- pdf zerlegen:
pdftk burst file.pdf - pdfs zusammenfassen:
pdftk file1.pdf file2.pdf cat output out.pdf - eine Seite exportieren
pdftk 'Beispiel Datei.pdf' cat 9 output page9.pdf - mit GUI PDFs zusammensetzen, teilen etc: https://pdfsam.org/de/pdfsam-basic/
- Anhang in PDF speichern:
pdftk beispiel.pdf attach_files tux01.eps beispiel.tex output beispiel_anhang.pdf,Quelle: http://www.lagotzki.de/pdftk/index.html#attachment - Lesezeichen bearbeiten:
- vorhandenes Dokument ausleden:
pdftk alle_Flyer_Elektrotechnik_und_Informatik_HIT_2024.pdf dump_data output data.txt - Daten bearbeiten (ggf. aus einem guten Dokument zum Vergleich auslesen)
- Datei neu erzeugen:
pdftk alle_Flyer_Elektrotechnik_und_Informatik_HIT_2024.pdf update_info data.txt output alle_Flyer_Elektrotechnik_und_Informatik_HIT_2024_mit_Lesezeichen.pdf
Imagemagik
- Isntallation:
sudo apt install imagemagick- Fehler weil PDF nicht gewandelt werden kann? https://askubuntu.com/questions/1127260/imagemagick-convert-not-allowed
- JPGs zu einer PDF:
convert *.jpeg out.pdf - PDF zu png:
convert -density 600 Test04.pdf Test04.pngdensity in pixel/cm-alpha offum Transparenz zu entfernen
- Seiten drehen damit Zeilen exakt horizontal sind:
convert *.jpeg -deskew 80% out.pdf - Größe ändern:
mogrify -resize 1200 *.JPGgröß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 = 300
Grafik und Co.
- https://wiki.ubuntuusers.de/unpaper/ gescannte Vorlagen ausrichten, nachbelichten, schärfen, für OCR vorbereiten
sudo apt-get install unpaperunpaper scan.png out
-
- alle Dateien im Verzeichnis mit OCRmyPDF bearbeiten und in Unterverzeichnis schieben: https://limejack.org/doku.php/de/tooltips/ocrmypdf
- alle EXIF Daten entfernen oder exportieren https://wiki.ubuntuusers.de/ExifTool/ alles entfernen:
exiftool -all= *.jpg, installieren mitsudo apt-get install libimage-exiftool-perl
- Collagen erstellen: https://github.com/adrienverge/PhotoCollage, installation: sudo pip3 install photocollage
- Dymo Label Writer 450: https://gambaru.de/blog/2018/06/03/dymo-labelwriter-450-etiketten-drucken-unter-linux-mit-glabels/
- Treiber
sudo apt install printer-driver-dymo - Glabel
sudo apt install glabels
Kommandozeile
cat /etc/os-releaseZeigt Infos zur Distribution anls -llange Darstellungsform des Verzeichnisinhaltsls -1Zeigt nur die Dateinamen untereinanderls -1 > dir.txtspeichert die Dateinamen in einer Textdateils -lizeigt die inodes an.treeodertree ordnerzeigt den Inhalt in grafischer Darstellung an, Installation:sudo apt install treesu -in die root-shell wechselnless /dev/logzeigt Infos über eine Datei anless -s /dev/logüberspringt mehrfache Leerzeilenless -S /dev/logZeilenumbruch für überlange Zeilen
idzeigt 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.0eine Datei/Bibliothek findendpkg -l libssl*ein Paket suchensudo chown name:gruppe DateinameBesitzer und Gruppe einer Datei änderntimeout 30s ping 192.168.178.1https://www.cyberciti.biz/faq/linux-run-a-command-with-a-time-limit/- mehrere Dateien in Großbuchstaben umwandeln:
mmv -v „*“ „#u1“, Kleinbuchstaben:mmv -v „*“ „#l1“, Quelle: https://www.linux-community.de/ausgaben/easylinux/2009/01/shell-tipps/ stat /etc/hostsInformationen über Erstellung Bearbeitung etc zu einer Datei erhaltencat /etc/hosts |od -aeine Datei in ASCII anzeigen- Inhalte in Dateien suchen:
grep -rnwi '/Pfad/zu/Ordner/' -e 'Textschnipsel'Quelle-
- dvdbackup -I -i /dev/dvd
- komplett
dvdbackup -p -M -i /dev/dvd -o ~/Videos - titel
dvdbackup -p –title=4 -i /dev/dvd -o ~/Videos - titelset
dvdbackup -p –titleset=4 -i /dev/dvd -o ~/Videos
-
- Dateien umbenennen, Texteil ersetzten:
rename -n 's/pg_00/Urkunde-/g' *.pdf-nzeigt zunächst an, was passieren würde, „pg_00“ wird ersetzt durch „Urkunde-“
- In Dateinamen Leerzeichen durch Underscores ersetzen
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 filenameum die md5 Prüfsumme zu bekommenkeytool -list -printcert -jarfile filename.zipum 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; done- in fortlaufende Zahlen mirt führenden Nullen und Dateiendung umbenennen:
ls -v | cat -n | while read n f; do mv „$f“ `printf „%03d.mp3“ $n`; done - mehrere MP3s in eine MP3 zusammenführen https://wiki.ubuntuusers.de/mp3wrap/
mp3wrap ERGEBNIS.mp3 TITEL-0*.mp3 - Logs anzeigen:
journalctlunddmesg
Backup
- Backup machen:
rsync -aAXv –exclude={„path/to/excluded/directories“} / /path/to/destinationhttps://www.unixmen.com/how-to-backup-with-rsync/ -
- Bog Backup:
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/Dokumente* Lock entfernen:borg break-lock /mnt/dietpi_userdata/borg_backup_repo/Backup==== Doppelte Dateien finden und durch HardLinks ersetzen ==== * fdupes https://github.com/adrianlopezroche/fdupes * findet und listet die Dateien aber ersetzt sie nicht? *fdupes -Sr .listet alle gleichen Dateien blockweise an * duff https://manpages.ubuntu.com/manpages/trusty/man1/duff.1.html * freedup https://linux.die.net/man/1/freedup * Rdfind https://rdfind.pauldreik.se/ *rdfind -dryrun true -makehardlinks true .zeige an was er machen würde, ersetzte gleiche Dateien durch Hardlinks *rdfind -makehardlinks true .* dupeguru https://dupeguru.voltaicideas.net/ * kommt nicht in Frage: fslint - nicht mehr unterstützt da Python2, * jdupes https://github.com/jbruchon/jdupes 7x schneller als fdupes? *jdupes -Lr /path/to/your/filesersetzt gleiche Dateien durch hardlinks, inklusive Unterverzeichnissen ==== Libraries ==== * nachträgliches normalerweise in /usr/local/lib installiert *ldconfig -vlistet alle gefundenen auf *sudo ln -sf libad.so.4.6.525 /usr/local/lib/libad.soerstellt einen Link aus eine spezielle Version *nm –dynamic –demangle /lib/x86_64-linux-gnu/libm.so.6 | grep GLIBCzeigt die aktiven glibc Versionen an *ldd datei.sozeigt an, welche Bibliotheken dynamisch verlinkt sind *ldd –versionzeigt die glibc Version an *readelf -h /usr/local/lib/libad.so.4.6.525Anzeigen des Formats, u.a. ELF32 oder ELF64 *ldconfig –helpoderldconfig -pInfos zu Biblioheken ausgeben, ohne Parameter und mit sudo neu einlesen?? ==== serial ==== *lsusbzeigt USB Geräte an, inkl. USB ID * CH340G: 1a86:7523 * anzeigen nach USB-Steckplatz:ls /dev/serial/by-path/- gleicher Steckplatz = gleiche Bezeichnung Quelle ==== Festplatte löschen bzw. freien Platz überschreiben ==== * einmal überschreiben genügt egal mit null oder was auch immer: https://www.heise.de/-198816 * Prinzip * a): nur freier Speicherplatz: in Verzeichnis vom Laufwerk gehen, das überschrieben werden soll *cd Verzeichnis auf HDD (Stammverzeichnis)*dd /dev/zero leeredatei status=progress* warten auf die Meldung, dass kein Speicherplatz mehr da ist, * Dateileerdateilöschen (alles bis auf ganz wenig freier Speicherplatz ist überschrieben * b) Ganze Platte löschen: mitblkiddie Platte identifizieren!!!! *dd bs=1M if=/dev/zero of=/dev/sdX status=progressüberschreibt die Partition/Platte * Dauer 500GB an USB2.0: (500 GB, 466 GiB) kopiert, 12959,4 s, 38,6 MB/s = 3,6h * Dauer 1TB an USB3 (odroid xu4) (1,0 TB, 932 GiB) copied, 13565 s, 73,7 MB/s = 3,77h * Dauer 2TB an USB3 (odroid xu4) (2,0 TB, 1,8 TiB) copied, 24705,5 s, 81,0 MB/s = 6,87h * 500 GB in OneTouch USB3 (i5-3470) Seagate v. 2013 (500 GB, 466 GiB) kopiert, 13788,7 s, 36,3 MB/s = 3,83h ==== Festplatte Image sichern für Wiederherstellung gelöschter Dateien, nach versehentlichen Formatieren ==== * sichern, unkompirmiert:dd if=/dev/sda bs=4M | pv | of=/dev/sdd1/meinbackup_2.img*sudo dd if=/dev/sda bs=4M | pv | gzip > backup.img.gz* Wiederherstellen:gzip -dc backup.img.gz | pv | sudo dd of=/dev/sda bs=4Mbzw.sudo dd if=/dev/sdd1/meinbackup_2.img | pv | of=/dev/sda bs=4M(ungestestet) ==== Festplatten einhängen, home auf einer anderen Platte, Verzeichnisse mounten ==== * ist ein Laufwerk im Ordner/mnt eingehängt, wird es nicht als Symbol angezeigt * mount –bind /dsv/sdc/ordner /home/neuer Ordner bindet einen Ordner an einer beliebigen Stelle ein * in der Datei /etc/fstab werden dauerhafte mounts eingetragen ==== Analysieren von Programmen ==== * Quelle: https://www.youtube.com/watch?v=5v6o-VsLAew&feature=youtu.be *stracezeigt die Aufrufe des Programms an *strace -e open bashOpensystemcalls für das Programm bash anzeigen * write, execve, recvfrom *timezeigt, 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 -h*sudo ngrep -d lo 5000zeige Netzwerktraffic am Gerät localhost port 5000 an *curl –header „Accept-language: en-US“ localhost:5000Header setzen * weitere Netzwerktools: tcpdump, wireshark, mitmproxy * Stack anzeigen für PID *pgrep -f mysteryPID ermitteln z.B. 12345 *sudo cat /proc/12345/stack* oder in einer Zeilesudo cat /proc/(pgrep -f mystery)/stack*dstat -dZeigt Lese- und Schreiboperationen an * Anzeig der Version von glibc:ldd –version==== Netzwerk ==== * Gateway anzeigen:ip routeoderip route | grep default*ip -6 aIPv6 Adresse anzeigen *netstat -tulpn- offene Ports anzeigen *ip -br -c addr showtabelarisch die Netzwerkadressen anzeigen *ip -br -c link showtabelarisch die Verbindungen anzeigen * Gerät im Netzwerk suchensudo nmap -sn 192.168.178.0/24* Versionen und Verletzlichkeit von SSL anzeigen und analysieren: https://testssl.sh/ ==== Firefox ==== * Addons * uBlock origin * Export Tabs URLs * I don't care about cookies * Video DownloadHelper * Startpage.com — Datenschutz-Suchmaschine ==== home-Assistant ==== * 15 Tipps: https://yewtu.be/watch?v=FVusYP4fHFM * https://analytics.home-assistant.io/ * ===== Bash Skripte ===== *#!/bin/sh set -euo pipefailbei 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/113032028521655044 ===== Weiteres ===== * https://stephenagrice.medium.com/take-your-linux-workspace-anywhere-backup-for-nerds-fdbf40b0421 * HP Druckertreiber und Scanner: https://developers.hp.com/hp-linux-imaging-and-printing * aus Downloadordern woanders hin kopieren *sudo apt-get remove libhpmud0 libsane-hpaio*sh hplip-3.20.11.run* Elektrocad https://qelectrotech.org/ * Neueste Entwicklerversion:sudo add-apt-repository ppa:scorpio/qelectrotech-dev*sudo xed /etc/apt/preferences.d/40qelectrotech-devel*Package: qelectrotech*
Pin: version 0.90.*
Pin-Priority: 1001*sudo apt-get update* Elektonikcad https://kicad.org * https://github.com/openscopeproject/InteractiveHtmlBom * https://github.com/gregdavill/Buzzard/tree/kicad Labels * Bild von Videoquelle anzeigen (Eigentlich eine GUI für Videoquellen und deren Einstellungen) https://wiki.ubuntuusers.de/guvcview/ * Ein mit LUKS verschlüsselte Platte (aus Laptop, mit Passwort beim Booten) einhängen: Über GUI „Laufwerke“ gibts ein Symbol mit offenen/geschlossenen Schloss, damit kann die LUKS Partition eingehängt und ausgehängt werden * Eine verschlüsseltes Homeverzeichnis kann mit dem Befehlecryptfs-recover-private /media/<UUID>/home/.ecryptfs/<USERNAME>/.Privatein der /tmp Verzeichnis mit Read-only eingehängt werden, zum Schreibzugriff-rwergänzen Link (Wenn es das TMP Verzeichnis nicht mounten kann, dannwhich ecryptfs-recover-privatekopieren und editieren, fünftletzte Zeile im Mountbefehl '-i' (lokaly only) entfernen) * Benchmark Phoronix Test Suite: Paket (deb) von https://phoronix-test-suite.com/?k=downloads *phoronix-test-suite benchmark c-ray*phoronix-test-suite benchmark build-linux-kernel* Meldung:tools/objtool/include/objtool/elf.h:10:10: fatal error: gelf.h: Datei oder Verzeichnis nicht gefunden–>apt install libelf-dev* i7 work: Intel Core i7-3770 @ 3.90GHz: C-Ray 277.853 Seconds, build-linux-kernel 275.392 Seconds * https://openbenchmarking.org/ * Cron Jobs von allen Nutzern anzeigen:for user in $(cut -f1 -d: /etc/passwd); do crontab -u $user -l; doneQuelle: Tamara https://debianforum.de/forum/viewtopic.php?t=104233 * Hardware anzeigensudo lshw -short* Cisco PacketTracer installieren: nicht Doppelklick (gdebi?) hat keinen Erfolg –>sudo dpkg -i CiscoPacketTracer822_amd64_signed.deb* fehlende Abhängigkeiten installierenapt install -f==== Audio ==== * Ein/Ausgabegeräte auflisten *pacmd list-sink-inputs,pactl list short sources,pactl list short* baudline um eine Spektrum anzuzeigen https://www.baudline.com/download.html * starten und (im Verzeichnis wo baudline entpackt ist): *parec –format=s16le –channels=1 –latency-msec=5 | ./baudline -stdin* Manchmal muss ich rechtsklicke und pause oder record klicken, dass ich was sehe * manchmal musste ich erst in den Klangeinstellungen die richtige Audioquelle auswählen. * Wenn im Terminal der Befehl 'parec -d ' und dann [TAB] drücke, kommt die Autovervollständigung und du findest verschiedene Geräte. So kann ich mit *parec -d alsa_input.usb-046d_HD_Pro_Webcam_C920_D64B083F-02.analog-stereo –format=s16le –channels=1 –latency-msec=5 | ./baudline -stdinmein Mikrofon der Webcam direkt nutzen. * Farbmodus umstellen: Rechte Maustaste im Wasserfalldiagramm –> input –> channel mapping –> letzte Spalte Color umstellen ==== Autobingooo ==== * FAQ sagt,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.* Vorbereitung:sudo apt-get install wine-stable* Installation:wine setup_autobingooo.exe* Über Menü Start –> Wine –> Autobingooo * Meldung „… antwortet nicht, „Warten“ klicken * rechts unten: „Jetzt testen!“ klicken ===== SSH für Git erstellen ===== - (Schlüssel erzeugen)ssh-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_rsaundsudo chmod 600 ~/.ssh/id_rsa.pub- Inhalt aus id_rsa.pub in gitlab unter Einstellungen ssh-Keys eintragen und Namen geben - in der Kommandoteile die Verbindung testen:ssh -T git@git_server.org- remote von https zu ssh umstellen: - anzeigen lassengit remote -v- ändern:git remote set-url origin git@git_server.org:user/repo_url_for.git===== CD oder DVD Laufwerk als Image verwenden ===== Eine ISO Datei erstellen:dd if=/dev/cdrom of=image.isoEine ISO Datei einbinden:mkdir verzeichnissudo mount image.iso ~/verzeichnis -o users,ro,loopDie 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 ~/verzeichnisWeiteres zum arbeiten mit DVDs: https://wiki.ubuntuusers.de/dvdbackup/dvdbackup -M -i /dev/dvd -o ~/Videos===== NAS ZyXEL NSA325 ===== 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.zipentpacken mitunzip unison-2.40.102-static-armel.zipund ausführbar machen mitchmod u+x unisonJetzt 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…
linux/spielerei_mit_linux-systemen.1725338693.txt.gz · Zuletzt geändert: (Externe Bearbeitung)
