FreeBSD 10, ashift 9 und diskid loswerden

kira12

Well-Known Member
Hallo Leute,

ih habe meinen Fileserver auf 10 upgedatet und ein paar Festplatten eingebaut, fürs Backuplaufwerk Seagate 2TB st2000nm033. Den Zpool erstellt und nun sagt zdb ashift =9. Sollte das unter 10 nicht auch ohne gnop funktionieren? Dann habe ich beim Pool zu viel herumgespielt. Eine Platte hat nun eine gptid und eine diskid. die diskid würde ich gern wieder loswerden, aber wenn ich die mit gpart destroy lösche ist Sie nach dem gpart create wieder da. wie ewerde ich die los?

Gruß ré
 
Guten Morgen,
das sind ja zwei Fragen auf einmal:

- Das Problem ist, dass die meisten Platten zwar 4k Laufwerke sind, sich aber weiterhin als 512 Byte Laufwerke ausgeben. Angeblich, da das heilige Windows XP Sonst Probleme hat. Ich habe die vage Hoffnung, dass es sich mit dem Ende von XP in endlicher Zeit ändern wird. Der Kernel kann das Laufwerk also nur dann als 4k Laufwerk erkennen, wenn er einen entsprechenden Qirk (eigentlich eine lange Tabelle, die Klassen von Laufwerksmodellen Informationen zuweist) hat. Das sieht in der dmesg dann so aus:
Code:
ada1: Command Queueing enabled
ada1: 1907729MB (3907029168 512 byte sectors: 16H 63S/T 16383C)
ada1: quirks=0x1<4K>
Hast du keinen 4K Quirk, wird er die Platte als 512 Byte Platte erkennen und behandeln.

- DIe dumme diskid wirst du los, indem du in der /boot/loader.conf das hier setzt:
Code:
kern.geom.label.gptid.enable="0"
 
Hallo,

das klingt gut zu hören, das mit den 4k Blocks habe ich mit gnop umgangen. Die Diskid werde ich dank deinem Tipp auch los. ;-)

Gruß ré
 
Nein, es ist das falsche Tuneable. Mea culpa. Korrekt ist: kern.geom.label.disk_ident.enable="0"
 
noch mal zurück zu den Quirks, da der Kernel das nicht erkennt bedeutet das das die Seagate Barracuda ES.3 nicht unterstützt wird?

Gruß ré
 
Es heißt, dass der Kernel nicht weiß, dass es sich um ein 4k-Laufwerk handelt. Mit Unterstützung hat es nichts zu tun, es ist schließlich ein ganz normales ATA-Device.
 
OK, und wie kann ich das ändern? Reicht es die scsi_da.c zu ergänzen im Stil der anderen Bezeichnungen di schon drin stehen? (Die Platten hängen an einem SAS Controller)

Gruß ré
 
Du musst in src/sys/cam/ata/ata_da.c in struct ada_quirk_stable (Zeile 165ff in 10.0) einen Eintrag im Stil der bereits vorhandenen machen. Und bitte, bitte schreibe einen Bug Report, damit es global nachgetragen wird.
 
Hallo Yamagi,

das klappt irgendwie nicht mit der ST_blabla Bezeichnung. Dmesg sagt folgendes übe die HDD aus:

da9 at ciss0 bus 0 scbus0 target 9 lun 0
da9: <HP RAID 0 OK> Fixed Direct Access SCSI-5 device
da9: Serial Number PACCT9SYGHO8
da9: 135.168MB/s transfers
da9: Command Queueing enabled
da9: 1907697MB (3906963632 512 byte sectors: 255H 32S/T 65535C)

was kann ich noch probieren?

Gruß ré
 
Da ist dein Problem:
Code:
da9: <HP RAID 0 OK> Fixed Direct Access SCSI-5 device
Der Kernel sieht die Festplatte gar nicht. Er sieht nur das, was dein Controller daraus gemacht hat. Daher greift der Quirk nicht. in dem Fall müsstest du wirklich in scsi_da.c einen Quirk auf die vom Kernel erkannte Festplattenbezeichnung hinzufügen.
 
Hallo,

der Eintrag:
/* Seagate Advanced Format drives */
{ T_DIRECT, SIP_MEDIA_FIXED, "HP RAID 0*", "*" },
/*quirks*/DA_Q_4K
},

funktioniert leider nicht, wie komme ich dem Fehler auf die Spur?

Gruß ré
 
Gibt es eigentlich einen Grund, warum 4K alignment nich default ist? Ich meine, sollte die Festplatte noch bei 0.5K alignment sein, wäre das doch kein Problem. Win-Win sozusagen... Oder habe ich was übersehen?
 
Back
Top