Partition 1 does not start on physical sector boundary

Hardwarespezifische Dinge
AWOHille
Posts: 274
Joined: 2011-09-05 09:00

Partition 1 does not start on physical sector boundary

Post by AWOHille »

Hallo,

vor eine paar Tagen wurde eine defekt Festplatte aus einem Softraid1 (Debian6) gewechselt. Dabei hat das RZ eine neuere 4k Festplatte verbaut. Natürlich habe ich nicht sofort darauf geachtet und habe die komplette Partition von sda einfach kopiert.

Code: Select all

Disk /dev/sdb: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0xcc2eec0b

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1        1045     8393931   fd  Linux raid autodetect
Partition 1 does not start on physical sector boundary.
/dev/sdb2            1046        2351    10490445   fd  Linux raid autodetect
Partition 2 does not start on physical sector boundary.
/dev/sdb3            2352      114056   897270412+   5  Extended
Partition 3 does not start on physical sector boundary.
/dev/sdb5            2352        2594     1951866   fd  Linux raid autodetect
Partition 5 does not start on physical sector boundary.
Mal abgesehen von Performance Einbußen, gibt es evtl. noch andere Nachteile / Probleme?

Ich wollte das Problem lösen und bin folgendermaßen vorgegangen. sdb aus dem Raid gelöst, alle Partitionen gelöscht und anschließend per

Code: Select all

fdisk -c -u /dev/sdb
alle Partitionen neue anlegen. Das Problem besteht aber immer noch, da anscheinend die logische Sektor Größe immer noch 512 beträgt. Ich hatte ebenfalls versucht, die Festplatte wieder in den "Auslieferungszustand" zu bringen.

Code: Select all

dd if=/dev/zero of=/dev/sdb
Wie wäre die richtige Vorgehensweise?
User avatar
Joe User
Project Manager
Project Manager
Posts: 11178
Joined: 2003-02-27 01:00
Location: Hamburg

Re: Partition 1 does not start on physical sector boundary

Post by Joe User »

Du solltest beide Platten auf 4k bringen.
Zuerst sdb, dann darauf ein neues Softraid anlegen (nicht in das vorhandene einbinden!), formatieren und dann die Daten von sda rüberkopieren.
Anschliessend sda plätten, auf 4k bringen, ins neue Softraid aufnehmen, Sync abwarten, rebooten.

Alles aus dem Rescuesystem heraus.

Wenn Du eh schon dabei bist, solltest Du auch darüber nachdenken, ob es nicht Zeit ist auf GPT umzustellen.

Wie das Alles unter Linux gemacht wird, kann ich Dir leider nicht mitteilen, da ich seit Jahren nur noch FreeBSD einsetze und dort ist es recht simpel.
PayPal.Me/JoeUserFreeBSD Remote Installation
Wings for LifeWings for Life World Run

„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
AWOHille
Posts: 274
Joined: 2011-09-05 09:00

Re: Partition 1 does not start on physical sector boundary

Post by AWOHille »

Joe User wrote:Du solltest beide Platten auf 4k bringen.
Hier liegt das Problem, meine sda unterstützt den 4k Modus nicht. Gibt es andere Möglichkeiten? Sind eigentlich generell Probleme in der jetzigen Konstellation zu erwarten (mal abgesehen von der Performance)?
User avatar
Joe User
Project Manager
Project Manager
Posts: 11178
Joined: 2003-02-27 01:00
Location: Hamburg

Re: Partition 1 does not start on physical sector boundary

Post by Joe User »

4k geht problemlos auf 512er Platten, auch wenn es nicht in den Infoausgaben diverser Tools steht.

Beim Mischbetrieb von 4k und 512 Alignements und auch beim falsch angelegten 4k Alignement gibt es teils gravierende Permonceeinbussen, weshalb man heute generell richtig angelegtes 4k Alignement haben will.
PayPal.Me/JoeUserFreeBSD Remote Installation
Wings for LifeWings for Life World Run

„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
AWOHille
Posts: 274
Joined: 2011-09-05 09:00

Re: Partition 1 does not start on physical sector boundary

Post by AWOHille »

Joe User wrote:weshalb man heute generell richtig angelegtes 4k Alignement haben will.
Danke erst mal für deine Antwort. Mir musste die ganze Problematik im Kopf erst mal klar werden.
Ist folgende Denkweise umsetzbar bzw. richtig?

- die erste Partition würde bei Sektor 2048 (Alignment auf 1 MiB = 512Byte x 4KiB) beginnen. Die Größe der ersten Partition wird gleich der ersten Partition auf sda übernommen.
- die nächste Partition muß ja auch wieder durch 4 teilbar ohne Rest sein. Hier muß ich mit hoher Wahrscheinlichkeit einige Sektoren überspringen, damit durch 4 teilbar bzw. die Partition vergrößern.

Ist das so möglich? Kann die Festplatte anschließend so in das Raid problemlos eingebunden werden? Bei den anderen Partitionen würde ich dann äquivalent weiter verfahren.
User avatar
Joe User
Project Manager
Project Manager
Posts: 11178
Joined: 2003-02-27 01:00
Location: Hamburg

Re: Partition 1 does not start on physical sector boundary

Post by Joe User »

Ich lasse die erste Partition immer bei Sektor 4096 beginnen (8x512=4096=2MB).
Solange die Partitionsgrössen restlos durch 2MB teilbar sind (ist bei GB immer der Fall), gibt es dann keine Probleme.
Am Festplattenende sollte immer etwas unzugeordneter Platz übrigbleiben, insbesondere bei SSDs sehr wichtig. Ich lasse immer mindestens die letzten ~2GB unberührt.

Grobe Vorgehensweise im Rescuesystem:
Ins vorhandene RAID würde ich die Platte nicht einhängen, sondern stattdessen auf der neuen Platte ein neues RAID anlegen und formatieren, dann den Festplatteninhalt von der alten auf die neue Platte kopieren:

Code: Select all

mkdir -p /mnt/sda
mount /dev/sda3 /mnt/sda
mount /dev/sda1 /mnt/sda/boot

mkdir -p /mnt/sdb
mount /dev/sdb3 /mnt/sdb
mount /dev/sdb1 /mnt/sdb/boot

cd /mnt/sda
tar --create --file - . | tar --extract --verbose --preserve-permissions --numeric-owner --file - -C /mnt/sdb

umount /mnt/sda/boot /mnt/sda /mnt/sdb/boot /mnt/sdb
Note: Bitte die entsprechenden Partitionsbezeichnungen selbst ersetzen, sda entspricht der alten Platte, sdb der neuen Platte

Danach dann die alte Platte analog zur neuen Platte neu aufbauen und ins neue RAID aufnehmen und den Resync abwarten.

Abschliessend noch den Bootloader reinstallieren und rebooten, fertig.


Bitte erst überlegen, dann handeln!
Fullbackup anlegen!
Es droht Datenverlust bei unüberlegtem Handeln!


Dauert etwas, dafür ist es robuster als ein Mischbetrieb und zukunftssicher.
PayPal.Me/JoeUserFreeBSD Remote Installation
Wings for LifeWings for Life World Run

„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
AWOHille
Posts: 274
Joined: 2011-09-05 09:00

Re: Partition 1 does not start on physical sector boundary

Post by AWOHille »

Problem ist gelöst, danke nochmal für deine Hilfe.