Einrichtung der Festplatte im Banana Pi Mini-NAS

Im Artikel Aufbau des Banana Pi Mini-NAS habe ich beschrieben, aus welchen Teilen und wie die Hardware des Systems zusammengesetzt wird. An dieser Stelle beschreibe ich nun, wie man die Festplatte des Systems so einrichtet, dass sie genutzt werden kann.

Voraussetzungen

Ich gehe davon aus, dass alles angeschlossen ist, und als Betriebssystem Bananian Linux verwendet und als root gearbeitet wird. Der Nutzer root hat im Bananian Linux standardmäßig das Passwort pi, welches natürlich geändert werden sollte.
Das Kommando bananian-config sollte auch schon gelaufen und das System somit konfiguriert sein. Es wäre auch kein Fehler, wenn die Pakete mit apt-get update und apt-get upgrade auf dem aktuellsten Stand wären.


bananian-config
apt-get update
apt-get upgrade

Prüfen ob die Festplatte richtig angeschlossen ist

Über das folgende Kommando sieht man, welche Platten im System erkannt werden:

fdisk -l

Die Ausgabe sieht in etwa so aus:

Disk /dev/sda: 750.2 GB, 750156374016 bytes
255 heads, 63 sectors/track, 91201 cylinders, total 1465149168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000

Disk /dev/sda doesn't contain a valid partition table

# Hier stehen jetzt noch die Daten für die SD-Card, aber die können wir ignorieren.


Wenn die Festplatte fabrikneu ist, dann meldet fdisk: Disk /dev/sda doesn't contain a valid partition table (Zeile 8). So soll es sein. Gleichzeitig sieht man hier, dass /dev/sda die Platte ist, die wir suchen.

Partition anlegen

Jetzt legen wir eine Partition auf der Platte an (ich verwende den kompletten Speicherplatz für eine einzige, primäre Partition):


fdisk /dev/sda

Ausgabe:

Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0x7c4bb76c.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

The device presents a logical sector size that is smaller than
the physical sector size. Aligning to a physical sector (or optimal
I/O) size boundary is recommended, or performance may be impacted.

Command (m for help):

Klick auf n legt die neue Partition an. Die Rückfragen kann man einfach mit [RETURN] beantworten, wenn man es genau so machen möchte, wie ich es gemacht habe:


Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): [RETURN]
Partition number (1-4, default 1): [RETURN]
First sector (2048-1465149167, default 2048): [RETURN]
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-1465149167, default 1465149167): [RETURN]
Using default value 1465149167

Bisher hat alles nur im Speicher stattgefunden. Jetzt müssen die Änderungen aber auf die Platte geschrieben werden. Das macht das Kommando w:


Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

Damit ist die Festplatte nur partitioniert. Jetzt braucht sie ein Dateisystem, doch zuerst prüfen wir nochmals ob alles korrekt lief.

Partitionierung prüfen

Es wird wieder das Kommando fdisk -l verwendet:


fdisk -l

Doch das Ergebnis sollte sich unterscheiden!

Disk /dev/sda: 750.2 GB, 750156374016 bytes
81 heads, 63 sectors/track, 287115 cylinders, total 1465149168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x7c4bb76c

Device Boot Start End Blocks Id System
/dev/sda1 2048 1465149167 732573560 83 Linux

# Ignorierte Daten der SD-Card...

fdisk zeigt in Zeile 9, dass die Festplatte nun eine gültige Partition enthält. Weiter zum Dateisystem.

Festplatte formatieren

Damit die Festplatte ein gültiges Dateisystem erthält, muss man die gerade angelegte Partition formatieren. Ich verwende hierfür das Dateisystem Ext4:


mkfs.ext4 /dev/sda1

Ausgabe:

