Schlagwort-Archive: Terminal

Festplatten formatieren & partitionieren

Zwar kann jedes aktuelle Betriebssystem eine grafische Oberfläche zum Bearbeiten von HDD/SDD-Inhalten bieten, doch nicht immer erzielen diese das gewünschte Ergebnis, z.B.

„The driver descriptor says the physical block size is 2048 bytes, but Linux says it is 512 bytes.“ (gnome-disk-utility).

Um nun eine fehlgeschlagene Partitionierung zu berichtigen oder generell auszuführen, bietet sich das Terminal an.

Der MBR (Master Boot Record) wird mittels

$ dd if=/dev/zero of=/dev/hdX bs=512 count=1

überschrieben.

Zur manuellen Partitionierung bietet sich die Anleitung unter hecticgeek.com an.

Schritt 1: Auflisten der vorhandenen Platten/Partitionen:

$ sudo fdisk -l

Schritt 2: Platte formatieren; wichtig dabei, den richtigen Pfad anzugeben, da alle dortigen Daten unwiderbringlich gelöscht werden

$ sudo fdisk /dev/sdX

Mit `p` werden die vorhandenen Partitionen gelistet, mit `d` wird entfernt. Nach Abschluss einer Aktion wird stets ein neues Kommando angefordert. `t` selektiert den Partitionstyp (FAT, NTFS, ext4, ..), 86 wählt NTFS. Mit `w` werden die Aktionen ausgeführt und auf die Hardware geschrieben.

Eine weitere Möglichkeit wäre das Ausführen von `sudo mkfs -t nfts -f -L your_label_here /dev/sdX1`, was die Partition sdX1 mit dem Dateisystem NTFS formatiert.

Weitere Anregungen finden sich auf how-to.wikia.com.

Festplatten-Backups per dd

$ sudo dd if=/dev/sda of=~/sda.img bs=1M status=progress

Dadurch wird von der kompletten Disk sda ein Image nach /home/<USER>/sda.img geschrieben. Der Parameter bs bestimmt die Blockgröße, Standard sind 512 Bytes – die Angabe von 1M beschleunigt den Kopiervorgabe doch erheblich.

Ein Zurückspielen des Abbildes funktioniert mit:

$ sudo dd=~/sda.img of=/dev/sda bs=1M

Weitere Details sind unter ubuntuusers.de zu finden.

txt2pdf

Angelehnt an meinen letzten Post hier ein Script zum Konvertieren einer Textdatei zu PDF bei Benutzung des Terminals.

#!/bin/bash

# convert txt to pdf
#
# usage: txt2pdf FileWithoutExt
#
# sudo apt install enscript ps2pdf

FILE="$1"

enscript $FILE.txt -o - | ps2pdf - $FILE.pdf

Dieses Skript unter /usr/bin/txt2pdf speichern und die Rechte entsprechend setzen (sudo chmod 755 /usr/bin/txt2pdf). Nun entsteht mittels

$ txt2pdf datei

aus datei.txt datei.pdf.

PowerTOP unter Debian

PowerTOP ist ein Linux-Werkzeug zur Diagnose und Optimierung des Stromverbrauchs. Es wurde 2007 von Intel veröffentlicht und eignet sich vor Allem beim Einsatz auf Laptops. Die Installation erfolgt per Paketmanager:

sudo apt install powertop

Da PowerTOP auf Hardware-Informationen zugreift, muss es als Root gestartet werden

sudo powertop

Nach dem Start sieht die Oberfläche ähnlich aus: 

Weitere Informationen bei Wikipedia und Fedora Magazine.

Standard-Editor in Midnight-Commander einstellen

Nach dem erstmaligen Bearbeiten einer Datei unter Midnight Commander `mc`muss der Standard-Editor gewählt werden.

Select an editor.  To change later, run 'select-editor'.
  1. /bin/ed
  2. /bin/nano        <---- easiest
  3. /usr/bin/mcedit
  4. /usr/bin/vim.gtk
  5. /usr/bin/vim.tiny

Choose 1-5 [2]:

Die Auswahlliste enthält alle terminalbasierenden Texteditoren, die auf dem System vorhanden sind. Hier wären das `GNU Ed – The GNU line editor` (1), `nano – Nano’s ANOther editor, an enhanced free Pico clone` (2), `mcedit – Internal file editor of GNU Midnight Commander` (3) und `vim – Vi IMproved, a programmers text editor` (4, 5).

