dimensioni del settore fdisk e problemi di allineamento


10

Ho eseguito il comando:

# fdisk /dev/sda1

L'output è stato:

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): p

Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 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: 0xe0c5913d

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1              63    40965749    20482843+  1c  Hidden W95 FAT32 (LBA)
Partition 1 does not start on physical sector boundary.
/dev/sda2   *    40966144   334567423   146800640    7  HPFS/NTFS/exFAT
/dev/sda3       334567424   753997823   209715200   83  Linux
/dev/sda4       753999870  1953525167   599762649    5  Extended
Partition 4 does not start on physical sector boundary.
/dev/sda5       753999872  1949376511   597688320   83  Linux
/dev/sda6      1949378560  1953525167     2073304   82  Linux swap / Solaris

Sono nei guai perché i seguenti elementi:

  • Il dispositivo presenta una dimensione del settore logico inferiore alla dimensione del settore fisico. Si consiglia l'allineamento a un limite di dimensioni del settore fisico (o I / O ottimale) o le prestazioni potrebbero risentirne.

  • La partizione 1 non inizia sul confine del settore fisico.

  • La partizione 4 non inizia sul confine del settore fisico.

Come posso risolvere uno o più di questi elementi senza perdere i miei file e le mie partizioni?

Quali sono i problemi che dovrò lasciare così com'è?


La dimensione del settore logico è quasi sempre di 512 byte - non è sorprendente. I controller del disco lo sanno e funzionano di conseguenza. Non ho mai visto un problema con i confini del settore e delle partizioni non allineati - potrebbe essere stato un problema anni fa.
Muru,

Risposte:


11

La dimensione del settore logico essendo inferiore alla dimensione del settore fisico è normale per la maggior parte dei dischi moderni. Questo è semplicemente il modo in cui i dischi di formato avanzato vengono spesso implementati. Alcuni dischi esterni utilizzano le stesse dimensioni del settore (4096 byte) sia per i settori fisici che logici e ho sentito che alcuni dischi interni di fascia alta ora fanno lo stesso, ma la maggior parte dei dischi in questi giorni sono modelli di formato avanzato con 512 byte settori logici e settori fisici a 4096 byte. Non c'è niente che tu possa (o dovresti provare a fare) al riguardo.

Detto questo, è importante allineare correttamente le partizioni per i dischi di formato avanzato. Ho eseguito alcuni test sui dischi di formato avanzato per determinare cosa succede quando le loro partizioni non sono allineate e ho pubblicato i risultati qui. In breve, l'entità del problema varia notevolmente da un filesystem a un altro e da un disco a un altro, ma c'è quasi sempre una penalità di prestazione significativa (e talvolta enorme ) associata a partizioni disallineate.

Il tuo /dev/sda4, tuttavia, non detiene direttamente un filesystem; è una partizione estesa, il che significa che è semplicemente un contenitore per altre partizioni. I dati direttamente associati /dev/sda4sono semplicemente due settori (logici), che probabilmente non sono nemmeno adiacenti l'uno all'altro, quindi non possono essere allineati correttamente. Le penalità per le prestazioni reali verrebbero dall'allineamento delle partizioni contenute all'interno /dev/sda4. Nel tuo caso, /dev/sda4trattiene /dev/sda5e /dev/sda6, entrambi i quali sono correttamente allineati. Pertanto, non devi preoccuparti /dev/sda5. L'avvertimento che stai vedendo è semplicemente il codice che è troppo entusiasta di segnalare un "problema" quando non esiste.

Il tuo /dev/sda1, d'altra parte, non è correttamente allineato: inizia con il settore 63, che non è divisibile per 8. Il fatto che tu debba fare qualcosa dipende da quanto usi quella partizione, da come la usi (dimensione del file, letture vs. scritture, ecc.), quanto sia importante ottenere prestazioni ottimali da esso, se si dispone di backup adeguati, ecc. Ti consiglio di leggere l'articolo a cui ho fatto riferimento in precedenza, quindi decidere se risolvere il problema. (Non ho riportato i risultati di FAT in quell'articolo per motivi di spazio, ma le prestazioni di FAT hanno sofferto piuttosto male - IIRC, non tanto quanto ReiserFS, ma almeno quanto la maggior parte degli altri filesystem nativi di Linux.)

Se decidi di voler riparare /dev/sda1, dovresti iniziare eseguendo il backup. Fatto ciò, un modo per risolverlo è eliminarlo, creare una nuova partizione al suo posto e ripristinarne i file. Un altro modo (dopo il backup) è ridimensionare la partizione in GParted. Apporta una piccola modifica al punto iniziale; qualsiasi versione recente di GParted dovrebbe arrotondare a un multiplo di 2048 settori e andrà tutto bene. Lo spostamento del punto iniziale di una partizione è sempre più rischioso e richiede più tempo rispetto allo spostamento del punto finale. Poiché la partizione ha una dimensione di soli 19GiB, l'operazione non dovrebbe richiedere una quantità ridicola di tempo, anche spostando il punto iniziale, ma non sarà istantaneo.

Come nota a margine e sfondo, solo strumenti abbastanza vecchi disallineano le partizioni sui moderni dischi Advanced Format. La mia ipotesi è che hai utilizzato come strumento di un (una vecchia versione di Linux di fdisko di un DOS FDISK, forse) per creare /dev/sda1, poi utilizzato uno strumento più moderno (un più recente fdisk, partedo GParted, forse) per creare il resto delle partizioni.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.