mke2fs 1.42.5 (29-Jul-2012)
Dateisystem-Label=
OS-Typ: Linux
Blockgröße=4096 (log=2)
Fragmentgröße=4096 (log=2)
Stride=0 Blöcke, Stripebreite=0 Blöcke
45793280 Inodes, 183143390 Blöcke
9157169 Blöcke (5.00%) reserviert für den Superuser
Erster Datenblock=0
Maximale Dateisystem-Blöcke=0
5590 Blockgruppen
32768 Blöcke pro Gruppe, 32768 Fragmente pro Gruppe
8192 Inodes pro Gruppe
Superblock-Sicherungskopien gespeichert in den Blöcken:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,
102400000

Platz für Gruppentabellen wird angefordert: erledigt
Inode-Tabellen werden geschrieben: erledigt
Erstelle Journal (32768 Blöcke): erledigt
Schreibe Superblöcke und Dateisystem-Accountinginformationen: erledigt

mkfs.ext4 /dev/sda1 5,60s user 2,00s system 49% cpu 15,479 total

Damit ist die Festplatte jetzt partitioniert und formatiert. Jetzt muss man dem Bananian Linux nur noch sagen, wie sie verwendet werden soll. Das macht der nächste Schritt.

Einbinden der formatierten Partition

In meinem Fall möchte ich die Platte im Verzeichnis /mnt/nas zur Verfügung haben. Also wird dieses Verzeichnis zuerst erstellt:


mkdir /mnt/nas

Dann muss man die Platte in der Datei /etc/fstab anmelden, damit sie beim Systemstart direkt verwendet werden kann. Dazu muss man die Datei mit einem beliebigen Editor (z.B. vi oder nano) bearbeiten:


vi /etc/fstab

Die folgende Zeile muss in diese Datei eingefügt werden (am Ende):


/dev/sda1 /mnt/nas ext4 defaults 0 0

Dann die Datei speichern und das Programm beenden: (vi: [ESC]:wq[RETURN] / nano: Strg-O, Strg-X)

Zum Test können wir die Platte nun mounten und uns das Ergebnis ansehen:


mount -a
blkid -o list -w /dev/null

Ausgabe:

device fs_type mount point
--------------------------------------
/dev/sda1 ext4 /mnt/nas
/dev/mmcblk0p1 vfat (not mounted)
/dev/mmcblk0p2 ext4 /

Die Spalten label und UUID habe ich der Übersichtlichkeit halber hier entfernt. Zeile 3 zeigt aber, dass die Partition korrekt gemountet wurde.

Somit ist die Platte nun partitioniert, formatiert und gemountet. Damit kann sie für weitere Zwecke verwendet werden.

Weitere Artikel zum Thema

Gefällt Ihnen dieser Artikel? Sagen Sie es weiter!

Kommentare (6) Schreibe einen Kommentar

  1. Hi, erst einmal kurz vielen Dank für deine Seite.
    Aufgrund deiner Anregung habe ich mir einen Banana Pi zugelegt, um mir damit ein NAS zu bauen (Openmediavault + Seafile…).

    Eine Frage habe ich hier.
    Spielt dieser Absatz im fdisk-command keine Rolle?
    „The device presents a logical sector size that is smaller than
    the physical sector size. Aligning to a physical sector (or optimal
    I/O) size boundary is recommended, or performance may be impacted.“
    Oder ist der performance Verlust zu vernachlässigen?

    Grüße Kai

    Antworten

    • Bei mir hat alles trotz dieser Warnung funktioniert. Ich muss zugeben, dass ich sie einfach ignoriert habe. Da die kleine WD RED an dem Banana Pi allerdings auch bei weitem nicht mit voller Leistung läuft (dafür ist der Pi zu langsam), sind die Performance-Einbußen zu verkraften.

      Antworten

  2. Bei mir funktioniert es leider nicht. Ich kann die Festplatte nicht mounten. Mir wird nur jedes mal folgende Fehlermeldung ausgegeben:
    mount: wrong fs type, bad option, bad superblock on /dev/sda1,
    missing codepage or helper program, or other error

    In some cases useful info is found in syslog – try
    dmesg | tail or so.

    Antworten

Schreibe einen Kommentar

Pflichtfelder sind mit * markiert.


Bitte aus Sicherheitsgründen folgende Zahlen eingeben: *