Eu tenho um pen drive e uma partição:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 931.5G 0 disk
└─sda1 8:1 0 931.5G 0 part /
sdb 8:16 1 7.5G 0 disk
└─sdb1 8:17 1 7.5G 0 part
e eu formatei com o comando:
# mkfs.fat -n A /dev/sdb
e funciona bem.
Mas depois disso, passei pela página de manual do mkfs:
mkfs is used to build a Linux filesystem on a device, usually a hard
disk partition. The device argument is either the device name (e.g.
/dev/hda1, /dev/sdb2), or a regular file that shall contain the
filesystem. The size argument is the number of blocks to be used for
the filesystem.
Diz que mkfs
deve funcionar com o número da partição. E meu problema é por que minha operação funciona sem aviso de erro?
linux
filesystems
mkfs
Alaneuler
fonte
fonte
Respostas:
Criar um sistema de arquivos em um disco inteiro em vez de em uma partição é possível, mas incomum. A documentação apenas menciona explicitamente a partição porque esse é o caso mais comum ( geralmente é o caso ). Você pode criar um sistema de arquivos em qualquer coisa que atue suficientemente como um arquivo de tamanho fixo, ou seja, algo em que, se você gravar dados em um determinado local e ler a partir do mesmo local, retornará os mesmos dados. Isso inclui discos inteiros, partições de disco e outros tipos de dispositivos de bloco , além de arquivos regulares (imagens de disco).
Depois de fazer
mkfs.fat -n A /dev/sdb
, você não terá mais uma partição nesse disco. Cuidado que o kernel ainda pensa que o disco possui uma partição, porque mantém a tabela de partição em cache na memória. Mas você não deve tentar usar/dev/sdb1
mais, pois ele não existe mais; escrever nele iria corromper o sistema de arquivos que você criou/dev/sdb
desde que/dev/sdb1
faz parte/dev/sdb
(tudo, exceto algumas centenas de bytes no começo). Execute o comandopartprobe
como root para instruir o kernel a reler a tabela de partição.Embora seja possível criar um sistema de arquivos em um disco inteiro, eu não o recomendo. Alguns sistemas operacionais podem ter problemas com ele (acho que o Windows suportaria, mas alguns dispositivos, como câmeras, não), e você perde a possibilidade de criar outras partições. Veja também Os méritos de um sistema de arquivos sem partição
fonte
Geralmente, é bom colocar um sistema de arquivos em um dispositivo inteiro, em vez de particionar e formatar as partições, se você não pretende ter mais de um sistema de arquivos no dispositivo. Você simplesmente terá que ser consistente; desde que você colocou o sistema de arquivos em
sda
vez desda1
, você terá que montarsda
também, poissda1
não existirá.O dispositivo em sua pergunta parece ser uma unidade removível no formato FAT: se for usado com dispositivos incorporados que possam ter uma noção mais ou menos detalhada de como os sistemas de arquivos podem ser montados, pode valer a pena testar o que eles fazem em fato suporta um sistema de arquivos de dispositivo inteiro sem uma tabela de partição. (Por exemplo, as câmeras tendem a criar uma única partição e formatar isso; é perfeitamente possível que elas declarem um cartão de memória sem partição inutilizável.)
fonte