X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=align%2Fvirt-alignment-scan.pod;h=5eb9312d368602b5ebfd071c33ee9f626a2a2d8f;hb=22c72b911e65b93cfd049f42e6bd1b9ad7d55299;hp=dcc71b4a223bb20d2685c1f9a4c952dd1e3eb1fe;hpb=df711241fff32036acbc3fae10486816cbdd8ef9;p=libguestfs.git diff --git a/align/virt-alignment-scan.pod b/align/virt-alignment-scan.pod index dcc71b4..5eb9312 100755 --- a/align/virt-alignment-scan.pod +++ b/align/virt-alignment-scan.pod @@ -229,8 +229,10 @@ data combined, and the two blocks written back (4x I/O). New versions of the Linux kernel expose the physical and logical block size, and minimum and recommended I/O size. -For a typical hard drive with 512 byte sectors: +For a typical consumer hard drive with 512 byte sectors: + $ cat /sys/block/sda/queue/hw_sector_size + 512 $ cat /sys/block/sda/queue/physical_block_size 512 $ cat /sys/block/sda/queue/logical_block_size @@ -240,6 +242,19 @@ For a typical hard drive with 512 byte sectors: $ cat /sys/block/sda/queue/optimal_io_size 0 +For a new consumer hard drive with 4Kbyte sectors: + + $ cat /sys/block/sda/queue/hw_sector_size + 4096 + $ cat /sys/block/sda/queue/physical_block_size + 4096 + $ cat /sys/block/sda/queue/logical_block_size + 4096 + $ cat /sys/block/sda/queue/minimum_io_size + 4096 + $ cat /sys/block/sda/queue/optimal_io_size + 0 + For a NetApp LUN: $ cat /sys/block/sdc/queue/logical_block_size @@ -258,8 +273,8 @@ is 64K. For detailed information about what these numbers mean, see L -[Thanks to Mike Snitzer for providing NetApp data and additional -information.] +[Thanks to Matt Booth for providing 4K drive data. Thanks to Mike +Snitzer for providing NetApp data and additional information.] =head2 1 MB PARTITION ALIGNMENT @@ -275,24 +290,15 @@ will start at a multiple of 2048 sectors. =head2 SETTING ALIGNMENT -Currently there is no virt tool for fixing alignment problems in -guests. This is a difficult problem to fix because simply moving -partitions around breaks the bootloader, necessitating either manual -reinstallation of the bootloader using a rescue disk, or complex and -error-prone hacks. - -L does not change the alignment of the first -partition, but it does align the second and subsequent partitions to a -multiple of 64 or 128 sectors (depending on the version of -virt-resize, 128 in virt-resize E 1.13.19). For operating systems -that have a separate boot partition, virt-resize could be used to -align the main OS partition, so that the majority of OS accesses -except at boot will be aligned. - -The easiest way to correct partition alignment problems is to -reinstall your guest operating systems. If you install operating -systems from templates, ensure these have correct partition alignment -too. +L can change the alignment of the partitions of some +guests. Currently it can fully align all the partitions of all +Windows guests, and it will fix the bootloader where necessary. For +Linux guests, it can align the second and subsequent partitions, so +the majority of OS accesses except at boot will be aligned. + +Another way to correct partition alignment problems is to reinstall +your guest operating systems. If you install operating systems from +templates, ensure these have correct partition alignment too. For older versions of Windows, the following NetApp document contains useful information: L @@ -372,4 +378,4 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.