O que é o esquema de nomeação de unidades Linux?

28

No Windows; você tem o C:\drive. Esta é a unidade principal na qual o Windows está instalado.

No entanto, Linux utiliza um esquema de nomenclatura diferente: sda, sdb[1-4], etc. Alguém pode me dar um esboço breve dela para que eu possa realmente entendê-la em vez de ser confundido por ele?

Dante Ashton
fonte
11
Vale a pena notar que, no uso normal, você não precisa usar os /dev/sd*nomes. O equivalente à sua unidade C: é /(também conhecido como diretório raiz). Você pode ver todas as unidades acessando 'Computador' no gerenciador de arquivos.
Thomas K
11
Observe também que o MS Windows tenta descartar a noção de letras de unidade há 8 (?) Anos. Para Linux (e Ubuntu), eu não sinto falta deles.
David6

Respostas:

35

Em geral, as letras se (fd, sd, hd)referem ao tipo de dispositivo ('SATA, SCSI/SATA, IDE'), a terceira letra é para a ordem do dispositivo (a primeira, b a segunda, etc.) e os números se referem às partições que o dispositivo possui, começando por zero.

  • hd refere-se a uma unidade do tipo IDE
  • sd refere-se a uma unidade SCSI em geral, mas é mais popular para unidades SATA e CD / DVD
  • fd é disquete

Então, por exemplo:

  • a primeira (1) partição em sua primeira (a) unidade SATA é /dev/sda1
  • A terceira (3) partição da sua segunda (b) unidade SATA é /dev/sdb3
  • a segunda partição (2) do segundo disco rígido IDE (b) é '/ dev / hdb2'

Essa nomeação de dispositivo é mais uma de segundo plano, como o ponto real para acessar um ponto de montagem de diretório.

Eu acho que os três artigos a seguir ajudarão um pouco:

Pavlos G.
fonte
6
Além disso, a maioria das distribuições modernas permite fazer referência a unidades por uuid (um identificador exclusivo para unidades e outros dispositivos de armazenamento) se o kernel suportar, haverá links simbólicos /dev/disk/by-uuid/nesse ponto para os /dev/sd** nós de dispositivo "padrão" . Isso oferece o benefício de ter uma referência estável a uma unidade, mesmo que você embaralhe as unidades no sistema.
crasic
11

Por questões de clareza, no lado do Windows, você está confundindo a nomeação do sistema de arquivos com a nomeação da unidade. O Windows oculta a nomeação da unidade quase completamente, mas você pode ver exemplos no registro e se editar o arquivo boot.ini. Uma referência de disco pode ser assim:

multi(0)disk(0)rdisk(0)partition(1)

Você também pode ver discos individuais na ferramenta de gerenciamento de discos. A razão de eu trazer isso à tona é que o sistema de arquivos NTFS permite que você jogue todos os tipos de jogos. Você pode montar um disco separado em uma pasta no seu C: e outra unidade ao mesmo tempo, e os discos desmontados podem não ter uma letra de unidade. Portanto, não confunda o sistema de arquivos com a nomeação de disco.

O Linux é semelhante aqui. sda1 é um nome de partição comum, mas pode ser montado em qualquer lugar do sistema de arquivos.

Joel Coehoorn
fonte
5

Embora o SCSI e o SATA continuem existindo por algum tempo nas configurações comuns de desktops e laptops, os dispositivos móveis que usam armazenamento eMMC no /dev/mmcblk*p*esquema de nomenclatura já existem há alguns anos e os SSDs NVMe de alto desempenho não SATA ( /dev/nvme*n*) não estão longe.

LiveWireBT
fonte
Isso seria melhor como uma edição da resposta aceita.
Muni
@muru Votei em todas as respostas (atualmente) diferentes de zero, eu poderia facilmente ter deixado esse comentário em cada uma delas.
LiveWireBT
11
Não consigo encontrar um padrão para nomear dispositivos como eMMC e NVMe. Parece que se o nome do disco terminar em um número, você deverá inserir um 'p' antes do número da partição, mas seria bom confirmar isso!
Lane
4

Pavlos G. está mais correto, no entanto, / dev / hd ** não está mais em uso por discos rígidos IDE (e unidades de CD), eles usam / dev / sd ** desde o kernel 2.6.19 (e o ubuntu desde 7.10, ~ 2007)

mikeru
fonte
2

Você realmente não deve confiar no esquema de nomeação sd *. Pode mudar drasticamente dependendo da rotação da unidade, hot plug e adaptadores de armazenamento adicionais. A melhor coisa a usar para endereçar exclusivamente o seu dispositivo são os links persistentes /dev/disk/by-id/. O Linux não possui as limitações de "inicialização a partir do primeiro disco" e também pode montar unidades por etiqueta, portanto, a ordem das unidades é realmente irrelevante.

ppetraki
fonte