Kommandozeile Archives - Technik - Blogbasis.net https://technik.blogbasis.net/tag/kommandozeile Die Basis des freien Wissens – Technik Thu, 16 Oct 2014 11:26:45 +0000 de hourly 1 https://wordpress.org/?v=6.8.1 Eine VirtualBox auf einem Linux-Host von einem USB-Booten https://technik.blogbasis.net/eine-virtualbox-auf-einem-linux-host-von-einem-usb-booten-15-10-2014 https://technik.blogbasis.net/eine-virtualbox-auf-einem-linux-host-von-einem-usb-booten-15-10-2014#respond Wed, 15 Oct 2014 21:19:24 +0000 http://technik.blogbasis.net/?p=1215 Manchmal hat man die Situation, dass man ein Boot-Medium (USB-Stick) erstellt hat, dieses aber noch testen möchte. Dafür kann man natürlich seinen Computer neustarten, muss man aber nicht: Man kann auch einfach eine Virtuelle Maschine von diesem  USB-Stick starten.

Ich gehe in dieser Anleitung davon aus, dass VirtualBox installiert ist.

Vorbereitung

Als Erstes steckt man einfach den entsprechenden USB-Stick rein und kann dann z.B. mit dem Befehl dmesg schauen wie es heißt, bei mir heißt der Stick zum Beispiel sdc (oft heißt er auch sdb), also kommt am Ende von der dmeseg-Ausgabe etwa sowas raus:

 [sdc] Attached SCSI removable disk 
 

Jetzt kann man den USB-Stick seinem Benutzer zuweisen.

sudo chown  [dein Benutzername] /dev/sdc

Jetzt kann man den USB-Stick zu einem Virtual Disk Image (.vmdk) machen

$ VBoxManage internalcommands createrawvmdk -filename /tmp/test-usb.vmdk -rawdisk /dev/sdc

RAW host disk access VMDK file /tmp/test-usb.vmdk created successfully.
#die .vdi für den USB-Stick liegt jetzt in /tmp

Jetzt hat man alles Vorbereitet und kann die VM erstellen.

Die VM erstellen

Die VM kann man am einfachsten mit rum klicken erstellen.

Man öffnet den Virtual Box Manager und erstellt eine neue Maschine:

1

Auf Neu klicken

Danach macht man optimaler Weise Einstellungen, über das erwartete System, bei den anderen Optionen kann man die Standardeinstellungen übernehmen. Als Festplatte muss man dann natürlich sein in den vorigen Schritten erstelltes .vmdk im /tmp auswählen. Dann nur noch erstellen und es solte funktionieren.

Das richtige Logo auswählen, bei mir Arch

Das richtige Logo auswählen, bei mir Arch

Egal, weiterklicken

Egal, weiterklicken

/tmp/test-usb,vmdk auswählen

/tmp/test-usb,vmdk auswählen

Freuen, es funktioniert

Freuen, es funktioniert

 

 

 

 

 

]]>
https://technik.blogbasis.net/eine-virtualbox-auf-einem-linux-host-von-einem-usb-booten-15-10-2014/feed 0
Mit script & netcat Shellausgaben teilen https://technik.blogbasis.net/mit-script-netcat-shellausgaben-teilen-07-10-2014 https://technik.blogbasis.net/mit-script-netcat-shellausgaben-teilen-07-10-2014#respond Tue, 07 Oct 2014 18:38:23 +0000 http://technik.blogbasis.net/?p=1206 In diesem Blogpost möchte ich ein einfaches Kommandozeilen-Setup vorstellen, mit dem ihr eure Shellausgaben live übertragen könnt. Wir werden dabei nur die Standard-Tools: mkfifo, script, bash & netcat werden.

Die Tools

Das Programm „script“

