Create partitions
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel

Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

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.

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').

Command (m for help): DOS Compatibility flag is not set

Command (m for help): Changing display/entry units to sectors

Command (m for help): Command action
   e   extended
   p   primary partition (1-4)
Partition number (1-4): First sector (7-102399, default 7): Using default value 7
Last sector, +sectors or +size{K,M,G} (7-102399, default 102399): 
Command (m for help): Command action
   e   extended
   p   primary partition (1-4)
Partition number (1-4): First sector (20487-102399, default 20487): Using default value 20487
Last sector, +sectors or +size{K,M,G} (20487-102399, default 102399): 
Command (m for help): Command action
   e   extended
   p   primary partition (1-4)
Partition number (1-4): First sector (40967-102399, default 40967): Using default value 40967
Last sector, +sectors or +size{K,M,G} (40967-102399, default 102399): 
Command (m for help): Command action
   e   extended
   p   primary partition (1-4)
Selected partition 4
First sector (61447-102399, default 61447): Using default value 61447
Last sector, +sectors or +size{K,M,G} (61447-102399, default 102399): Using default value 102399

Command (m for help): First sector (61454-102399, default 63487): Using default value 63487
Last sector, +sectors or +size{K,M,G} (63487-102399, default 102399): 
Command (m for help): First sector (61454-102399, default 75775): Using default value 75775
Last sector, +sectors or +size{K,M,G} (75775-102399, default 102399): 
Command (m for help): First sector (61454-102399, default 88063): Using default value 88063
Last sector, +sectors or +size{K,M,G} (88063-102399, default 102399): Using default value 102399

Command (m for help): 
Disk /dev/sdb: 52 MB, 52428800 bytes
32 heads, 32 sectors/track, 100 cylinders, total 102400 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 32768 bytes
Alignment offset: 3584 bytes


   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               7       20486       10240   83  Linux
/dev/sdb2           20487       40966       10240   83  Linux
/dev/sdb3           40967       61446       10240   83  Linux
/dev/sdb4           61447      102399       20476+   5  Extended
/dev/sdb5           63487       73726        5120   83  Linux
/dev/sdb6           75775       86014        5120   83  Linux
/dev/sdb7           88063      102399        7168+  83  Linux

Command (m for help): The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
Alignment offsets:
0
0
0
0
0
0
0
