fdisk - eu preciso disso ou posso criar um sistema de arquivos diretamente?

7

Eu li sobre o fdisk ser capaz de criar uma partição / que é decompor um disco físico em várias partições lógicas.

Se eu pretendo utilizar todo o disco como um todo, ainda é necessário para mim

1) para fdisk e criar uma partição primária que ocupe o tamanho de todo o disco ou

2) eu posso ir em frente e mkfs.ext4 sem fazer nenhum fdisk?

3) E porquê - >

Editado - > Depois de ler todos os comentários (de alguns sim e não), eu estou pensando que será bom se alguém puder apontar para mim o que realmente faz o fdisk? para que eu possa entender mais sobre por que realmente precisamos em comparação com se não o fizemos.

Eu tentei pesquisar, mas a maioria dos sites está ensinando como fdisk, mas não o porquê (ou a maior parte do porque é criar um sistema dual boot), mas eu quero saber por que é necessário mesmo para uma única partição .

Eu também tentei o mkfs diretamente em um disco e o montei para armazenar dados e arquivos (não parece ter nenhum problema) - então isso me deixa ainda mais curioso sobre o que o fdisk faz no disco de armazenamento.

    
por Noob 30.06.2015 / 19:18

4 respostas

5

Não, você não precisa . Seu disco e sistema de arquivos funcionarão bem sem a tabela de partições. Alguns BSDs antigos até faziam isso por padrão se você selecionasse perigosamente dedicado .

No entanto, é altamente recomendado por motivos de compatibilidade.


Um pouco mais detalhado:

Você pode executar mkfs.ext4 diretamente em / dev / sdb. Isso vai funcionar. Você pode montar isso sem problemas. ( mkfs.ext4 -F -F /dev/sdb ).

Você pode configurar um disco inicializável dessa maneira. Ainda será necessário algum código para inicializar. O que significa que você precisa pular o primeiro bit dos discos. (por exemplo, o espaço usado classicamente pelo MBR e os poucos setores tradicionais além dele). Isso ainda não está tecnicamente usando o MBR, embora você perca espaço equivalente.

Para qualquer configuração moderna, no entanto, esses poucos setores são uma pequena fração da capacidade do disco. Eu, portanto, recomendo usar GPT (ou em sistemas antigos MBR). Mas você pode passar sem isso.

    
por 30.06.2015 / 21:42
1

Você precisa criar uma tabela de partições mesmo se for usar todo o disco físico. Pense na tabela de partições como a "tabela de conteúdo" para os sistemas de arquivos, identificando as localizações de início e parada de cada partição, bem como o sistema de arquivos usado para ela.

    
por 30.06.2015 / 19:20
0

Você poderia criar um sistema de arquivos em uma unidade simples, mas raramente funcionará. Alguns pendrives são organizados assim. Mas para o disco rígido, você não quer.

Se for sua unidade principal / única, ela não será inicializável se você a criar como tal. O que o BIOS faz é ler o primeiro setor do drive e executá-lo (também conhecido como jump to its first byte). Você realmente quer executar metadados do sistema de arquivos? Felizmente você não vai, como o BIOS contém à prova de falhas - os dois últimos bytes desse setor precisam ser 0x55 0xaa para BIOS considerar a unidade como inicializável. E você tem um sistema UEFI que é ainda pior, pois o UEFI requer uma partição FAT distinta para funcionar.

Se for seu disco rígido secundário, isso pode funcionar, mas ainda não é recomendado - nenhuma detecção automática funcionará, a maioria das ferramentas informará que a unidade não está formatada e exigirá particionamento (o que destruirá seus dados).

Então, novamente, é às vezes possível fazê-lo, mas de uma maneira muito hackea, exigindo conhecimento intrincado da organização em disco de vários sistemas de arquivos. Certa vez vi uma descrição de uma imagem que poderia ser gravada em um CD inicializável, em uma unidade USB inicializável ou mesmo inicializada por um Mac mais antigo, mas isso estava no nível de 'Se eu colocar o comprimento do sistema de arquivos em xxx, quando executado por outra arquitetura, ele é executado como uma comparação de registro inofensivo '.

    
por 30.06.2015 / 21:28
-1

Mesmo se você pretende usar o disco inteiro, ele ainda precisará ser particionado. Neste caso, com uma partição tão grande quanto o próprio disco (quase, pelo menos. A tabela de partição ocupa algum espaço. Veja abaixo os detalhes sobre isso).

Quando eu introduzo pessoas ao conceito de partições e sistemas de arquivos para pessoas que normalmente pensam em "discos rígidos, vazios vs cheios" é isto: O disco rígido é o edifício, enquanto a partição é o real sala. Você formata uma partição com um sistema de arquivos específico, e então a torna utilizável, e na analogia do edifício, isso corresponde a declarar um tipo de quarto, como cozinha vs quarto (em outras palavras, como usá-lo).

Agora, para voltar à sua pergunta original, não é possível colocar um sistema de arquivos em uma unidade não particionada, pois a tabela de partição (os primeiros 512 bytes da unidade) contém informações sobre onde a partição física pode ser encontrada. Para que você tenha um sistema de arquivos, ele terá que iniciar em algum lugar que a tabela de partição possa fazer referência, e não pode referenciar um sistema de arquivos que não tenha um espaço definido, ou seja, a partição.

E se quisermos colocar a tabela de partições na analogia do edifício, acho que isso corresponderia a um projeto do prédio.

Atualizar refletindo sua edição de pergunta: O que o fdisk faz é permitir que você selecione determinados aspectos de uma partição, como tamanho, tipo e localização física, como tenho certeza que você já conhece. O que o fdisk faz então é traduzi-los em uma entrada da tabela de partições. Basicamente, ele faz com que a tabela de partição esteja atualizada com uma "lista" de todas as partições no disco, cada item na lista informando qual partição pode ser encontrada onde e de que tipo ela é. Isso é para que um sistema operacional saiba onde acessar dados em partições.

    
por 30.06.2015 / 21:05