Problems and solutions: Linux, bash, PC's, network, Drupal ...

102 posts / 0 new
Last post
selaw2
depth

du /user/home/  -h --max-depth 1

selaw2
compress, gzip, bzip2, etc. pp.

compress -d datei.Z
gzip -d datei.gz
gzip -d datei.tgz
bzip2 -d datei.bz2
tar -xvf datei.tar
tar -zxvf datei.tar.z
rpm -i datei.rpm

selaw2
dd über das Netz

dd if=/dev/hda1 | ssh benutzer@192.168.2.101 "cat > /home/Benutzer/meinimage.img"

selaw2
gzip, bzip2, tar, etc. pp.

compress -d datei.Z
gzip -d datei.gz
gzip -d datei.tgz
bzip2 -d datei.bz2
tar -xvf datei.tar
tar -zxvf datei.tar.z
rpm -i datei.rpm

selaw2
depth

du /user/home/  -h --max-depth 1

selaw2
mount nfs

mount -t nfs server:/tmp /home/user

selaw2
Datei spliten und wieder zusammenführen

split -b 10m grosse_datei kleine_dat_
#wieder zusammen kleben cat kleine_dat_* >grosse_datei

selaw2
tcpdump ....

tcpdump | grep -i "192.168.1.2" | awk '{print $2}' | cut -d. -f1 | grep -v "truncated-ip"

selaw2
mount -t smbfs ....

mount -t smbfs -o username=abc,password=abc //fileserver/X /mnt/Y/

mount.cifs  //fileserver/X  /mnt/Y/ -o username=userxyz

smbmount //fileserver/user_1  /mnt/user_2/ -o username=userxyz

selaw2
cd brennen

#!/bin/bash
echo "audio-cdrom einlegen........"
/usr/bin/cdda2wav -D 0,0,0 -O wav -B
echo "rohling einlegen........"
/usr/bin/cdrecord -v -dev=0,0,0 -useinfo -speed=12 -dao -eject -audio *.wav
echo "cd ist gebrannt worden"

selaw2
netstat ...

netstat -tpan -- even

selaw2
cd brennen

#!/bin/bash
echo "audio-cdrom einlegen........"
/usr/bin/cdda2wav -D 0,0,0 -O wav -B
echo "rohling einlegen........"
/usr/bin/cdrecord -v -dev=0,0,0 -useinfo -speed=12 -dao -eject -audio *.wav
echo "cd ist gebrannt worden"

 

selaw2
mount -t smbfs ....

1. mount -t smbfs -o username=abc,password=abc //fileserver/X /mnt/Y/ !!! ok
2. smbmount //fileserver/user_1  /mnt/user_2/ -o username=userxyz ???
3. mount.cifs  //fileserver/X  /mnt/Y/ -o username=userxyz !!! ok

selaw2
tcpdump | grep ...

tcpdump | grep -i "192.168.1.2" | awk '{print $2}' | cut -d. -f1 | grep -v "truncated-ip"

selaw2
Zeit umstellen

hwclock --set --date="1/16/20 17:12:05"

hwclock --hctosys

selaw2
nmap -> network-scanner

# sudo nmap -v -sT 1.2.3.4-255

# sudo nmap -PE -sn -oG - 192.162.1.1/24

# sudo nmap -sP -oG - 192.168.1.1/24

# sudo nmap -sS -F 192.168.0.1

# nmap -sV -Pn -p0- --reason --stats-every 60s 192.168.0.1

 

 

selaw2
pdf-dateien zusammenfügen

pdfsam-console -f 1.pdf -f 2.pdf -f 3.pdf -f 4.pdf -o ./18022020.pdf concat

selaw2
pdf datei verschlüsseln per pdftk

pdftk  BLA.pdf output BLA-crypt.pdf owner_pw parol_1 user_pw parol_2  allow Printing

selaw2
split and cat (Dateien teilen und zusammenfügen)

du -h pushkin.mp4
496M    pushkin.mp4

Um die Datei "pushkin.mp4" auzuspliten:

split -b 100M pushkin.mp4 split-pushkin.mp4

 

ls -la split-pushkin.mp4*
-rw-r--r-- 1 ivan ivan 104857600 Apr  7 17:35 split-pushkin.mp4aa
-rw-r--r-- 1 ivan ivan 104857600 Apr  7 17:36 split-pushkin.mp4ab
-rw-r--r-- 1 ivan ivan 104857600 Apr  7 17:36 split-pushkin.mp4ac
-rw-r--r-- 1 ivan ivan 104857600 Apr  7 17:36 split-pushkin.mp4ad
-rw-r--r-- 1 ivan ivan 100092133 Apr  7 17:36 split-pushkin.mp4ae

du -h split-pushkin.mp4*
101M    split-pushkin.mp4aa
101M    split-pushkin.mp4ab
101M    split-pushkin.mp4ac
101M    split-pushkin.mp4ad
96M    split-pushkin.mp4ae

 

