Por que diferentes partições no mesmo disco não possuem o mesmo ponto de montagem?

1
% cat /etc/fstab
/dev/sda1       /               ext2        defaults        1   1
/dev/sda2       /usr/local      ext2        defaults        1   1
/dev/sda4       /home           ext2        defaults        1   1
/dev/sdb1       swap            swap        defaults        0   0
/dev/sdb3       /export         ext2        defaults        1   1
none            /dev/pts        devpts      gid=5,mode=620  0   0
none            /proc           proc        defaults        0   0
/dev/fd0        /mnt            ext2        defaults        0   0
/dev/cdrom      /mnt/cdrom      iso9660     ro              0   0  

Este é um exemplo aleatório que obtive de um site ao tentar entender a montagem de dispositivos. Sendo alguém de um histórico do Windows, tenho dificuldade em entender o conceito de pontos de montagem.

Aqui está o meu entendimento, por favor corrija-me onde está errado:

  1. Todos os dispositivos detectados vão na pasta /dev .
  2. /sda1 é a primeira partição da unidade SCSI e é montada na raiz porque a legenda diz que uma unidade deve ser montada na raiz.
  3. swap não precisa de ponto de montagem.

O que eu não entendo é por que as outras partições sda têm diferentes pontos de montagem. Eles não deveriam ir para /mnt ?

    
por Little Child 26.10.2014 / 15:10

4 respostas

1

Para entender como o sistema de arquivos unix é organizado, você precisa entender o padrão de hierarquia do sistema de arquivos .

Geralmente para instalar uma máquina linux você precisa ter pelo menos 2 partições / e swap . No caso, se você não tem processo que muita dose de troca, você também pode omitir swap .

O / é considerado a raiz do sistema de arquivos e swap é usado para troca de memória. Outros diretórios como /boot , /home , /usr , /var , /tmp , etc podem ser colocados em partições diferentes ou junto com a partição na qual / é colocado.

É preciso decidir esse layout com base em seus requisitos específicos. Por exemplo, um servidor de banco de dados precisa ter um /var enorme em uma partição separada, /tmp precisa ser mantido separadamente se o servidor / serviço gravar muitos dados temporários, para evitar o preenchimento da partição / . A escolha de ter diretórios diferentes em partições diferentes é baseada no cenário e no tipo de sistema de arquivos que irá atender sua necessidade.

/dev é montado com um sistema de arquivos virtual chamado sysfs . O diretório /dev contém todos os dispositivos detectados pelo kernel. Os arquivos em /dev são criados e removidos com base na remoção / inserção de hardware e isso é controlado pelo daemon udev .

/mnt é o espaço onde os sistemas de arquivos montados temporariamente são colocados.

    
por 26.10.2014 / 18:27
2

Para entender melhor, você deve se lembrar do conceito de alguns linux: " Você é o chefe e deve escolher o que quiser ". Cada das partições pode ser montado por

  • estática (cada inicialização): via registro em /etc/fstab
  • manualmente: quando você usa o comando mount
  • automático (quando alternado para): por udev demon de acordo com seus arquivos de regras, como sempre, pode ser /media/$USER/$DISK_LABEL ponto de montagem.

E tudo pode ser mudado em sua mente. É justo concordar em usar /mnt como local para montagem manual. Como de costume na pasta, uma pasta-filha foi criada antes da montagem (por exemplo /mnt/DATA para partição com arquivos de dados, /mnt/MUSIC para partição com arquivos de música, etc.). Mas eu prefiro montar essas partições diretamente para pastas apropriadas na minha pasta $HOME . Tudo a sua escolha.

Só para lembrar " Grande poder traz uma grande responsabilidade! " Existem muitas regras e acordos, assim como as razões pelas quais isso é feito desta ou daquela maneira. Então é melhor estudar a questão antes de mudar alguma coisa.

    
por 26.10.2014 / 15:58
2

Shouldn't they all go to /mnt?

Por que eles deveriam? Você criou partições diferentes, cada partição com um propósito e atribuiu os pontos de montagem às partições de acordo com sua finalidade. Não há um único local onde todas as partições devam ser montadas, e você pode optar por não montá-las se quiser.

No exemplo, você disse para atribuir uma partição separada a /home , /usr/local e /export , que eu poderia adivinhar aleatoriamente, para que você possa reinstalar e reutilizar essas partições sem ter medo de perder os dados. / p>

Em resumo: não existe um diretório onde as partições devam ser montadas. Você pode montá-los onde quiser para atender às suas necessidades (tentando evitar as advertências óbvias que são /run , /sys , /dev , ...).

    
por 26.10.2014 / 15:47
1

A coisa mais importante a entender sobre o Unix é que não há grande distinção entre uma partição montada e um diretório: eles são, para uma boa maioria de propósitos, idênticos.

E é por isso que eles não apenas colocam todos os pontos de montagem em /mnt ou /media . Eles não são especiais como no Windows, são apenas diretórios!

Em vez disso, o Unix constrói uma hierarquia (geralmente baseada no Filesystem Hierarchy Standard hoje em dia) fora de montagens e diretórios.

A única "ressalva" é que certas coisas precisam estar na partição raiz para o kernel se autoinicializar (embora um ramdisk para inicialização mude isso um pouco, mas isso é uma história para outra resposta)

    
por 26.10.2014 / 21:42

Tags