Nach Eingabe einer Ziffer (optional) und dem Betätigen der Enter-Taste wird die Datei im gewählten Editor geöffnet. Diese Auswahl muss nur einmalig bestätigt werden. Beim nächsten Bearbeiten innerhalb von MC wird die Datei sofort geöffnet.

Suche mit find & grep

find dient der Suche nach Dateien bzw. Verzeichnissen.

Mit folgendem Befehl bekomme ich alle Verzeichnisse, die FooBar heissen (Großschreibung beachten!):

$ find $HOME -name FooBar -type d

Wöllte ich das Verzeichnis unabhängig von Groß-/Kleinschreibung, müsste ich schreiben:

$ find $HOME -name [Ff]oo[Bb]ar -type d

Folgender Befehl listet alle Dateien und Verzeichnisse im Home-Directory, die mit foobar beginnen:

 $ find $HOME -name "foobar*" -ls

Edit 22.10.2017: Um Dateien zu  finden, die innerhalb der letzten 24 Stunden heruntergeladen wurden und diese zu verschieben folgenden Befehl verwenden:

find ~/Downloads/ -mtime 0 -type f -exec mv '{}' ~/Dokumente/today/ \;

grep hingegen dient der Suche nach Dateiinhalten.

Midnight Commander Color Scheme

Ein dunkles Farbschema empfinde ich als wesentlich angenehmer. Daher hier ein kurzes HowTo, wie ich das Standard-Theme des MC  ersetzt habe.

  1. close mc
  2. Download von darkened.ini nach ~/.local/share/mc/skins/
  3. Anpassen von ~/.config/mc/ini: skin=darkened
  4. start mc and enjoy

Hier noch einige interessante Links, die mir weitergeholfen hatten:

  • https://sinustrom.info/2014/03/23/midnight-commander-dark-color-scheme/
  • http://www.zagura.com/index.php/2008/01/09/midnight-commander-color-themes/
  • https://www.midnight-commander.org/wiki/doc/common/skins

Reset deleted file from git-index

Die Datei test.txt ist neu erstellt und wird dem git-index (staging area) hinzugefügt:

$ git add test.txt

Warum auch immer wird diese Datei gelöscht:

$ rm test.txt

Ein manuelles Entfernen der Datei test.txt aus der Staging-Area mittels dem bei „git status“ vorgeschlagenem „git reset“ schlägt fehl: „unknown revision or path not in the working tree.“ Es hilft „git remove“:

$ git rm --cached test.txt

$PATH-Variable unter Mac OS X verändern

Es ist nötig, die Komponenten eines SDK (Software Development Kit) zum $PATH unter Mac OS X 10.7 hinzuzufügen.

Was ist die $PATH-Variable? $PATH ist eine Umgebungsvariable des Betriebssystems (gibt es unter Linux, OS X und Windows). Dabei enthält $PATH eine Auflistung von Verzeichnissen, die ausführbare Dateien enthalten; unter OS X durch „:“ (Doppelpunkt) getrennt.

Um den aktuellen Wert dieser Systemvariable auszulesen, genügt folgender Einzeiler im Terminal:

$ echo $PATH

Das Ergebnis sieht in etwa so aus:

/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin

Um nun diese Variable zu bearbeiten, ist es (meines Erachtens) am einfachsten, die Datei ~/.bash_profile zu modifizieren (oder $HOME/.bash_profile). Dazu mit dem bevorzugten Editor diese Datei öffnen, z.B.

$ nano ~/.bash_profile

und die Umgebungsvariable $PATH per export-Kommando ergänzen (in neuer Zeile einfügen):

export PATH=$PATH:/new/dir/location1

Dabei wird der bestehende Pfad um das Verzeichnis „/new/dir/location1“ erweitert. Um nach dem Speichern der Datei den neuen „Pfad“ nutzen zu können, muss entweder ein neues Terminal geöffnet werden oder um das aktuelle Terminal weiter zu benutzen, folgendes Kommando absetzen:

$ . $HOME/.bash_profile

Dadurch wird die geänderte Bash-Konfiguration eingelesen und somit die Einstellungen aktualisiert. Zum prüfen wieder ein

$ echo $PATH

Die Ausgabe sollte nun den aktualisierten Wert enthalten:

/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/new/dir/location1