Archiv der Kategorie: Linux

Linux

Festplatten sicher löschen

Nach heise reicht einmal überschreiben nach “tool”-Anbietern 7 bis 35 mal. Ich bin der Meinung die Kombination ausnullen, Müll drüber schreiben, den Zufall benutzen und dann Dummydaten drüber sollte selbst für Paranoide reichen.

Unter Ubuntu ein Terminal öffnen und

    1. Device “ausnullen”: dd if=dev/zero of=/dev/sd"X" bs="Fesplattencache"
    2. Device mit “Müll” füllen: dd if=<(yes $'you are dumb! ' | tr -d "\n") of=/dev/sd"X"
    3. Device mit Zufallszahlen beschreiben: dd if=/dev/urandom of=/dev/sd"X" bs="Festplattencache"
    4. Festplatte formatieren und irgendwelche und nutzlose “Nutzdaten” aufspielen … bissie Fantasie sollte man hier haben

 

 

Raspberry Pi – Arch Linux – Installation

Ziel:

Grundinstallation eines Arch-Linux-Systems auf dem Raspberry-Pi, um diesen dann zu erweitern.

Benötigt:

  • Raspberry Pi Modell B + Netzteil Micro-USB
  • SD-Card (mind. 2GB)
  • SD-Karten Slot etc. zum Schreiben des Images
  • Arch Linux Image
  • Rechner mit Linux-Derivat (oder Windows mit USB-Image-Tool – nicht betrachtet)

 

Vorgehen:

  1. Arch Linux herunterladen und entpacken
  2. Mit: dd bs=1M if=/path/to/archlinux....img of=/dev/sdX
    Image auf die SD-Karte kopieren
  3. SD-Karte nun in den Raspberry und ersten Start ausführen
  4. Einloggen (direkt oder per ssh) mit Benutzer: root und Passwort: root
  5. Arch Linux Deutsch (Sprache und Tastaturlayout) beibringen:
    echo LANG=de_DE.UTF-8 > /etc/locale.conf
    echo LC_COLLATE=C >> /etc/locale.conf
    echo KEYMAP=de-latin1 > /etc/vconsole.conf
  6. Zeitzone auf Berlin korrigieren:
    ln -s /usr/share/zoneinfo/Europe/Berlin /etc/localtime
    Sollte die Fehlermeldung kommen:
    ln: failed to create symbolic link '/etc/localtime': File exists
    ist die Datei /etc/localtime zu löschen und der Befehl zu wiederholen
  7. Möchte man den Hostnamen alarmpi ändern editiere man die Datei /etc/hostname z.B. mit nano /etc/hostname und setze bei den gewünschten Namen; hier homepage (nano beenden mit Strg-X, mit y bestätigen und /etc/hostname ersetzen lassen)
  8. Namensauflösung noch nach 7. in /etc/hosts bekannt machen: nano /etc/hostsarchlinux_etc/hosts
    Der Name direkt unter hostname sollte der gleiche sein wie in/etc/hostname . In meinem Beispiel homepage.
  9. Neustart um Einstellungen zu übernehmen: shutdown -r now
  10. Nun System aktualisieren: pacman -Syu (kann eine Weile dauern)
  11. Passwort der Benutzers root ändern (wichtig!): passwd Passwort eingeben und ein zweites Mal bestätigen
  12. Sudo noch installieren, um als Normalnutzer adminstrative Aufgaben zu erledigen: pacman -S sudo
  13. Um normalen Nutzern sudo zu erlaben in der Datei /etc/sudoers die Raute vor #%wheel ALL=(ALL) ALL entfernen und speichern.
    sudoers
  14. adduser installieren mit pacman -S adduser
  15. Neuen Benutzer hinzufügen adduser
    Als Gruppe sollte wheel stehen! Sonst Werte auf default lassen.
    adduser
  16. Verbindung als root trennen exit und schauen ob alles funktioniert.
    loginuser
  17. Jetzt ist das Grundsystem fertig. Man sollte sich jetzt ein Abbild der SD-Karte machen um diese Prozedur nicht unnötig wiederholen zu müssen (Festplattenabbild mit Linux Hausmitteln).

 

 

