{"id":7099,"date":"2021-12-24T21:09:47","date_gmt":"2021-12-24T19:09:47","guid":{"rendered":"https:\/\/u-labs.de\/portal\/?p=7099"},"modified":"2026-01-10T20:37:12","modified_gmt":"2026-01-10T19:37:12","slug":"neue-festplatte-partitionieren-und-formatieren-unter-ubuntu-server","status":"publish","type":"post","link":"https:\/\/u-labs.de\/portal\/neue-festplatte-partitionieren-und-formatieren-unter-ubuntu-server\/","title":{"rendered":"Neue Festplatte partitionieren und formatieren unter Ubuntu Server"},"content":{"rendered":"<p>Wird eine neue Festplatte an einen Ubuntu-Server angeschlossen, muss zun\u00e4chst eine neue Partition angelegt und die Festplatte mit einem Dateisystem (meist Ext4) formatiert werden. Bei eingebauten und somit dauerhaft genutzten Festplatten ist au\u00dferdem ein Eintrag in der <strong>\/etc\/fstab<\/strong> sinnvoll, sodass diese bei zuk\u00fcnftigen Starts automatisch gemountet wird.<\/p>\n<h2 class=\"wp-block-heading\">1. Ermitteln des Devices<\/h2>\n<p>Zun\u00e4chst m\u00fcssen wir das Device unserer neuen Festplatte ermitteln. Es gibt mehrere Wege hierzu, einer ist <strong>lsblk<\/strong>. Mit dem Schalter <strong>-e7<\/strong> verstecken wir <em>Loop Devices<\/em>. Dies sind virtuelle Devices, die zum mounten von Images angelegt werden und kommen beispielsweise bei Snaps zum Einsatz. Je mehr Snap-Pakete man installiert, um so un\u00fcbersichtlicher wird die Liste ohne den Filter.<\/p>\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\" data-line=\"\">$ sudo lsblk -e7\nNAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT\nsda      8:0    0   477G  0 disk\n\u251c\u2500sda1   8:1    0     1M  0 part\n\u251c\u2500sda2   8:2    0     2G  0 part \/boot\n\u2514\u2500sda3   8:3    0   475G  0 part \/\nsdb      8:16   0 465.8G  0 disk\nsr0     11:0    1  1024M  0 rom<\/code><\/pre>\n<p>Ein Indiz f\u00fcr die neue Platte ist, dass diese noch nirgendwo eingehangen ist. Je nach Konstellation kann auch die Gr\u00f6\u00dfe ud der Buchstabe herangezogen werden. Linux benennt die Ger\u00e4te dem Alphabet nach von sda an, sodass in diesem Beispiel <strong>sdb<\/strong> die neue Platte ist.<\/p>\n<p>Falls Unsicherheit besteht, k\u00f6nnen auch mit <strong>lshw<\/strong> alle Laufwerke aufgelistet werden:<\/p>\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\" data-line=\"\">$ sudo lshw -class disk -short | grep HGST\n\/0\/a1\/0.0.0          \/dev\/sdb         disk           500GB HGST HTS545050A7<\/code><\/pre>\n<h2 class=\"wp-block-heading\">2. Partition erstellen<\/h2>\n<p>Nun k\u00f6nnen wir mindestens eine Partition erstellen. Selbstverst\u00e4ndlich ist es auch m\u00f6glich, abh\u00e4ngig vom Anwendungsfall mehrere Partition anzulegen. In diesem Beispiel werden wir es bei einer belassen. Wie so oft l\u00e4sst Linux einem hier die Freie wahl, welches Werkzeug man benutzen m\u00f6chte. Eine gute Wahl ist <strong>parted<\/strong>, es befindet sich in einer Standard Ubuntu-Server Installation zudem bereits an Board. Als Argument \u00fcbergeben wir das soeben ermittelte Device:<\/p>\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\" data-line=\"\">$ sudo parted \/dev\/sdb<\/code><\/pre>\n<p>Mit dem Befehl <strong>print<\/strong> k\u00f6nnen wir uns die bereits existerende Partitionstabelle zusammen mit Infos \u00fcber das Laufwerk anzeigen lassen:<\/p>\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\" data-line=\"\">(parted) print\nModel: ATA HGST HTS545050A7 (scsi)\nDisk \/dev\/sdb: 500GB\nSector size (logical\/physical): 512B\/4096B\nPartition Table: msdos\nDisk Flags:\n\nNumber  Start   End    Size   Type     File system  Flags\n 1      1049kB  500GB  500GB  primary  ext4<\/code><\/pre>\n<p>Dies dient nochmals als Verifikation, die richtige Festplatte ausgew\u00e4hlt zu haben. Existieren bereits Partitionen die wir l\u00f6schen m\u00f6chten, k\u00f6nnen wir dies mit <strong>rm &lt;number&gt;<\/strong> erledigen. Wobei <strong>&lt;number&gt;<\/strong> die Partitionsnummer am Anfang der Tabelle ist. Rufen wir anschlie\u00dfend erneut <strong>print<\/strong> auf, ist die Partitionstabelle leer:<\/p>\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\" data-line=\"\">(parted) rm 1\n(parted) print\nModel: ATA HGST HTS545050A7 (scsi)\nDisk \/dev\/sdb: 500GB\nSector size (logical\/physical): 512B\/4096B\nPartition Table: msdos\nDisk Flags:\n\nNumber  Start  End  Size  Type  File system  Flag<\/code><\/pre>\n<p>Auf der leeren Platte legen wir eine neue Partitionstabelle an:<\/p>\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\" data-line=\"\">(parted) mklabel gpt\nWarning: The existing disk label on \/dev\/sdb will be destroyed and all data on this disk will be lost. Do you want to continue?\nYes\/No? Yes<\/code><\/pre>\n<p>Und nun eine Partition:<\/p>\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\" data-line=\"\">(parted) mkpart primary ext4 1MB 500GB<\/code><\/pre>\n<p>Der Befehl schl\u00fcsselt sich wie folgt auf: Es soll eine Partition mit der Bezeichnung <em>primary<\/em> und dem Dateisystem ext4 werden. Andere Dateisysteme wie der Vorg\u00e4nger ext3 sind nat\u00fcrlich ebenfalls m\u00f6glich. Die Startgr\u00f6\u00dfe liegt bei 1MB, der letzte Parameter gibt die Gesamtgr\u00f6\u00dfe an. Hier sollen also die gesamten 500GB des Laufwerkes in einer Partition zur Verf\u00fcgung gestellt werden.<\/p>\n<p>Nun sind wir mit der Partitionierung fertig und k\u00f6nnen parted mit <strong>quit<\/strong> und Enter verlassen.<\/p>\n<h2 class=\"wp-block-heading\">3. Dateisystem anlegen<\/h2>\n<p>Dies geschieht mit dem Befehl mkfs.* wobei * f\u00fcr das gew\u00fcnschte Dateisystem (hier ext4) steht:<\/p>\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\" data-line=\"\">$ sudo mkfs.ext4 \/dev\/sdb1<\/code><\/pre>\n<p>Hier best\u00e4tigen wir mit y und Enter.<\/p>\n<p><strong>Hinweis<\/strong>: Nach dem Anlegen eines Ext4-Dateisystemes m\u00fcssten die Inode-Tabellen erzeugt werden. Dies l\u00e4uft standardm\u00e4\u00dfig im Hintergrund und kann &#8211; je nach Kapazit\u00e4t &#8211; <strong>f\u00fcr einige Zeit eine Auslastung verursachen<\/strong>. \r\n<a href=\"https:\/\/u-labs.de\/forum\/raspberry-pi-266\/usb-festplatte-led-zeigt-schreiben-am-raspberry-pi-obwohl-sie-nichts-zu-schreiben-hat-40684?p=445621&amp;viewfull=1#post445621\"><strong>Weitere Informationen und wie du dies umgehen kannst, findest du in diesem Beitrag.<\/strong><\/a><\/p>\n<h2 class=\"wp-block-heading\">4. Partition einh\u00e4ngen<\/h2>\n<p>Damit wir die Partition auch nutzen k\u00f6nnen, muss sie zun\u00e4chst eingehangen werden. Dies ist \u00fcber das <strong>mount<\/strong> Werkzeug m\u00f6glich:<\/p>\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\" data-line=\"\">sudo mkdir \/static-data\nsudo mount \/dev\/sdb1 \/static-data\/\nls -lh \/static-data\/\ntotal 16K\ndrwx------ 2 root root 16K Feb 15 21:13 lost+found<\/code><\/pre>\n<p>Allerdings ist das Mounten dadurch nicht persistent. Damit die Partition automatisch beim Starten gemounted wird, legen wir noch einen Eintrag in der Datei <strong>\/etc\/fstab<\/strong> an. Als Device kann man <strong>\/dev\/sdb1<\/strong> angeben. Allerdings ist dieser Device-Pfad nicht fix. Er kann sich beispielsweise \u00e4ndern, wenn das Laufwerk getrennt und stattdessen ein anderes angeschlossen wird. Dann ist dessen erste Partition in <strong>\/dev\/sdb1<\/strong> eingeh\u00e4ngt und die Patte, die wir dort erwarten, in <strong>\/dev\/sdc1<\/strong>. <\/p>\n<p>Daher ist die Verwendung einer der Id-Pfade zu empfehlen. Ich bevorzuge <strong>\/dev\/disk\/by-id<\/strong> da wir hier einen sprechenden Pfad erhalten, der Hersteller und Modell der Festplatte beinhaltet. So f\u00e4llt die Zuordnung leichter als bei einer zuf\u00e4llig generierten Id wie unter <strong>\/dev\/disk\/by-uuid<\/strong>. In by-id k\u00f6nnen wir nach der Partition <strong>sdb1<\/strong> filtern:<\/p>\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\" data-line=\"\">$ ls -lh \/dev\/disk\/by-id\/ | grep sdb1\nlrwxrwxrwx 1 root root 10 Feb 15 21:13 scsi-35000cca863e15f2e-part1 -&gt; ..\/..\/sdb1\nlrwxrwxrwx 1 root root 10 Feb 15 21:13 scsi-SATA_HGST_HTS545050A7_RBG55A1N2BDU4P-part1 -&gt; ..\/..\/sdb1\nlrwxrwxrwx 1 root root 10 Feb 15 21:13 wwn-0x5000cca863e15f2e-part1 -&gt; ..\/..\/sdb1<\/code><\/pre>\n<p>Hier stehen uns drei M\u00f6glichkeiten zur Auswahl, ich w\u00fcrde den sprechendsten <strong>scsi-SATA_HGST_HTS545050A7_RBG55A1N2BDU4P-part1<\/strong> verwenden. Unser Laufwerkspfad lautet daher <strong>\/dev\/disk\/by-id\/scsi-SATA_HGST_HTS545050A7_RBG55A1N2BDU4P-part1<\/strong>.<\/p>\n<p>In der Datei <strong>\/etc\/fstab<\/strong> f\u00fcgen wir folgende Zeile ein:<\/p>\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\" data-line=\"\">\/dev\/disk\/by-id\/scsi-SATA_HGST_HTS545050A7_RBG55A1N2BDU4P-part1 \/static-data ext4 defaults 0 0<\/code><\/pre>\n<p>Der erste Pfad gibt das Ger\u00e4t an, es folgt der Einh\u00e4ngepunkt <strong>\/static-data<\/strong>. \u00dcber ihn kann auf die Partition zugegriffen werden. Das Dateisystem lautet <strong>ext4<\/strong>. Anschlie\u00dfend \u00fcbergeben wir Standardparameter, die in den meisten F\u00e4llen ausreichen. Darunter z\u00e4hlt z.B. das wir Schreibrechte erhalten. <\/p>\n<h3 class=\"wp-block-heading\">4.1 \/etc\/fstab testen<\/h3>\n<p>Da die Datei beim Systemstart geladen wird, m\u00f6chte ich sie gerne vorher testen. Falls die Partition bereits h\u00e4ndisch via <strong>mount<\/strong> gemountet wurde, m\u00fcssen wir sie zuerst wieder entmounten:<\/p>\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\" data-line=\"\">$ sudo umount \/static-data<\/code><\/pre>\n<p>Nach dem Speichern von <strong>\/etc\/fstab<\/strong> k\u00f6nnen wir die Datei mit <strong>mount -a<\/strong> neu laden und damit auch gleich unsere neue Partition einh\u00e4ngen. Der schaltet <strong>-a<\/strong> mountet alle Dateisysteme aus der fstab Datei, w\u00e4hrend <strong>-v<\/strong> den verbose Mode aktiviert. Dieser liefert detailliertere Informationen, was das Tool macht: <\/p>\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\" data-line=\"\">$ sudo mount -av\n\/                        : ignored\n\/boot                    : already mounted\nnone                     : ignored\n\/static-data             : successfully mounted<\/code><\/pre>\n<p>Die vom Start bereits eingeh\u00e4ngten Dateisysteme wurden ignoriert, unsere neue Partition <strong>\/static-data<\/strong> konnte erfolgreich eingeh\u00e4ngt werden. Sinnvoll ist noch das setzen des Eigent\u00fcmers auf den Nutzer, mit dem ihr dort Daten schreiben m\u00f6chtet:<\/p>\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\" data-line=\"\">sudo chown benutzer:gruppe -R \/static-data<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Wird eine neue Festplatte an einen Ubuntu-Server angeschlossen, muss zun\u00e4chst eine neue Partition angelegt und die Festplatte mit einem Dateisystem (meist Ext4) formatiert werden. Bei eingebauten und somit dauerhaft genutzten Festplatten ist au\u00dferdem ein Eintrag in der \/etc\/fstab sinnvoll, sodass diese bei zuk\u00fcnftigen Starts automatisch gemountet wird. 1. Ermitteln des Devices Zun\u00e4chst m\u00fcssen wir das &#8230;<\/p>\n","protected":false},"author":5,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[74],"tags":[141,1001,392],"class_list":["post-7099","post","type-post","status-publish","format-standard","hentry","category-linux","tag-festplatte","tag-speicher","tag-ubuntu"],"_links":{"self":[{"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/posts\/7099","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/comments?post=7099"}],"version-history":[{"count":6,"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/posts\/7099\/revisions"}],"predecessor-version":[{"id":16128,"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/posts\/7099\/revisions\/16128"}],"wp:attachment":[{"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/media?parent=7099"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/categories?post=7099"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/tags?post=7099"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}