Script ist ein kleines Programm, welches eine Subshell spawnt, in der es alle graphischen Ein- bzw. Ausgaben in eine Datei oder ein Fifo schreibt. Dabei werden alle Kontrollsequenzen mitgeschrieben, sodass keine Informationen verloren gehen. Das ist u.a. nützlich, wenn man seine Aktionen auf der Kommandozeile protokollieren möchte.

Das Programm „netcat“

Netcat ist ein weiteres Tool, mit dem man Server-Dienste ansprechen bzw. selbst bereitstellen kann.

Das Setup

Wir unterscheiden das Setup in Server (Anbieter der Shell) und Client (Zuschauer).

Der Server

Auf dem System, auf dem die Shell geteilt werden soll, führen wir folgende drei Befehle aus:

mkfifo /tmp/sharedshell

Damit erstellen wir eine spezielle Datei, welche sich wie eine First-In-First-Out (FIFO) Pipe verhält.

while true; do cat /tmp/sharedshell | nc -l -p 8088; done &

Mit diesem Befehl lesen wir aus unserem FIFO-File und schicken die Ausgabe an einen Socket auf Port 8088. Jetzt müssen wir nur noch in unsere FIFO-Datei Daten reinschreiben:

script -f /tmp/sharedshell

Das startet eine Subshell und schreibt alle Ein-/Ausgaben in die FIFO-Datei. Möchte man temporär eine andere Shell nutzen, so führt man folgendes Kommando aus:

SHELL=/usr/bin/bash script -f /tmp/sharedshell

Der Client

Unter der Voraussetzung, das der beim Netcat angegebene Port von außen erreichbar ist, kann sich der Zuschauer einfach verbinden:

nc IP PORT
  • IP : IP des Hosts
  • PORT: Port auf dem netcat lauscht (hier: 8088)

Ist die Verbindung hergestellt, so werden die Ein- bzw. Ausgaben des Servers dargestellt. Leider kann Netcat maximal eine Verbindung gleichzeitig annehmen, sodass die Anzahl der Zuschauer auf 1 begrenzt ist. Für kurze Screen-Übermittlungen sollte das jedoch ausreichen.

~ Sebastian

]]>
https://technik.blogbasis.net/mit-script-netcat-shellausgaben-teilen-07-10-2014/feed 0
Truecrypt – Komplette Partition mit NTFS verschlüsseln https://technik.blogbasis.net/truecrypt-komplette-partition-mit-ntfs-verschluesseln-10-09-2013 https://technik.blogbasis.net/truecrypt-komplette-partition-mit-ntfs-verschluesseln-10-09-2013#respond Tue, 10 Sep 2013 19:22:03 +0000 http://technik.blogbasis.net/?p=864 Gestern kam meine neue externe Festplatte an, welche ich sofort mit Truecrypt verschlüsseln wollte. Die GUI-Version von Truecrypt bietet einem unter Linux nicht die Möglichkeit, das Volume mit NTFS zu formatieren. Die CLI-Version musste herhalten. Wie man sich dabei eine Menge Zeit sparen kann, möchte ich kurz festhalten.

Vorbereitung

Hier lernt man außerdem: Nicht einfach Befehle kopieren, sondern die Man-Pages zu den Programmen lesen!

Zunächst hatte ich mit Gparted die Festplatte in zwei Partitionen aufgeteilt:

  • 150 MB – unverschlüsselt, um Truecrypt portable bzw. den Installer abzulegen.
  • 1,8 TB – diese wird gleich verschlüsselt.

Nachdem man die Platte an den Rechner angeschlossen hat, möchte man erstmal herausfinden, welche Partition überhaupt verschlüsselt werden soll. Die Ausgabe der folgenden Befehle sollte Klarheit schaffen:

