4 k sektör sabit diski nasıl biçimlendirilir?


12

Seagate ST3000DM001 3 TB sabit disk aldım. Bir mahfazanın içinde satıldı. Ext4 olarak biçimlendirdim, bazı verileri kopyaladım ve sonra kasadan çıkardım ve doğrudan anakarta bağladım. Verilerim OS tarafından görülemedi (bilinmeyen bir ~ 300GiB bölümü ve geri kalanını boş alan olarak görüyordu), bu yüzden Gelişmiş Biçim ve> 2 TB sürücüler hakkında okumaya başladım.

Diski tekrar USB ile bağladım, tüm verileri kopyaladım ve sata'ya bir kez daha taktım. GPT bölümleme tablosu oluşturmak için gparted kullandım (ubuntu disk yardımcı programı bana izin vermedi Error synchronizing after initial wipe: Timed out waiting for object (udisks-error-quark, 0), büyük bir 3Tb Ext4 bölümü oluşturdum, varsayılan Align todeğeri bıraktı MiBve biçimlendirdim.

Sürücü doğru şekilde tanınıyor ve düzgün takılıyor. Dosyalar sürücüye ve sürücüye başarıyla kopyalanabilir.

Ancak:

Gparted doğru olmadığını bildiğim 512k sektörleri olan diski gösterir 1

gparted ekran görüntüsü

ederken cat /sys/block/sdb/queue/physical_block_sizeraporları4096

libparted512 bin dışı sektör 2 ve diğer 3 ile ilgili bir sorun olan bazı raporlar buldum ve MiB ile hizalamanın yeterli olduğunu söylüyorlar.

Ayrıştırılmış raporlar, minimal seçtiğimde sürücünün hizalandığını bildiriyor:

(parted) align-check 
alignment type(min/opt)  [optimal]/minimal? min                           
Partition number? 1                                                       
1 aligned
(parted)    

Yapılandırmam doğru mu? Disk 512k sektörlerle biçimlendirildiğinden, gParted yanlış değerler bildirdiğinden veya her şeyi yanlış anladığımdan dolayı performans cezam var mı?

  1. http://www.storagereview.com/seagate_barracuda_3tb_review_1tb_platters_st3000dm001
  2. http://ubuntuforums.org/showthread.php?t=1536933&p=9754234#post9754234
  3. http://wdc.custhelp.com/app/answers/detail/a_id/5655

Bu Seagte disklerinin yanı sıra WD ve Fujitsu / HGST 3 TB disklerim var ve hepsi sorunsuz çalışıyor. GParted konusunda haklı olabilirsiniz, çünkü şu anda USB ile bağlı olan Seagate'im GParted'de 4096 sektör boyutunda görünüyor. GParted sürümüm, varsayılan olarak quantal'dan 0.12.1'dir.
LiveWireBT

USB ile bağlarsam 4096'yı burada göstereceğine inanıyorum. Oradaki USB-SATA denetleyicisinde biraz sihir var.
qwazix

Yanıtlar:


5

512 bayt rapor ediyor, çünkü eski işletim sistemlerine geriye dönük uyumluluk için mantıksal sektör boyutu (Windows). (g) bölümleri, bölgeleri 1 MiB'ye hizalar.


11

İlk olarak, çoğu Gelişmiş Biçim sürücüsü , fiziksel sektör boyutu 4096 bayt (4KiB) olmasına rağmen 512 baytlık mantıksal bir sektör boyutu sunar. Bu, sürücünün bellenimindeki verilerin dengelenmesi yoluyla yapılır ve bölümler düzgün şekilde hizalanmazsa performans sorunlarına neden olabilir . Ancak, bu sizin sorunun kaynağı değildir ve bölüm hizalamaya odaklanmanız yanlıştır. (Emin olmak için bölüm hizalama olduğu önemli; bu sadece senin sorunun kaynağı değil.)

Benim önsezi (o ve olduğusadece bir önsezi), sorununuz bir USB muhafazası ve diskin doğrudan bağlantısı arasında geçiş yapmaktan kaynaklanıyor. Bazı kasalar, diskteki 512 baytlık mantıksal sektörleri, bilgisayara sunulan 4096 baytlık mantıksal sektörlere dönüştürür - yani, Gelişmiş Biçim diskindeki bellenimin tersidir. Olumlu değilim, ancak bazı kasaların bunu sadece 2TiB disklerde yaptığından şüpheleniyorum. Hem MBR hem de GPT bölümleme şemaları verilere sektör numaralarına göre atıfta bulunur, bu nedenle sektör boyutunu değiştirmek bölümleme verilerini geçersiz kılar. Bu nedenle, diski bu şekilde çeviren bir USB kasasında hazırlar ve daha sonra diski doğrudan (veya tersi) kullanmaya çalışırsanız, bölümler (ve hatta GPT yedekleme verileri) olmayacağı için hatalar görürsünüz. bilgisayarın olmasını beklediği yerde. Gözü kapalı bir kişiye "

