Como adicionar um HD no Linux
Este blog é pautado pelos pedidos que recebo nas mensagens e pelos serviços que meus clientes pedem. A dica de hoje é do segundo caso. Um cliente solicitou ao datacenter que adicionasse um novo HD ao seu servidor, para resolver os problemas em disco. Pois bem, o pessoal do DC fez exatamente isso. E agora, o que fazer? Como veremos abaixo, adicionar um HD e/ou criar e deletar partições e/ou formatar um disco é bastante fácil, mesmo pelo console.
O tutorial foi dividido em quatro partes:
- Encontrado o disco
- Criando a partição
- Formatando a partição
- Montando a partição
Encontrado o disco
Quando um novo disco é adicionado, precisamos descobrir qual o nome do device dele. No caso específico do cliente, ele já possuia um disco SATA que recebeu o device /dev/sda. Como o novo disco também é um SATA, recebeu /dev/sdb. Assim a primeira coisa a se fazer é invocar o programa fdisk para criar as partições.
Criando as partições
A linha abaixo chama o fdisk com o parâmetro do device, no caso /dev/sdb
# /sbin/fdisk /dev/sdb
Aparecerá o cabeçalho do programa, em seguida vamos entrar com o comando p (de print) para ver o que temos no disco:
Command (m for help): p
Disk /dev/sdb: 160.0 GB, 160000000000 bytes
255 heads, 63 sectors/track, 19452 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
Como não há nenhuma partição nesse disco, o p exibe apenas os dados do disco (160GB, 255 cabeças, 63 setores, etc…)
Para criar a partição em si, entramos com o comando n, escolhemos o tipo de partição (extendida ou primária), indicamos o primeiro e o último ciindro. A escolha dos cilindros é uma forma de se dizer o tamanho da partição. No caso, todo o disk terá uma única partição, então utilizaremos o primeiro e o último cilindros disponíveis, como abaixo:
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-19452, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-19452, default 19452):
Using default value 19452
Vamos pedir uma impressão para ver como ficou o disco:
Command (m for help): p
Disk /dev/sdb: 160.0 GB, 160000000000 bytes
255 heads, 63 sectors/track, 19452 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 19452 156248158+ 83 Linux
Caso a partição não tenha o formato desejato, utilize o comando “t”. O código hexa para o formato Linux é 83.
Agora basta “salvar” as configurações, para isso utilize o comando “w” (write).
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
Formatando a partição
Para formatar a partição que criamos, utilizaremos o comando mk2fs. Esse aplicativo faz tudo o que é necessário. Basta invocar o programa e indicar qual a partição. Também vamos chamar com a opção -j, que ativa o journaling.
# /sbin/mke2fs -j /dev/sdb1 <– linha de comando
O programa irá escrever um bocado na sua tela, não se preocupe.
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
19546112 inodes, 39062039 blocks
1953101 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=0
1193 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 30 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
Montando a partição
Agora falta apenas criar o diretório e montar a partição. Eu gosto de coisas óbvias, então criei um diretório com o endereço /media/sdb1, assim sei que é a partição sdb1 em uma media física, mas você pode escolher qualquer diretório, se quiser criar um /backup não há nada de errado. Enfim, você escolhe.
# mkdir /media/sdb1
Agora vamos montar a partição. O comando mount será invocado com três parâmetros. -t indica o tipo de sistema de arquivos que utilizamos para formatar a partição, no nosso caso é ext3. Em seguida indicamos o device (/dev/sdb1) e o diretório onde deve ser montado (/media/sdb1 ou /backup ou /home/meu_diretorio).
# mount -t ext3 /dev/sdb1 /media/sdb1
um comando df deverá mostrar a partição e seu espaço livre:
# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda3 153663236 140484488 5247056 97% /
/dev/sda1 101086 10177 85690 11% /boot
tmpfs 1037320 0 1037320 0% /dev/shm
/tmpdir 984248 17968 916280 2% /tmp
/dev/sdb1 153794688 192072 145790212 1% /media/sdb1 <– nossa nova partição!
O único problema até aqui é que ao reiniciarmos o computador a partição terá “sumido”. Para que isso não aconteça é necessário informar ao sistema como monta-la. Isso é feito adicionando-se a seguinte linha no final do arquivo /etc/fstab
#vi /etc/fstab
(vá até o final do arquivo, utilizando as setas e/ou pgdown e digite “i” seguido de ENTER. Em seguida, copie a linha abaixo)
/dev/sdb1 /media/sdb1 ext3 defaults 1 2
(pressione ESC e digite “wq” seguido de ENTER).
Pronto, está tudo certo. Sua nova partição foi criada a partir da linha de comando.
comentários
3 comentários para “Como adicionar um HD no Linux”
Deixe seu comentário






MUITO LEGAL…
E UM GRANDE CONTEUDO.
CONTINUE …
PARABENS MEU VELHO.!
Ótimo artigo, segui os passos indicados e meu segundo HD SATA está funcionando perfeitamente, muito obrigado.
Ótimo! Muito obrigado.