Entendendo as identificações de partição no Ubuntu (UUIDs)

No Linux, todos os dispositivos de sistema são acessados através de arquivos especiais criados dentro do diretório “/dev”. Isso naturalmente inclui os HDs e as partições. Tradicionalmente, os HDs IDE são acessados através de devices iniciados com
“/dev/hd”, como em “/dev/hda” (master da primeira porta IDE), “/dev/hdb” (slave da primeira IDE), “/dev/hdc” (master da segunda IDE) e “/dev/hdd” (slave da segunda IDE), enquanto os HDs SCSI, SATA ou SAS recebem devices iniciados com “/dev/sd”, como em
“/dev/sda” (primeiro HD), “/dev/sdb” (segundo HD), “/dev/sdc” (terceiro HD) e assim por diante.

Entretanto, isso mudou nas versões recentes do Kernel (a partir do 2.6.20), onde, devido a uma mudança no subsistema que dá suporte a discos, todos os HDs passaram a receber devices iniciados com “/dev/sd”, independente de serem HDs IDE, SATA, SCSI ou
USB.

Uma boa forma de ver como o sistema detectou os HDs instalados é usar (como root) o comando “fdisk -l”, que lista os HDs e as partições disponíveis.

O que faz com que todas as partições sejam corretamente montadas durante o boot são entradas inseridas no arquivo “/etc/fstab“. Aqui temos um exemplo de configuração clássica:

/dev/sda1 / ext3 defaults 0 1
/dev/sda2 /home ext3 noatime 0 2
/dev/sda5 none swap sw 0 0
/dev/cdrom /mnt/cdrom iso9660 defaults,ro,user,noexec,noauto 0 0
proc /proc proc defaults 0 0

Como pode ver, cada linha descreve uma partição que será acessada pelo sistema. No exemplo, a primeira linha é referente à partição raiz, a segunda se refere a uma partição separada, montada no diretório home, a terceira é referente à partição swap, a
quinta é referente ao CD-ROM e a última ao diretório proc, um diretório especial usado pelo kernel para armazenar variáveis de configuração e atalhos de acesso a dispositivos.

Dentro de cada linha, o primeiro parâmetro (/dev/sda1) indica a partição, o segundo o diretório onde ela será montada (/), o terceiro indica o sistema de arquivos em que a partição foi formatada (ext3) enquanto o “defaults 0 1” permite definir
configurações adicionais. O “default”, por exemplo, é um “nada a declarar”, que faz com que a partição seja acessada usando as opções padrão, enquanto o “noatime” na segunda linha é uma opção de otimização, que faz com que o sistema não atualize a data de
acesso quando os arquivos são lidos, o que resulta em um pequeno ganho de desempenho.

Normalmente, você define os pontos de montagem das partições durante a própria instalação do sistema, de forma que o instalador se encarregará de adicionar as entradas apropriadas automaticamente. Ao instalar outros HDs posteriormente, você pode fazer
com que o sistema passe a usá-las inserindo as linhas apropriadas no fstab.

Entretanto, se você estiver usando o Ubuntu, vai perceber que ele não faz referência às partições dentro do fstab pelo dispositivo, mas sim pelo UUID, que é um identificador único. O uso dos UUIDs complica a configuração, mas oferece a vantagem de
garantir que o sistema continue sendo capaz de montar as partições mesmo que os HDs mudem de posição ou sejam instalados em portas diferentes da placa-mãe.

Para seguir o padrão do Ubuntu, identificando a partição através do UUID, você pode verificar qual é o UUID referente à sua partição usando o comando “blkid”, como em:

# blkid /dev/sdc1

/dev/sdc1: UUID="5c5a3aff-d8a3-479e-9e54-c4956bd2b8fd" SEC_TYPE="ext2" TYPE="ext3"

Você pode então especificar o UUID na linha do fstab no lugar do device, como em:

UUID=5c5a3aff-d8a3-479e-9e54-c4956bd2b8fd /mnt/sdc1 ext3 defaults 0 0

Um aviso importante é que o fstab é um dos arquivos essenciais para a inicialização do sistema, por isso você sempre deve checar e rechecar as alterações. Um erro na linha referente à partição raiz, por exemplo, simplesmente fará o sistema deixar de
inicializar.

Outra observação é que você deve deixar sempre uma linha em branco no final do arquivo, caso contrário passará a receber um aviso durante o boot. Ela é necessária por um motivo muito simples: sem ela, se um utilitário de configuração qualquer tentar
inserir informações no final do arquivo, vai acabar inserindo-as no final da linha anterior (em vez de em uma nova linha), resultando em uma configuração inválida.

Sobre o Autor

Redes Sociais:

Deixe seu comentário

X