Einige nützliche Linux Befehle (Ubuntu)

Einige nützliche Linux Befehle (Ubuntu)

Ich werde die Liste immer mal wieder erweitern. Einige Befehle kann ich mir einfach nicht merken und suche sie wieder und wieder..

Hier sind einige nützliche Linux bzw. Ubuntu Befehle bzw. Kommandos.

Der Fokus liegt auf den Kommandos, die ich selber regelmäßig bei der Administrierung eines Server benötige, auch bei der Verwendung von Docker und KVM.

# Kopieren von Verzeichnissen zwischen 2 Servern
scp -r root@192.3.45.154:/var/www/api/public /var/virt/covers
# Kopieren einer Datei zwischen 2 Servern
scp root@192.3.45.154:/var/www/api/public/abc.tar.gz /var/virt/covers
# (sftp hat ähnliche Syntax)
# um probleme mit scp/sftp zu debuggen, -v option nutzen
scp -v
# Zählen der Dateien in Unterverzeichnissen
find . -type f | wc -l
# Docker image starten und mit Console verbinden
docker run -i -t --entrypoint /bin/bash 60c52dbe9d91
# docker copy file into image
docker cp nginx.conf rancher_nginx_1:/etc/nginx/nginx.conf
# restart docker container, e. g. after copying file :)
docker restart rancher_nginx_1
# attach to running docker container
docker exec -ti rancher_client_1 /bin/bash
# Allow ssh durch Firewall
ufw allow ssh
# Allow docker containers through Ubuntu Firewall
ufw allow in on docker0
# Start docker image (like pure debian or ubuntu) and get bash
docker run -i -t --entrypoint /bin/bash abc
# bekommt man die Meldung /bin/bash: /bin/bash: cannot execute binary file so hilft das Hinzufügen von -s
docker run -ti --entrypoint /bin/bash abc -s
# docker build
docker build -t andi/l4bmongo .
# shell script um auf "hörenden" mongo zu warten:
until nc -z localhost 27017
do
    sleep 1
    echo waiting for mongo
done
# (z. B. nützlich, wenn man in einen gestarteten mono anschließend per Skript mongorestoren möchte)
# nach einem mongo build (der fehlschlägt) ist es oft eine gute Idee, per /bin bash (s. o.) in den letzten erstellen Container zu gehen, und zu sehen, was fehlgeschlagen ist bzw. was passiert, wenn man den nächsten anstehenden Befehl ausführt
# laufen lassen per
docker run -p 27017:27017 -t andi/l4bmongo
# Attach to running docker process
sudo docker attach loving_heisenberg
# zip folder
tar -cvfz archive.tar.gz directory/
# unzip archive
tar -xvfz archive.tar.gz
# start rancher docker container
docker run -d --restart=always -p 8080:8080 rancher/server
# show docker container startup logs
docker logs -f containerid
# firewall disable
ufw disable
# firewall enable
ufw enable
# find 10 largest folders in file system
du -sk * | sort -nr | head -10
# find text within all files of specific folder
grep -rnw 'directory' -e "pattern"
# same, but only on specific files, like *.h + *.c
grep --include=\*.{c,h} -rnw 'directory' -e "pattern"
# find newest (by modification date) 5 files in subfolder folder
find folder -printf '%T+ %p\n' | sort -r | head -5
# docker remove unused volumes (only working on docker 1.9 and higher, see https://github.com/chadoe/docker-cleanup-volumes)
docker volume rm $(docker volume ls -qf dangling=true)
# remove all docker containers (including running ones)
docker rm --force `docker ps -qa`
# view all specifically known hosts in docker
cat /etc/hosts
# docker only listen only localhost (note: docker circumvents ufw and directly create iptable rules to listen on * if so configured - which is default!!)
# here: listen on localhost:3000 "externally", internally 3001
docker .. -p 127.0.0.1:3000:3001 ...
# list running KVM machines
virsh list
# list running and stopped KVM machines
virsh list --all
# start a qemu/kvm machine
virsh start <name>
# folder disk space usage
du -hs
# ls with human readable file size
ls -lh
# count files in folder
find . -type f | wc -l
# diff 2 folders on 2 different machines using rsync
rsync -n -avrc /home/vpmail/andreas-reiff.d/contact 84.201.40.199:/home/vpmail/andreas-reiff.d/contact
# disk usage
df -h
# rsync with delete
rsync -avz --delete root@192.168.0.100:/var/lib/rpm/ .
# install screen
apt-get install screen
# start screen session
screen
# then hit space 2x
# detach wit ctrl+a ctrl+d
# reconnect, e. g. after ssh disconnect
screen -r

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.