Dateien split-pushkin.mp4a* zusammenfügen:

cat split-pushkin.mp4a*  >  pushkin.mp4

Es dauert 8 Secunden

:-)

selaw2
Wie wird ein gutes Passwort unter Befehlskonsole generiert

cat /dev/urandom  | tr -dc '[:alnum:][:punct:]' | head -c 12;echo

6o*?/bU2/uGz

cat /dev/urandom  | tr -dc '[:alnum:][:punct:]' | head -c 12;echo

kVsi~y&kM_$=

etc. pp.

selaw2
shutdown -h +15 - Das System wird in 15 Min. heruntergefahren

sudo shutdown -h +15

Das Herunterfahren des Linux-Rechner in 15 Min.

selaw2
alle Prozesse killen

echo k > /proc/sysrq-trigger

selaw2
der Mauszeiger ist plötzlich weg

1) gsettings set org.gnome.settings-daemon.plugins.cursor active false

2) sudo modprobe -r psmouse

3) sudo modprobe psmouse

4) sudo apt-get install unclutter

unclutter -idle 1 -root -grab -visible

sudo killall unclutter

xdotool mousemove 100 100

selaw2
gnome komplett restarting

sudo service gdm restart

selaw2
“restart” the touchpad driver ...

sudo /etc/init.d/hotplug restart

selaw2
kill user ; kill bill

# sudo pkill -9 -u username

pgrep -u username < - > To list all users pids

-----------

 fuser -m /dev/sdb1
kill xxxx

selaw2
image von bootmenü entfernen

sudo apt-get remove --purge paket1 paket2 paket3 (etc.pp.)
dpkg -l | egrep linux-\(image\|headers\)-2.*-generic

selaw2
Zertifikate erneut installieren

sudo apt-get install --reinstall ca-certificates

 

selaw2
crypto-file system erstellen

I.

1. apt-get install cryptsetup hashalot
2. mkfs.ext3 /dev/mapper/$CRYPTODEVICE
3. cryptsetup -y -c aes-cbc-essiv:sha256 create crypt_250314   /dev/sda3
4. mount /dev/mapper/$CRYPTODEVICE $MOUNT

----------------------

II.

Täglicher Gebrauch
 Trage deine Cryptopartition in /etc/crypttab ein, bspw:

    # target_device  source_device  key_file  options
    $CRYPTODEVICE      /dev/$DEVICE     none        cipher=aes-cbc-essiv:sha256

    Trage in /etc/fstab das Device (/dev/mapper/$CRYPTODEVICE $MOUNT) mit deinen Dateisystemoptionen ein.

    /etc/init.d/cryptdisks kuemmert sich um die Initialisierung beim Booten. Bei Falscheingabe, kannst du nach dem login mit

    /etc/init.d/cryptdisks start

-------------------

III.

sudo apt-get install cryptsetup hashalot
cryptsetup -y -c aes-cbc-essiv:sha256 create crypt_250314   /dev/sda3
sudo cryptsetup -y -c aes-cbc-essiv:sha256 create crypt_250314   /dev/sda3
mkfs.ext4 /dev/mapper/crypt_250314
sudo mkfs.ext4 /dev/mapper/crypt_250314
 
mount /dev/mapper/crypt_250314 /mnt/crypto/
sudo mount /dev/mapper/crypt_250314 /mnt/crypto/

selaw2
dd: image uber das Netz ...

dd if=/dev/hda1 | gzip -9 - | ssh user@192.168.0.100 "cat > /home/BENUTZER/image_hda1.img.gz"

selaw2
wheezy-raspbian.img auf micro sd karte

 sudo dd if=/home/sd-karte/micro-sd.img of=/dev/mmcblk0
sudo dd bs=1M if=wheezy-raspbian.img  of=/dev/mmcblk0

selaw2
file bla.pdf aus der Konsole direkt ausdrucken

lp -d  Lexmark-E232  /home/bill/bla.pdf

selaw2
schleife i=$[$i+1];

i=1;
while [ $i -le $a ]; do
echo $i;
i=$[$i+1];
done

selaw2
fp reparieren

sudo e2fsck -fn /dev/sda1
sudo e2fsck -p <device file>
 sudo e4defrag /home/user/directory/
sudo e4defrag /dev/sda5

-------------

sudo dumpe2fs DEVICE

selaw2
grafische konsole stoppen

sudo service lightdm stop

sudo service gdm stop

selaw2
sudo vi /etc/default/grub

1) sudo   vi  /etc/default/grub
------------------------------
die boot reihenfolge ändern:
cat /etc/default/grub
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
#   info -f grub -n 'Simple configuration'

#0 oder 1 oder 2 etc. pp.
----------->>> GRUB_DEFAULT=0 <<<<------------
#GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"

# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=640x480

# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"

# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"
------------------------------
2) sudo update-grub

selaw2
sudo apt-key add

wget -O- http://deb.opera.com/archive.key | sudo apt-key add -