Bu sorunun çözümü, diski tek bir şekilde hazırlamak ve kullanmaktır - her ikisi de değil , USB muhafazasını kullanın veya doğrudan bağlantı kullanın. Her ikisi de bir nedenden dolayı gerekliyse, bu tür bir çeviri uygulamadan çalışan bir kasa bulmanız gerekir.

Hipotezimi test etmek için, mantıksal sektör boyutlarını partedbildiren bir araç (gibi ) kullanabilirsiniz . Örneğin:

sudo parted /dev/sda print
Model: ATA Hitachi HDP72505 (scsi)
Disk /dev/sda: 500GB
Sector size (logical/physical): 512B/512B

Bu çıktıdan bir sürü bilgiyi atladım. Önemli ayrıntı burada gösterilen son satırdadır: Mantıksal ve fiziksel sektör boyutları 512 bayttır. Bu testi çalıştırırsanız, diski başka bir şekilde tekrar takın ve tekrar çalıştırın, sonuçları karşılaştırabilirsiniz. Mantıksal sektör boyutu diski nasıl taktığınıza bağlı olarak değişirse, hipotezim doğrudur ve sorunun kaynağıdır. Ya da en azından bir sorun; başkaları da olabilir. Özellikle, Error synchronizing after initial wipebahsettiğiniz hata başka bir sorunu gösterebilir. OTOH, bunun bir yan etkisi olabilirparteddiskin sonunun ötesinden yedek GPT verilerini okumaya çalışıyorum. Her iki durumda da, mantıksal sektör boyutunda bir değişiklik görürseniz, başka bir şeyle uğraşmadan önce bu sorunu ele almalısınız. Diski yeniden bölümlemek istiyorsanız ancak Error synchronizinghata nedeniyle sorun yaşıyorsanız veya GParted yerine gdiskveya cgdisk( gdiskpakette) kullanmayı deneyin parted; gdiskailedir daha hatalara karşı daha sağlamdır partedailesi.


Sorunun usb ve dahili arasında geçiş yapmaktan kaynaklandığına inanıyorum. Aslında bu benim ilk düşüncemdi ve bu yüzden diski bilgisayara geri yerleştirdikten ve sata ile bağladıktan sonra bölüm tablosunu yeniden oluşturdum . (Sadece verilerimi çıkarmak için ilk etapta çıkardım). USB üzerinden bildirilen mantıksal sektörü test etmek için tekrar kaldırmak istemiyorum, ancak tüm gerçekler bunu gösteriyor.
qwazix

Arayüzleri değiştirmeye devam etmek istemiyorum, disk SATA bağlantısı altında hazırlandığı gibi çalışıyor. Bahsettiğiniz performans cezalarından endişeliyim ve gerçekten ne olduğunu anlamak istiyorum. parted /dev/sdb printdöner 512/4096o GParted @LiveWireBT yukarıdaki gibi kamburunu onaylar da (USB üzerinden bağlantı) aynı diske için 4096 görür ve açıklıyor mantıksal kesim boyutu raporları gibi görünüyor böylece.
qwazix

Verbatim Store'n'Go harici diskinde de aynı sorun vardı, mantıksal sektör boyutu 512 iken fiziksel boyut
4096.

4

Hem Linux çekirdeğinde hem de yardımcı programlarda Gelişmiş Biçim sürücülerini destekleyen değişiklikler yapılmıştır. Bu değişiklikler Gelişmiş Biçim sürücülerdeki tüm bölümlerin 4K sektör sınırlarına uygun şekilde hizalanmasını sağlar. Gelişmiş Biçim sürücüler için çekirdek desteği, 2.6.31 ve sonraki çekirdek sürümlerinde mevcuttur. Gelişmiş Biçim sürücülerini bölümlere ayırma ve biçimlendirme desteği aşağıdaki Linux yardımcı programlarında bulunur:

Fdisk: GNU Fdisk, sabit sürücüleri bölen bir komut satırı yardımcı programıdır. 1.2.3 ve üzeri sürümler Gelişmiş Format sürücüleri destekler.

Parted: GNU Parted, sabit diskleri bölümlemek için grafiksel bir yardımcı programdır. Sürüm 2.1 ve üzeri, Gelişmiş Biçim sürücüleri destekler.

4K yerel (4Kn) diskler 4 KB mantıksal sektör boyutuna sahiptir. Modern işletim sistemleri bu disklerde veri depolayabilir, ancak genellikle bu disklerden önyükleme yapamazlar. Bu diskler genellikle USB bağlantılı harici sürücülerdir.

