Archive for the ‘Unix’ Category

Lokalen HTTP-Server starten

Freitag, September 23rd, 2022

Python2: python -m SimpleHTTPServer 8000
Python3: python -m http.server 8000

Der Server ist dann erreichbar unter der URL http://localhost:8000

https://logfetch.com/python-server/

Linux on Desktop, 2022

Sonntag, August 7th, 2022

https://itvision.altervista.org/why.linux.is.not.ready.for.the.desktop.current.html

Festplatte komplett löschen

Samstag, August 6th, 2022

Festplatte unmounten, dann:
sudo dd if=/dev/zero of=/dev/sdx bs=512 count=4 status=progress

Wobei /dev/sdx für das Device steht, z.B. /dev/sdc

Dann in gparted neue Partition anlegen

AWK – unzippen von Dateien in einen Zielordner

Dienstag, Juni 14th, 2022

Der Name des Ziel-Ordners soll aus dem Namen der Zip-Datei bestimmt werden.

#!/bin/sh
#
# -v = Variable setzen
# inp = Name der Variablen
# $1 = 1. Script-Argument
# split = Splitte die Variable inp mit dem Trenner . in das Array a
# print = Drucke das erste Element des Array a
#
# Das Ergebnis der Aktion wird in die Script-Variable Foldername geschrieben
#
foldername=$(awk -v inp=$1 'BEGIN {split(inp,a,".zip"); print a[1]}')

#
# unzip modifiers:
# -o = overwrite without promting
# -d = write to directory
#
unzip -o $1 -d $foldername
# oder mit 7zip:
# 7z x $1 -o$foldername
#
#
echo "Unzipping to folder:" $foldername

Cron

Freitag, Mai 6th, 2022

Kurzanleitung Cron:
Cron

Cron startet nicht:
https://stackoverflow.com/questions/22743548/cronjob-not-running

Authentication abgelaufen?
https://devanswers.co/linux-cron-not-running-authentication-token-is-no-longer-valid-new-one-required/

Linux/Ubuntu: alte Kernel entfernen, /boot aufräumen

Mittwoch, April 13th, 2022

Alte Kernel können mit dem Befehl
sudo apt-get autoremove --purge
entfernt werden.

Der Ordner /boot hat dann auch wieder Platz.
Eine Übersicht über die Laufwerke und ihre Belegung
erhält man mit dem Befehl df

Docker

Donnerstag, März 3rd, 2022

Docker installieren:
sudo apt-get install docker.io

Docker Prozesse anzeigen:
sudo docker ps

Docker Container starten:
sudo docker run -dit --name [NAME] [CONTAINER]

Docker Container stoppen:
sudo docker stop [NAME]

Docker Container entfernen:
sudo docker rm [NAME]

Bash-Shell im Container starten:
docker exec -it [NAME] /bin/bash

Datei in einen Docker-Container kopieren:
docker cp [dateiname] [dockerid]:[zielverzeichnis]

Datei aus einen Docker-Container kopieren:
docker cp [dockerid]:[ldateiname] [zielverzeichnis]

Docker Dokumentation:
https://docs.docker.com

Docker best practices:
https://docs.docker.com/develop/develop-images/dockerfile_best-practices

Beispiel: Apache2 im Docker-Container laufen lassen:
https://www.tecmint.com/install-apache-web-server-in-a-docker-container/

Beispiel:
sudo docker run -dit -p 6464:80 --name "cool_server" -v /usr/share/my-web-folder:/usr/local/apache2/htdocs/ httpd
Der Server ist dann unter der Webadresse http://[server]:6464 erreichbar.

Linux: exFat formatieren

Samstag, Februar 5th, 2022

exFat installieren:
sudo apt-get install exfat-fuse exfat-utils

Falls keine Partition angelegt wurde:
mit gparted (Bild) unformatierte Partition anlegen
Oder mit fdisk

Datenträger auflisten, um ID der Partition zu ermitteln (z.B. /dev/sdd1):
lsblk -o NAME,FSTYPE,LABEL,MOUNTPOINT,SIZE,MODEL

Partition formatieren:
sudo mkfs.exfat /dev/sdd1

Namen der Partition ändern:
sudo exfatlabel /dev/sdd1 daten-exfat

Unix: Server einrichten

Dienstag, August 3rd, 2021

User hinzufügen:
useradd -m -p [password] -s /bin/bash [username]
adduser [username] sudo

Sudo-User hinzufügen:
Als Root ausführen:
visudo
Zeile hinzufügen:
username ALL=(ALL) NOPASSWD:ALL

Benutzershell ändern:
sudo chsh -s /bin/bash [username]

Root-SSH-Zugang verbieten:
In Datei /etc/ssh/sshd_config
Zeile ändern in:
PermitRootLogin no
SSH Server neu starten:
/etc/init.d/ssh restart

Bei „WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!“
SSH Key aktualisieren:
ssh-keygen -R

Gruppen auflisten:
cat /etc/group oder getent group

Gruppe hinzufügen:
groupadd -g group [-ID groupid]
(der Parameter groupid ist optional, ohne ihn wird die erste freie ID vergeben)

Benutzer zu einer Gruppe hinzufügen:
sudo usermod -a -G groupName userName

Rechner für Dateirechte (chmod):
https://pisica.de/webtools/chmod-rechner.php

Login im Terminal als anderer Benutzer:
su - user2

Ubuntu / Libre Office – PDF-Export

Donnerstag, April 15th, 2021

Ubuntu / Libre Office:
Problem: Beim PDF-Export enthält das PDF keinen Text.
Abhilfe:

sudo apt remove --purge libreoffice-qt5