gehaxelt@LagTop ~ % ls /dev/sd*
brw-rw---- 1 root disk 8,  0 10. Sep 20:03 /dev/sda
brw-rw---- 1 root disk 8,  1 10. Sep 20:01 /dev/sda1
brw-rw---- 1 root disk 8, 16 10. Sep 20:03 /dev/sdb
brw-rw---- 1 root disk 8, 17 10. Sep 20:01 /dev/sdb1
brw-rw---- 1 root disk 8, 18 10. Sep 20:01 /dev/sdb2
brw-rw---- 1 root disk 8, 32 10. Sep 20:03 /dev/sdc
brw-rw---- 1 root disk 8, 33 10. Sep 20:02 /dev/sdc1
brw-rw---- 1 root disk 8, 34 10. Sep 20:03 /dev/sdc2
brw-rw---- 1 root disk 8, 48 10. Sep 20:14 /dev/sdd
brw-rw---- 1 root disk 8, 49 10. Sep 20:14 /dev/sdd1
brw-rw---- 1 root disk 8, 50 10. Sep 20:14 /dev/sdd2

gehaxelt@LagTop ~ % cat /proc/partitions  
major minor  #blocks  name

   8        0  976762584 sda
   8        1  976760832 sda1
   8       16  125034840 sdb
   8       17     131072 sdb1
   8       18  124902400 sdb2
 254        0  124900352 dm-0
 254        1  976758784 dm-1
   8       32 1953512448 sdc
   8       33 1953357824 sdc1
   8       34     153600 sdc2
 254        2 1953357568 dm-2
 254        3 1953357568 dm-3
   8       48 1953514584 sdd
   8       49 1953410048 sdd1
   8       50     101376 sdd2
 254        4 1953409792 dm-4

Der erste Befehl listet uns alle angeschlossenen Festplatten bzw. Partitionen. Der zweite Befehl zeigt uns die jeweiligen Größen, sodass eine Zuordnung zu den Geräten möglich wird.

In dem Fall weiß ich, dass sdc bzw. sdd meine beiden externen Festplatten sind, und da ich die neue zuerst angesteckt habe, ist es sdc1 die Partition, welche verschlüsselt werden möchte.

Das Truecrypt-Volume erstellen

Die Festplatte ist noch neu, und dort befinden sich keine Daten drauf, sodass wir Truecrypt mit der zusätzlichen Option „–quick“ aufrufen, um die Dauer der Verschlüsselung um 14 Stunden zu verkürzen ;)

sudo truecrypt --volume-type=normal -c /dev/.sdc1 --quick

Euch werden einige Fragen gestellt:

  • Verschlüsselungart: AES-Twofish sollte reichen ;)
  • Filesystem: None, da wir es später selbst formatieren werden.

Die anderen Fragen könnt ihr nach eurem Belieben beantworten.

Die Erstellung des Truecrypt-Volumes sollte sehr schnell geschehen, sodass man gleich mit dem nächsten Schritt weitermachen kann. Wir mounten das neu erstellte Truecrypt-Volume:

sudo truecrypt --filesystem=none --slot=1 /dev/.sdc1

Als nächstes können wir mit „mkfs“ das Dateisystem erstellen. Gegebenenfalls muss davor das Paket „ntfs-3g“ installiert werden.

mkfs.ntfs -f /dev/mapper/truecrypt1

Die Option „-f“ (fast) erspart uns wieder sehr viel Wartezeit bzw. einen Freeze des Laptops, sodass wir mit der Einrichtung schon fertig sind.

Zum Testen lässt sich die formatierte Partition noch mounten, um erste Daten darauf zu kopieren.

sudo mount /dev/mapper/truecrypt1 /media/truecrypt

Wenn man soweit fertig ist, dann kann man das Truecrypt-Volume auswerfen:

truecrypt -d /dev/.sdc1

Fazit

Wenn eine GUI nicht immer alle Optionen zur Verfügung stellt, ist das immer noch kein Grund zur Verzweiflung. Oft kann die Kommandozeilenversion des Programms mehr, bzw. man kann sich mit weiteren Programmen behelfen.

~ Sebastian

 

]]>
https://technik.blogbasis.net/truecrypt-komplette-partition-mit-ntfs-verschluesseln-10-09-2013/feed 0