Muitos programas seguem as mesmas convenções sobre unidades de tamanho ou "tamanho de bloco". Mas não é uma regra universal, cada programa pode geralmente "fazer o que quiser", então definitivamente leia o manual de cada ferramenta ou a página de informações para ter certeza.
Para o particionamento, eu definitivamente escolho o gparted, ele deve evitar qualquer confusão, mostrando a você quais unidades ele está usando claramente.
Meu man resize2fs
, na verdade, não diz que usa apenas MB (um milhão de bytes), mas sim:
The size parameter specifies the requested new size of the filesystem.
If no units are specified, the units of the size parameter shall be the
filesystem blocksize of the filesystem. Optionally, the size parameter
may be suffixed by one of the following the units designators: 's',
'K', 'M', or 'G', for 512 byte sectors, kilobytes, megabytes, or giga‐
bytes, respectively. The size of the filesystem may never be larger
than the size of the partition. If size parameter is not specified, it
will default to the size of the partition.
Note: when kilobytes is used above, I mean real, power-of-2 kilobytes,
(i.e., 1024 bytes), which some politically correct folks insist should
be the stupid-sounding ''kibibytes''. The same holds true for
megabytes, also sometimes known as ''mebibytes'', or gigabytes, as the
amazingly silly ''gibibytes''. Makes you want to gibber, doesn't it?
O fdisk mostra tamanhos em setores, de acordo com o que o dispositivo examinado diz que um setor é. Aqui está um exemplo de saída para um dispositivo pequeno, o tamanho é relatado como 3997 MB, 3997171712 bytes, que está usando o "maior" 1MB = 1.000.000 bytes preferido do fabricante:
$ sudo fdisk -l /dev/sdb
Disk /dev/sdb: 3997 MB, 3997171712 bytes
17 heads, 16 sectors/track, 28702 cylinders, total 7806976 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
/dev/sdb1 8192 7806975 3899392 b W95 FAT32
Você pode notar que está dizendo que a única partição é 3899392 blocos, mas subtrair o final desde o início rende duas vezes isso ... isso é estranho e incorreto, mas man fdisk
diz "o fdisk é um buggy pro‐
grama que faz coisas difusas - geralmente acontece de produzir resultados razoáveis.
Sua única vantagem é que ele tem algum suporte para rótulos de disco BSD e outros
tabelas de partição não-DOS. Evite se puder. "
Recomende cfdisk
, que mostra com mais precisão (em blocos de 512 bytes):
$ sudo cfdisk -P s /dev/sdb
Partition Table for /dev/sdb
First Last
# Type Sector Sector Offset Length Filesystem Type (ID) Flag
-- ------- ----------- ----------- ------ ----------- -------------------- ----
Pri/Log 0 8191* 0# 8192*Free Space None
1 Primary 8192* 7806975* 0 7798784 W95 FAT32 (0B) None
parted mostra MB = 1.000.000 bytes por padrão, mas isso pode ser alterado com isto:
Model: Multi Flash Reader (scsi)
Disk /dev/sdb: 3997MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 4194kB 3997MB 3993MB primary ext3
mas as unidades podem ser alteradas com o comando units:
unit unit
Set unit as the unit to use when displaying locations and
sizes, and for interpreting those given by the user when
not suffixed with an explicit unit. unit can be one of
"s" (sectors), "B" (bytes), "kB", "MB", "GB", "TB", "%"
(percentage of device size), "cyl" (cylinders), "chs"
(cylinders, heads, sectors), or "compact" (megabytes for
input, and a human-friendly form for output).
No entanto, gparted
mostra tamanhos em (meus preferidos) M ou MiB (potências de 1024), e pode fazer todo o movimento / redução / redimensionamento / formatação também, se quiser, ou você só pode criar partições com ele e formate-os depois usando a partição "inteira" e não se preocupe com os tamanhos exatos.
Vocêpodequererlerapáginacoreutils.infonotamanhodobloco:
2.3Blocksize
SomeGNUprograms(atleast'df','du',and'ls')displaysizesin"blocks". You can adjust the block size and method of display to make sizes easier to read. The block size used for display is independent of any file system block size. Fractional block counts are rounded up to the nearest integer.
...
An integer block size can be followed by a suffix to specify a multiple of that size. A bare size letter, or one followed by 'iB', specifies a multiple using powers of 1024. A size letter followed by 'B' specifies powers of 1000 instead. For example, '1M' and '1MiB' are equivalent to '1048576', whereas '1MB' is equivalent to '1000000'.
A plain suffix without a preceding integer acts as if '1' were prepended, except that it causes a size indication to be appended to the output. For example, '--block-size="kB"' displays 3000 as '3kB'.
The following suffixes are defined. Large sizes like '1Y' may be rejected by your computer due to limitations of its arithmetic.
'kB' kilobyte: 10^3 = 1000.
'k' 'K' 'KiB' kibibyte: 2^10 = 1024. 'K' is special: the SI prefix is 'k' and the ISO/IEC 80000-13 prefix is 'Ki', but tradition and POSIX use 'k' to mean 'KiB'.
'MB' megabyte: 10^6 = 1,000,000.
'M' 'MiB' mebibyte: 2^20 = 1,048,576.
'GB' gigabyte: 10^9 = 1,000,000,000.
'G' 'GiB' gibibyte: 2^30 = 1,073,741,824.
'TB' terabyte: 10^12 = 1,000,000,000,000.
'T' 'TiB' tebibyte: 2^40 = 1,099,511,627,776.
'PB' petabyte: 10^15 = 1,000,000,000,000,000.
'P' 'PiB' pebibyte: 2^50 = 1,125,899,906,842,624.
'EB' exabyte: 10^18 = 1,000,000,000,000,000,000.
'E' 'EiB' exbibyte: 2^60 = 1,152,921,504,606,846,976.
'ZB' zettabyte: 10^21 = 1,000,000,000,000,000,000,000
'Z' 'ZiB' 2^70 = 1,180,591,620,717,411,303,424.
'YB' yottabyte: 10^24 = 1,000,000,000,000,000,000,000,000.
'Y' 'YiB' 2^80 = 1,208,925,819,614,629,174,706,176.
Block size defaults can be overridden by an explicit '--block-size=SIZE' option. The '-k' option is equivalent to '--block-size=1K', which is the default unless the 'POSIXLY_CORRECT' environment variable is set. The '-h' or '--human-readable' option is equivalent to '--block-size=human-readable'. The '--si' option is equivalent to '--block-size=si'.