rsync – ubuntu

ACHTUNG!!! falsche Verzeichnisangaben (und anderes) führt zu Datenverlust!
synchronisiere Quelle “/yx/00/*” nach “/as/01/*”

ggf. sudo …

rsync -a -P /yx/00/ /as/01

-a “Archiv” macht paar Parameter auf einmal die gut sind
-P zeigt Fortschritt an

wenn es mal gefunzt haben sollte, mach ein script draus! -> Hirn ausschaltbar :mrgreen:

 

 

Bilder kleiner machen

# Programmbeginn
echo " "
ls -1 *.JPG *.jpg | while read file;
do {
horizontal=`identify -verbose $file | grep Geometry: | awk {'print $2'} |cut -d"x" -f 1`
vertikal=`identify -verbose $file | grep Geometry: | awk {'print $2'} |cut -d"x" -f 2`
convert $file -quality 50% $file
echo "Bearbeite Datei $file"
}
done
echo "getan"
exit
# Programmende

nohup – Programme so ausführen, dass sie beim Logout (ssh etc.) nicht beendet werden

Wenn ein Programm mit dem nohup-Befehl gestartet wird, so ignoriert es das HUP-Signal, was beim Ausloggen gesendet wird. Das Programm läuft weiter.

Jetzt mal an einem Server anmelden.
ssh 192.168.69.23 -l cloud

… und ein kleines Script zum testen erstellt (schreibt alle 2 Sekunden Datum und Zeit in die Datei datum.txt).

touch script.sh
nano script.sh

#!/bin/bash
while true
do
  sleep 2
  date
done >> datum.txt

Script starten und Konsole für weitere Befehle auf lassen
nohup ./script.sh &

ab jetzt wird Datum/Zeit in datum.txt geschrieben, auch wenn man sich abmeldet.

datum.txt mit cat anzeigen lassen
cat datum.txt

um das script zu stoppen, sollte man kill nutzen
kill prozessnummer

screen – Programme so ausführen, dass sie beim Logout (ssh etc.) nicht beendet werden

Screen macht es möglch mehrere Terminalfenster zu erstellen. Diese können wieder bis 10 virtuelle Konsolen enthalten. In den Konsolen können Programme gestartet werden, die nach der Lösung der Sitzung vom Terminalfenster (bzw. Logout) erhalten bleiben.

Wenn screen nicht installiert sein sollte, kann man dieses nachholen:
sudo apt-get install screen

Jetzt kann man schon screen starten:
screen

Jetzt einfach “weiterblättern”, man befindet sich schon in der screen-Sitzung! Die kann man erkennen, indem man sich einfach mal alle laufende Sitzungen mit Namen anzeigen lässt.
screen -ls

screen -ls

screen -ls

Der Name der Sitzung wurde automatisch generiert, was nicht immer angenehm ist. Den Namen kann man selbst vergeben. Also erstmal die Sitzung beenden!
[Strg] + [D]

screen beendet

screen beendet

Jetzt mal an einem Server anmelden.
ssh 192.168.69.23 -l cloud

screen3, an server anmelden

Screen starten mit Sitzungsnamen (fern1) …
screen -S fern1

… und ein kleines Script zum testen erstellt (schreibt alle 2 Sekunden Datum und Zeit in die Datei datum.txt).

touch script.sh
nano script.sh

#!/bin/bash
while true
do
  sleep 2
  date
done >> datum.txt

Script starten und Konsole für weitere Befehle auf lassen
./script.sh &

datum.txt mit cat anzeigen lassen
cat datum.txt

screen4, script datum

Vom Server trennen.
exit

screen5, exit

Wieder auf den Server drauf.
ssh 192.168.69.23 -l cloud

Sitzungen anzeigen lassen.
screen -ls

Verbindung zur Sitzung wieder aufnahemen.
screen -r fern1

screen7, wieder drauf

datum.txt mit cat anzeigen lassen
cat datum.txt

screen8, datum.txt

Alles funzt. Script killen.
kill prozessnummer

screen9, kill