selaw2
inxi

inxi -v7 -c 0
inxi -Fs
inxi -Fxx -fr  
inxi -rfv7

selaw2
iptables

sudo iptables -A INPUT -s 1.2.3.4/15  -j DROP

selaw2
mate-control-center

mate-control-center

selaw2
Befehle unter ubuntu

sudo update-manager -d
sudo apt-get install -f
sudo apt-get dist-upgrade
sudo apt-get install --reinstall ca-certificates
sudo apt-get install ubuntu-restricted-extras

selaw2
Benutzer "else" in die Gruppe sudo aufnehmen

usermod -aG sudo else

selaw2
Version Abfrage

1) lsb_release -a

2) cat /etc/issue
3) lsb_release -a

selaw2
Schleife i=$i+1

#!/bin/bash
i=0
while [ $i -le 10 ]
do
  echo $i
  let i=$i+1
done

selaw2
restart window-menager -a

xfwm4

selaw2
falls das verzeichnis groesser als 10 MB ist, loesch die erste

#!/bin/bash
#### variablen definition #########
A=`du  /var/lib/motion/ |awk '{print $1}'`
#B=`expr $A`
###### falls das verzeichnis groesser als 20 MB ist, loesch die erste 100 dateien #########
if [[ $A -gt 10000 ]]
 then
cd /var/lib/motion/;   
rm `ls /var/lib/motion/ | head -100`;
else :
fi

selaw2
bash - if else statement ...

    eq = equal                   <->  Gleichheit
    ne = not equal             <->  Ungleichheit
    le = lesser or equal      <-> kleiner oder gleich
    lt = lesser than            <-> kleiner als
    ge = greater or equal  <-> größer oder gleich
    gt = greater than         <-> größer als

---------------

Ein kleines Skript:

#!/bin/bash
while true
do sleep 10
   if [ `who | grep -v tty1 | wc -l` -ge 1 ]
   then who  > jemand_ist_am_rechner; date >> jemand_ist_am_rechner
   else echo ok
   fi
done

Hier wird es Datei "jemand_ist_am_rechner" generiert:

cat jemand_ist_am_rechner

pi       tty1          2020-01-30 05:20
pi       pts/0        2020-05-14 09:00 (xxx.xxx.xxx.xxx) <- IP-Adresse von fremden Rechner
Do 14. Mai 20:28:06 CEST 2020

selaw2
if test oder if [ xxxx ]

-r Dateiname
    Die Datei Dateiname existiert und ist lesbar
-w Dateiname
    Die Datei Dateiname existiert und ist beschreibbar
-x Dateiname
    Die Datei Dateiname existiert und ist ausführbar
-d Dateiname
    Die Datei Dateiname existiert und ist ein Verzeichnis
-s Dateiname
    Die Datei Dateiname existiert und ist nicht leer
-b Dateiname
    Die Datei Dateiname existiert und ist ein blockorientiertes Gerät
-c Dateiname
    Die Datei Dateiname existiert und ist ein zeichenorientiertes Gerät
-g Dateiname
    Die Datei Dateiname existiert und das SGID-Bit ist gesetzt
-k Dateiname
    Die Datei Dateiname existiert und das Sticky-Bit ist gesetzt
-u Dateiname
    Die Datei Dateiname existiert und das SUID-Bit ist gesetzt
-p Dateiname
    Die Datei Dateiname existiert und ist ein Named Pipe
-e Dateiname
    Die Datei Dateiname existiert
-f Dateiname
    Die Datei Dateiname existiert und ist eine reguläre Datei
-L Dateiname
    Die Datei Dateiname existiert und ist ein symbolischer Link
-S Dateiname
    Die Datei Dateiname existiert und ist ein Socket
-O Dateiname
    Die Datei Dateiname existiert und ist Eigentum des Anwenders, unter dessen UID das test-Programm gerade läuft
-G Dateiname
    Die Datei Dateiname existiert und gehört zu der Gruppe, zu der der User gehört, unter dessen UID das test-Programm gerade läuft
Datei1 -nt Datei2

selaw2
netstat - gutes Netz-Monitoring-Tool

#!/bin/bash
A=`netstat -an  | grep 8081`
while true
 do sleep 60
        if [ `netstat -an  | grep 8081 | wc -l` -gt 1 ]
        then date >> bla; echo $A >> bla
        else echo "OK"
        fi
 done

------------

Hier wird in die Datei "bla" reingeschrieben, sobald jemand im Browser über den Port 8081 eine (ihre) Adresse geöffnet hat.

selaw2
who - ein kleines Skript - prüft, ob noch jemand am Rechner ist

#!/bin/bash
while true
do sleep 10
   if [ `who | grep -v tty1 | wc -l` -ge 1 ]
   then cd /var/lib/motion/; who  > jemand_ist_am_rechner; date >> jemand_ist_am_rechner
   else echo ok
   fi
done

 

Pages