Medya depolama aygıtı olarak kullanılan bir bölüm oluşturmak için klavyenizdeki Ctrl+ Alt+ tuşlarına basarak TTerminal'i açın. Açıldığında, aşağıdaki komutları çalıştırın:

sudo mkfs.ext4 -m 0 /dev/sdb1

4k disklerin çoğu 4096 bayt fiziksel sektör boyutuna sahiptir, böylece 3 TB plakalara sığabilir, ancak bir sektörün 512B olmasını bekleyen işletim sistemleri ile uyumluluk için hala 512B mantıksal sektör boyutuna sahiptir. Bu nedenle ayrıntıları yazdırmak için ayrıştırılan yazdırma komutunu kullandığınızda, sektör boyutu mantıksal / fiziksel 512B / 4096B diyor. Bu normal.

Bu "dönüştürme" diskin kendisindeki zeka tarafından yapılır ve bu normaldir. Bu nasıl olmalı.

3 TB'ın tamamını göremiyorsanız, öncelikle BIOS'ta disk boyutunu sınırlamadığını kontrol edin. Diski desteklemek için bios güncellemesine ihtiyacınız olabilir.

Ayrýca 0'dan baþlayarak bölüm oluþturmak için parted kullanýlýr. Diskteki bölümlerin en iyi performans için hizalanması için sektör 2048'de 1MiB'ye eşdeğer olan ilk bölümü başlatmanız gerekir.

Bu nedenle, birimi MiB olarak değiştirin, MiB'de disk boyutunu da yazdıracak disk ayrıntılarını yazdırın ve 1MiB'den başlayıp son MiB'den (veya sondan önce bir tane) biten bölümü (yalnızca tek bir bölüm istiyorsanız) oluşturun .

Örneğin, 3 TB'lık bir disk gerçekte 2,861,022 MiB değerine sahip olmalıdır. Bu nedenle, / dev / sdX adlı bir disk aygıtındaki tüm diski kapsayan tek bir bölüm oluşturmak şöyle olur (X'i doğru harfle değiştirin):

sudo parted /dev/sdX
unit MiB
mklabel gpt
print (to see the total size in MiB)
mkpart primary 1 2861022
quit

Disk boyutu 2861022'den daha fazla veya daha az MiB ise bitiş konumunu ayarlayın.

Bu kadar. Bundan sonra bölüm üzerinde istediğiniz dosya sistemini oluşturun.

Kaynaklar ve ekstra okuma

4K sektör sürücüleri ve Linux

Hata denetimleri ve Linux'ta 4K sürücüler yükleme

Ubuntu Forumları


Yanıtınız için teşekkürler, ancak sorumu gerçekten cevaplamıyor. Çekirdeğin sürücünün sektör boyutunu tanıdığını ve bu parçanın da bunu tanıması gerektiğini anlıyorum , ancak aksi rapor ediyor ve bunun bir açıklaması olup olmadığını, bir hata olup olmadığını veya yanlış bir şey yaptım mı merak ediyorum .
qwazix

0

Bölümlerinizi 4KB'nin katları üzerinde hizaladığınız sürece sorun yok. Aksi halde 4KB fiziksel sektörleri olan sürücüler için özel bir şey yapmanız gerekmez.

Eski bölümleme yazılımı, bölümleri 63x512B'lik birden çok bölüme hizaladı; bu, sürücünün 4KB fiziksel sektörleri varsa kötü performansla sonuçlanacaktır, çünkü bu 4KB'nin katı değil 31 ve yarım Kilobayttır.

Ubuntu'da şu an mevcut hiçbir bölümleme yazılımı artık bunu yapmayacak (özellikle bir şekilde talep etmediğiniz sürece). Çoğu, varsayılan olarak 1MiB'nin (aynı zamanda 256x4KB sektörler olan 2048x512B sektörler) katlarına hizalanacaktır.

Eğer hizalamazsanız ne olur?

Bölümleri 4KB'nin katlarıyla hizalamazsanız, gerçekleşecek en kötü şey performans kaybıdır (küçük dosyalar için oldukça önemli olanı). 4KB sektörleri olan sürücüler, mevcut sistemlerle uyumluluk için 512B sektörlerini taklit etme eğilimindedir. Bu yüzden, sadece 512B sektör sürücüsü olarak davranırsanız mükemmel çalışırlar. Ancak tek bir 512B alanına yazdığınızda, tüm bir 4KB sektörünü yeniden yazacaktır.

Bu nedenle, performans nedenlerinden dolayı, dosya sisteminizde kullandığınız 4KB kümelerinin sürücüdeki 4KB sektörleriyle hizalandığından emin olmak önemlidir, böylece tek bir küme yazma işlemi sürücüye iki 4KB sektörü yazmanıza gerek kalmaz.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.