Fundamentos do sistema Linux: discos e partições

Neste artigo veremos como o GNU/Linux trabalha com discos, além de ver conceito de partições, sistemas de arquivos, bem como os principais programas para trabalhar com discos e partições.

[ Hits: 201.362 ]

Por: Davidson Rodrigues Paulo em 18/04/2006 | Blog: http://davidsonpaulo.com/


Particionando o HD



O particionamento consiste em criar as partições necessárias para instalar o sistema operacional. As partições são divisões no disco, tratadas como se fossem discos independentes.

O particionamento faz parte do processo de instalação de qualquer distribuição GNU/Linux. Algumas trazem ferramentas gráficas para essa tarefa, como Mandriva, SuSE e Fedora, outras possuem ferramentas em modo texto um pouco mais simples, como o Debian, e outras, como o Slackware, não possuem ferramentas próprias, e exigem que o usuário execute um aplicativo de particionamento em modo texto antes de iniciar o processo de instalação.

O programa mais poderoso para particionamento de HD's é o fdisk (não confunda com o fdisk para DOS), entretanto, por ser baseado em linha de comando, podemos facilmente cometer erros que podem nos levar a perder todos os dados de um disco que tenha dados gravados.

Uma alternativa para o fdisk é o cfdisk. O cfdisk nada mais é que uma interface para o fdisk, bastante intuitiva e muito simples de usar.

Tabela de partições


Tabela de partições, ou partition table, é o local no HD onde ficam armazenadas as informações sobre as partições existentes.

Como visto anteriormente, as partições podem ser de 3 tipos: primárias, extendidas e lógicas, de forma que podemos ter até 16 partições no disco: 3 primárias, 1 extendida e 12 lógicas. Dessas, apenas 15 podem receber sistemas de arquivos, uma vez que a partição extendida só serve para abrigar as partições lógicas.

Esquema de particionamento


Primeiramente, é preciso ter em mente as partições que se deseja criar. Por motivos de desempenho e segurança, pode-se decidir criar várias partições, uma para cada diretório importante do sistema. Esse procedimento é muito útil pois, no caso de uma corrupção no sistema que o torne inacessível, é possível recuperar facilmente os dados das outras partições. Além disso, pode-se colocar os diretórios que são mais acessados no início do disco, onde os dados são lidos mais rapidamente.

Partição Ponto de montagem Tipo Tamanho Bandeira
/dev/hda1 extendida 8736 MB
/dev/hda5 /boot lógica 32 MB boot
/dev/hda6 /usr lógica 4096 MB
/dev/hda7 swap lógica 512 MB
/dev/hda8 /var lógica 4096 MB
/dev/hda2 / primária 3072 MB
/dev/hda3 /home primária 24032 MB
/dev/hda4 /backup primária 5120 MB


Nessa estrutura existem 7 partições. 1 para a raiz do sistema /, 1 para a memória virtual (swap), 4 para diretórios importantes do sistema (/boot/, /usr/, /var/, /home/) e 1 para um diretório de backup (/backup/).

Existem basicamente duas vantagens em escolher partições separadas para os diretórios importantes do sistema:
  • Segurança: Gravar nossos dados pessoais em partições separadas da partição principal é seguro pois, na eventualidade de o sistema ser corrompido e não puder ser inicializado, poderemos recuperar facilmente os nossos dados, pois eles não estarão gravados na mesma partição do sistema, mas em uma partição à parte;
  • Desempenho: Nem todos os diretórios são acessados com a mesma freqüência. Alguns são mais lidos, outros são mais gravados, alguns são lidos somente na inicialização do sistema, enfim. Dessa forma, podemos otimizar o sistema colocando os diretórios mais acessados em partições localizadas no início do disco, onde a leitura e a gravação ocorrem de forma mais rápida.

Sabendo disso, fica fácil entender o porquê dessa estrutura de particionamento acima escolhida.

A primeira partição foi separada para receber o diretório /boot/, pois é nesse diretório que se encontram a imagem do kernel e os arquivos utilizados pelo gerenciador de inicialização, ambos utilizados durante a inicialização do sistema. Colocar esse diretório numa partição no início do disco garante uma leitura mais rápida dos arquivos e, portanto, alguns segundos a menos no tempo de carregamento do sistema.

A segunda partição foi separada para receber o diretório /usr/, que contém os arquivos utilizados pela maioria dos programas dos usuários. Colocar esse diretório numa partição próxima ao início do disco torna a inicialização dos programas um pouco mais rápida.

A terceira partição foi separada para a memória virtual. A memória virtual é utilizada para armazenar dados quando a memória RAM não for suficiente. Quanto mais rapidamente os dados forem lidos e gravados na partição swap, melhor o desempenho do sistema quando a memória virtual estiver sendo utilizada.

A quarta partição separamos para o diretório /var/. Essa partição contém diversas informações sobre muitos dos programas do sistema, incluindo arquivos de log. Em sistemas de servidores, os logs são muito importantes, além de outros arquivos que podem ser muito úteis para o administrador do sistema. Separar o diretório /var/ é útil para fins de segurança, pois os dados contidos nesse diretório podem ser de extrema importância em certos casos.

A quinta partição será utilizada pela raiz do sistema e o demais diretórios principais.

A penúltima partição será utilizada para o diretório /home/. Esse diretório, como você sabe, recebe os arquivos pessoais de cada usuário, e tê-lo em uma partição separada oferece uma segurança em relação a integridade dos dados, que podem ser facilmente recuperados no caso de corrompimento do sistema.

Por fim, temos a última partição, que separamos para o diretório /backup/. Esse diretório é personalizado, não existindo na FHS do Linux, e nesse exemplo será utilizado para realização de backup.

Agora, vejamos como proceder para criar essa tabela de partições. Para isso, podemos utilizar vários programas. O mais conhecido é o fdisk, ferramenta em modo texto extremamente poderosa, porém não muito intuitiva. Existe ainda o cfdisk, que nada mais é que uma interface para o fdisk, bem mais simples de utilizar.

Existem ainda alguns utilitários de particionamento em modo gráfico, com o QTParted, bastante simples de utilizar e muito eficiente.

Vejamos agora como criar a tabela de partições acima utilizando o fdisk.

O fdisk


Para iniciar o fdisk, usamos o seguinte comando:

# fdisk [dispositivo]

Onde [dispositivo] é o disco que estamos particionando. Geralmente utilizamos o disco rígido IDE ligado como primary master, o /dev/hda:

# fdisk /dev/hda

The number of cylinders for this disk is set to 4865.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
   (e.g., DOS FDISK, OS/2 FDISK)


Command (m for help):

Ao iniciar, o fdisk mostra algumas informações a respeito do programa e apresenta o prompt de comandos "Command (m for help):". É aqui que devemos dar os comandos para trabalhar as partições. Os comandos são:
  • a: Marcar uma partição como ativa;
  • d: Apagar uma partição;
  • l: Lista dos sistemas de arquivos conhecidos;
  • m: Ajuda básica sobre os comandos;
  • n: Criar uma nova partição;
  • p: Mostra da tabela de partições do disco;
  • q: Sair sem salvar as alterações;
  • t: Mudar o tipo do sistema de arquivos em uma partição;
  • w: Gravar a tabela de partições no disco.

Vejamos agora um exemplo prática de uso do fdisk, criando a tabela de partições mostrada na seção anterior.

Considerando que o disco está vazio, o primeiro passo é criar a partição extendida /dev/hda1:

command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
e
Partition number (1-4): 1
First cylinder (1-4865, default 1): 1
Last cylinder or +size or +sizeM or +sizeK (1-4865, default 4865): +8736M

Ao usar o comando n, para criar uma nova partição, o fdisk pergunta que tipo de partição criar. Escolhemos e (extendida). O fdisk pergunta então qual o número que queremos dar à partição. Escolhemos 1. Em seguida, devemos informar o cilindro inicial da partição. Apenas pressionamos Enter, pois a partição deve ficar no início do disco. Por fim, devemos informar o tamanho da partição. Colocamos +8736M, para definir um tamanho de 8736 MB.

Agora, devemos criar as 4 partições lógicas /dev/hda5, /dev/hda6, /dev/hda7 e '/dev/hda8, com 32 MB, 4096 MB, 512 MB e 4096 MB, respectivamente. Vamos criar primeira a partição /dev/hda5, com 32 MB:

Command (m for help): n
Command action
   l   logical (5 or over)
   p   primary partition (1-4)
l
First cylinder (1-1063, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-1063, default 1063): +32M

Na seqüência, criamos a partição /dev/hda6, com 4096 MB:

Command (m for help): n
Command action
   l   logical (5 or over)
   p   primary partition (1-4)
l
First cylinder (6-1063, default 6):
Using default value 6
Last cylinder or +size or +sizeM or +sizeK (6-1063, default 1063): +4096M

Em seguida, criamos a partição /dev/hda7, com 512 MB:

Command (m for help): n
Command action
   l   logical (5 or over)
   p   primary partition (1-4)
l
First cylinder (505-1063, default 505):
Using default value 505
Last cylinder or +size or +sizeM or +sizeK (505-1063, default 1063): +512M

E, por fim, criamos a última partição lógica, /dev/hda8. Como ela deve ocupar todo o espaço disponível, não precisamos informar o seu tamanho:

Command (m for help): n
Command action
   l   logical (5 or over)
   p   primary partition (1-4)
l
First cylinder (568-1063, default 568):
Using default value 568
Last cylinder or +size or +sizeM or +sizeK (568-1063, default 1063):
Using default value 1063

Concluída a criação das partições lógicas, é hora de criar as 3 partições primárias restantes: /dev/hda2, /dev/hda3 e /dev/hda4. Começamos por criar a partição /dev/hda2, com 3072 MB:

Command (m for help): n
Command action
   l   logical (5 or over)
   p   primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (1064-4865, default 1064):
Using default value 1064
Last cylinder or +size or +sizeM or +sizeK (1064-4865, default 4865): +3072M

Em seguida, criamos a partição /dev/hda3, com 24032 MB:

Command (m for help): n
Command action
   l   logical (5 or over)
   p   primary partition (1-4)
p
Partition number (1-4): 3
First cylinder (1438-4865, default 1438):
Using default value 1438
Last cylinder or +size or +sizeM or +sizeK (1438-4865, default 4865): +24032M

E, finalmente, criamos a última partição primária, /dev/hda4, utilizando o espaço restante no HD:

Command (m for help): n
Command action
   l   logical (5 or over)
   p   primary partition (1-4)
p
Selected partition 4
First cylinder (4361-4865, default 4361):
Using default value 4361
Last cylinder or +size or +sizeM or +sizeK (4361-4865, default 4865):
Using default value 4865

Agora, utilizamos o comando p para listar as partições criadas:

Command (m for help): p

Disk /dev/hda: 40.0 GB, 40020664320 bytes
255 heads, 63 sectors/track, 4865 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
   Device Boot      Start         End      Blocks   Id  System
/dev/hda1               1        1063     8538516    5  Extended
/dev/hda2            1064        1437     3004155   83  Linux
/dev/hda3            1438        4360    23478997+  83  Linux
/dev/hda4            4361        4865     4056412+  83  Linux
/dev/hda5               1           5       40099+  83  Linux
/dev/hda6               6         504     4008186   83  Linux
/dev/hda7             505         567      506016   83  Linux
/dev/hda8             568        1063     3984088+  83  Linux
Pronto. Todas as partições estão criadas, mas o particionamento ainda não está completo. Precisamos definir a partição /dev/hda7 como swap. Para isso, utilizamos o comando t, e escolhemos o número 82, para definir a partição como Linux Swap:

Command (m for help): t
Partition number (1-8): 7
Hex code (type L to list codes): 82
Changed system type of partition 7 to 82 (Linux swap / Solaris)

Segue abaixo a lista completa com os códigos de todos os tipos de partições suportados pelo fdisk:

0 Empty 1e Hidden W95 FAT1 80 Old Minix be Solaris boot
1 FAT12 24 NEC DOS 81 Minix / old Lin bf Solaris
2 XENIX root 39 Plan 9 82 Linux swap / So c1 DRDOS/sec (FAT-
3 XENIX usr 3c PartitionMagic 83 Linux c4 DRDOS/sec (FAT-
4 FAT16 <32M 40 Venix 80286 84 OS/2 hidden C: c6 DRDOS/sec (FAT-
5 Extended 41 PPC PReP Boot 85 Linux extended c7 Syrinx
6 FAT16 42 SFS 86 NTFS volume set da Non-FS data
7 HPFS/NTFS 4d QNX4.x 87 NTFS volume set db CP/M / CTOS / .
8 AIX 4e QNX4.x 2nd part 88 Linux plaintext de Dell Utility
9 AIX bootable 4f QNX4.x 3rd part 8e Linux LVM df BootIt
a OS/2 Boot Manag 50 OnTrack DM 93 Amoeba e1 DOS access
b W95 FAT32 51 OnTrack DM6 Aux 94 Amoeba BBT e3 DOS R/O
c W95 FAT32 (LBA) 52 CP/M 9f BSD/OS e4 SpeedStor
e W95 FAT16 (LBA) 53 OnTrack DM6 Aux a0 IBM Thinkpad hi eb BeOS fs
f W95 Ext'd (LBA) 54 OnTrackDM6 a5 FreeBSD ee EFI GPT
10 OPUS 55 EZ-Drive a6 OpenBSD ef EFI (FAT-12/16/
11 Hidden FAT12 56 Golden Bow a7 NeXTSTEP f0 Linux/PA-RISC b
12 Compaq diagnost 5c Priam Edisk a8 Darwin UFS f1 SpeedStor
14 Hidden FAT16 <3 61 SpeedStor a9 NetBSD f4 SpeedStor
16 Hidden FAT16 63 GNU HURD or Sys ab Darwin boot f2 DOS secondary
17 Hidden HPFS/NTF 64 Novell Netware b7 BSDI fs fd Linux raid auto
18 AST SmartSleep 65 Novell Netware b8 BSDI swap fe LANstep
1b Hidden W95 FAT3 70 DiskSecure Mult bb Boot Wizard hid ff BBT
1c Hidden W95 FAT3 75 PC/IX


Por fim, precisamos ligar a bandeira inicializável em uma das partições. Pelo menos uma partição deve ter essa bandeira ligada, para que seja possível inicializar o sistema operacional.

Vamos utilizar o comando a para ligar essa bandeira na partição /dev/hda5, que é a primeira partição do HD:

Command (m for help): a
Partition number (1-8): 5

E a tabela de partições está finalmente concluída. Vejamos como ela ficou:

Command (m for help): p
   Device Boot      Start         End      Blocks   Id  System
/dev/hda1               1        1063     8538516    5  Extended
/dev/hda2            1064        1437     3004155   83  Linux
/dev/hda3            1438        4360    23478997+  83  Linux
/dev/hda4            4361        4865     4056412+  83  Linux
/dev/hda5   *           1           5       40099+  83  Linux
/dev/hda6               6         504     4008186   83  Linux
/dev/hda7             505         567      506016   82  Linux swap
/dev/hda8             568        1063     3984088+  83  Linux 
Uma vez concluído o particionamento, utilizamos o comando w para gravar a tabela de partições no disco. O fdisk vai pedir confirmação antes de fazer a gravação.

Para sair do programa, utilize o comando q.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Partições
   3. Sistemas de arquivos
   4. Montando partições
   5. Particionando o HD
   6. Trabalhando com sistemas de arquivos
Outros artigos deste autor

Fundamentos do sistema Linux - comandos do Linux

Fundamentos do sistema Linux - arquivos e diretórios

hdparm: Tire o máximo do seu HD

Fundamentos do sistema Linux - direcionadores

Viva o Linux Training: seja um moderador do VOL

Leitura recomendada

Porquê a mascote do Linux é um pinguim

Guia Introdutório do Linux II

Um tour pelos ripadores de CDs para Linux

Guia Introdutório do Linux V

Lendo as permissões dos arquivos Linux

  
Comentários
[1] Comentário enviado por removido em 18/04/2006 - 13:08h

Davidson, muito legal o seu artigo, mas acredito que é algo bastante complicado essa escolha de particionamento, principalmente em caso de HDs menores. Como por exemplo o do meu notebook que tem 20gb calcular o espaço de cada partição é complicado. Você conhece algum método após o linux estar rodando alterar o tamanho de uma partição?

[2] Comentário enviado por DooM em 18/04/2006 - 13:36h

Muito bem explicado e ótimo para iniciantes. Excelente artigo. Sugiro que os leitores iniciantes deem uma olhada depois na subsecao Sistema de Arquivos, no menu Artigos e procure saber mais sobre cada tipo de partição existente como forma de complemento ao artigo.

[3] Comentário enviado por davidsonpaulo em 18/04/2006 - 13:41h

danielgianni,

Você pode usar LVM (Logical Volume Manager). Ele é um sistema que, a grosso modo, cria partições virtuais, que podem ser redimensionadas a qualquer momento mesmo que o sistema esteja rodando.

Outro método também é redimensionar as partições usando o utilitário parted. Existem frontend gráficos para o parted, q saber QtParted e GParted. Entretanto, o parted só funciona se a partição não estiver sendo utilizada, e em alguns casos você terá que reiniciar o sistema para as alterações serem reconhecidas.

[4] Comentário enviado por removido em 18/04/2006 - 16:43h

Davidson, esse é um dos melhores e mais didáticos artigos que eu já li aqui ou em qualquer outro lugar. Muito bom mesmo. Meus parabéns. Agora toda vez que alguém me perguntar "mais o que é partição extendida ?" eu vou mandar ler esse artigo. Muito bom.


[5] Comentário enviado por atheist em 18/04/2006 - 18:44h

Bom artigo. A propósito, você sabe como montar partições no formato reiser4 ? Tava lendo um tuto na net, onde ele falava que era só recompilar com suporte ao dito cujo. Entretanto, posso ter problema de sanidade mental, mas tenho certeza que não vi o suporte para reiser4 ou "reiserfs4", no meu kernel 2.6.12, meu propósito era montar uma partição primária de 6 Gb que uso para testes, nesta, instalei o Underground Desktop (tava com o freeBSD), que utiliza-se desse file system. Sei tambem que tem que instalar o reiser4progs depois da compilação, se você souber de algo, conta ai, pois não achei nada de útil na net.
Quero montar essa partição no meu Slackware/debian/gentoo que estão no mesmo HD.

Obrigado, no aguardo e abraço !

[6] Comentário enviado por removido em 18/04/2006 - 20:01h

10!!!!!!!!!!!!!!

[7] Comentário enviado por upaf em 18/04/2006 - 21:19h

davidsonpaulo,

O artigo está excelente!!! Parabéns!!!
Gostaria de mais detalhes relacionado ao ReiserFS e NFS, isso quer dizer que ReiserFS não funciona muito bem com o Samba? Li alguma coisa dizendo que alguns bugs foram consertados após o kernel 2.4.10, isso procede?
Nesse caso seria melhor usar o EXT3 ou XFS? No Handbook do Gentoo li que o XFS não é muito bom caso haja alguma falha na alimentação de energia ou erro de hardware...
http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=1&chap=4

Valeu!

[8] Comentário enviado por removido em 19/04/2006 - 00:03h

upaf, sei que não perguntou a mim, mas ... eu uso o reiserfs com o samba e funciona perfeitamente... nenhum problema, isso testado em várias máquinas de várias versões de linux (kurumin, Ubuntu 5.10, CentOS 4.3, Conectiva 10) e Windows (98,2000,XP). Mesmo o CentOS que não suporta o reiserfs de forma nativa, consegue acessar/gravar em diretórios samba de linux instalado em reiserfs. Ah! testado em uma dezena de kernel(s) do 2.4 ao 2.6.

[9] Comentário enviado por DooM em 19/04/2006 - 10:17h

Mitre,

A seção de filesystems encontra-se no seguinte link:
http://www.vivaolinux.com.br/artigos/verSubCategoria.php?codigo=4

Upaf,
Eu tenho um artigo na fila de espera do VOL onde matei todas as minhas duvidas sobre Reiser e entao resolvi escrever alguma coisa pra ajudar a comunidade. Conclui que o ReiserFs é muito bom e um excelente sistema de arquivos. Se voce quiser me mande um email e eu te encaminho o artigo.
No link acima tambem existe muitos artigos descrevendo diversos fyle sistems entre eles o Reiser.
Abraço.

[10] Comentário enviado por lipse em 19/04/2006 - 10:49h

Davidson,

Parabéns pelo artigo. Excelente. Boa linguagem, bom conteúdo, enfim, ótimo.

Só um detalhe, nos trechos abaixo, há uma coisinha errada, olhe:

"...CD-ROM's, CD-RW's e DVD's não têm partições, portanto são identificados apenas como /dev/hdax, sendo "x" a letra que representa o número do disco...os discos SCSI são discos...CD-RW's e gravadoras de DVD não têm partições, sendo identificadas apenas como /dev/sdax, sendo "x"? a letra que representa o número do disco..."

No caso, você já inseriu as letras. Na verdade o certo é:

/dev/hdx
/dev/sdx

Abraço.

[11] Comentário enviado por davidsonpaulo em 19/04/2006 - 10:54h

lipse,

Erro de digitação, já corrigi o artigo. Muito obrigado pela observação.

Abraços

[12] Comentário enviado por lipse em 19/04/2006 - 11:14h

Por nada.

Estava observando aqui e meu drive de CD (gravador) foi reconhecido no dispositivo /dev/sr0.

Uso kernel 2.4.x, isso é normal? O /dev/srx representa que tipo de dispositivo?

Obrigado.

[13] Comentário enviado por DooM em 19/04/2006 - 16:15h

Lipse,
O /dev/sr0 indica que é o primeiro drive de cd-rom utizando SCSI e nao IDE...
Se eu nao me engano as vezes ele tambem tem o nome de scd.

[14] Comentário enviado por rdaraujo em 23/04/2006 - 13:01h

Uma pergunta um pouco off e noob:
como permitir que usuarios não-root possam montar e desmontar partições e dispositivos, sem forçar a barra?

[15] Comentário enviado por lipse em 24/04/2006 - 09:58h

Rdaraujo,

Editando o /etc/fstab. Nele há linhas assim:

/dev/hdb1 /mnt/hdb1 reiserfs noauto,exec 0 0

Isso indica que o dispositio /dev/hdb1 deve ser montado no diretório /mnt/hdb1, é formatado em reiserfs, o parâmetro "noauto" indica que não deve ser montado durante o boot etc.

Pra que usuários comuns possam montar o dispositivo sem poderes de root, basta adicionar o parâmetro "users" deixando a linha citada assim:

/dev/hdb1 /mnt/hdb1 reiserfs noauto,users,exec 0 0

Abraços.

[16] Comentário enviado por agk em 24/04/2006 - 14:17h

Excelente artigo, bem explicado, excelente para iniciantes e quem não conhece do assunto. Quanto ao problema do Reiferfs com NFS eu desconhecia esse problema, quais são os bugs e o que acontece quando se usa NFS em partições Reiserfs?
[ ]'s

[17] Comentário enviado por rwar em 24/04/2006 - 15:00h

Apenas um detalhe: fui procurar as referências no Guia Bozo Linux, porém um erro de DNS me foi retornado:

This Account Has Been Suspended
Please contact the billing/support department as soon as possible.

O domínio foi migrado?

[18] Comentário enviado por rwar em 24/04/2006 - 15:00h

Esqueci de comentar que, embora o erro acima me foi retornado nas referências, o artigo está muito bom! Parabéns!

[19] Comentário enviado por davidsonpaulo em 24/04/2006 - 15:04h

rwar,

O servidor não foi pago em dia pelo patrocinador, então o domínio foi suspenso. O pagamento já foi efetuado, então em breve o domínio deve voltar ao ar.

Abraços

[20] Comentário enviado por marlichsi em 26/04/2006 - 10:41h

Agora, uma dúvida que tá me pegando, que tem relação com particionamento.

Ontem estava implementando mrtg prá mostrar espaço ocupado/livre de disco, e verifiquei que os valores que o comando 'df' mostravam não eram a real situação.

Verifiquei na net sobre isso e, realmente, acontece em várias distribuições e sistemas operacionais que utilizam o comando. Alguém sabe alguma razão?

Faça o teste: total da partição - (menos) utilizado. O valor não bate com o livre. Logo, o percentual de utilizado está incorreto.

[21] Comentário enviado por lipse em 26/04/2006 - 13:51h

Marlichsi,

Na verdade é um engano seu e dos outros que relataram o problema (já foi meu tb). Devido a um arredondamento que o "df" faz, acontece isso, porém, o valor retornado no campo "espaço disponível" é verdadeiro. Isso só acontece em partições grandes, onde o "df" menospreza alguns megabytes. Veja:

lipse@dragon:[lipse]$ df -h
Sist. Arq. Tam Usad Disp Uso% Montado em
/dev/root.old 2,2M 380K 1,8M 18% /initrd
/dev/root 5,1G 2,1G 3,0G 42% /
tmpfs 236M 0 236M 0% /dev/shm
/dev/hdb2 50G 44G 6,6G 87% /mnt/hdb2
lipse@dragon:[lipse]$

Neste exemplo ele parece errar o cálculo do espaço na partição /dev/hdb2, pois 50GB menos 44GB é apenas 6GB e não 6,6GB, mas, se você der o comando sem o parâmetro "-h", verá que o cálculo é exato:

lipse@dragon:[lipse]$ df
Sist. Arq. 1K-blocos Usad Dispon. Uso% Montado em
/dev/root.old 2182 380 1802 18% /initrd
/dev/root 5245020 2155532 3089488 42% /
tmpfs 241612 0 241612 0% /dev/shm
/dev/hdb2 52426520 45510896 6915624 87% /mnt/hdb2
lipse@dragon:[lipse]$

Isso acontece porque o "df" "acha" que de 43,4GB para 44GB, é muito pouco, por isso arredonda.

Espero ter explicado de forma comprensível.

Lipse

[22] Comentário enviado por jasc em 30/07/2006 - 00:51h

Não consiguí acessar corretamente minha partição do windows XP com o meu Conectiva 10. Eu vejo mas não gravo nem copio nada de lá. Como faço para montar corretamente essa partição? ela é hda1

Desde já obrigado

Jasc

[23] Comentário enviado por brunojbpereira em 03/02/2007 - 21:09h

Excelente artigo, davidson. aprendo cada dia mais um pouco sobre este ótimo sistema operacional lendo artigos de qualidade como este. parabéns pelo seu trabalho.

[24] Comentário enviado por vvvdracula em 09/02/2007 - 08:13h

Um guia prático para entender o funcionamento de sistemas de particionamento
obrigado pela contribuição para nós
;)

[25] Comentário enviado por rbn_jesus em 23/03/2007 - 17:03h

Estou com um problema em LVM, creio que vc possa me ajudar...
tenho uma configuração lvm em apenas 1 dispositivo, da seguinte forma:
xda1 - /boot - ext3
xda2 - lvm (lvm1 - / - ext3; lvm2 - swap)

como recupero as informações da 1ª partição do lvm neste despositivo?

[26] Comentário enviado por rod.muller em 16/10/2007 - 22:37h

Olá pessoal!

Estou um pouco apavorado!!!

Tenho um servidor samba rodando com o mandriva 2007. O problema que ocorre
é que acho que deu algum problema no sistema de arquivos ou no HD porque
dá a seguinte mensagem quando tento entrar em safe mode (em modo normal
nem sobe, fica somente a tela azul):

creating root device
trying to resume from ;dev;sda5
no suspend signature on swap, not resuming
echo: cannot open /proc/suspend2/do_resume for wrire:2
mounting root filesystem /dev;root
VFS: Can´t find ext3 filesystem on dev sda1
mount: error 22 mounting ext3 flags defauts
kernel panic - not sysning: attempted to kill init!


Já tentei rodar o fsck e nada.

Estou apavorado porque o meu backup não esta atualizado.

O que posso fazer para tentar resolver?

Obrigado desde já!

Rodrigo

[27] Comentário enviado por luiscarlos em 28/10/2007 - 11:27h

tenho um hp compaq nx9005 e nao consigo montar o dvd, jah tentei todos os devices como sr sda hdx e nada, estranho que na BIOS ele nao consta mas no windows ele funciona e eu consigo dar boot no cd com ele pra iniciar a instalação.

[28] Comentário enviado por E.taffarel em 16/11/2007 - 15:47h

Parabéns pelo Artigo, muito bem explicado, fácil de aprender com a linguagem utilizada.

[29] Comentário enviado por doradu em 08/02/2010 - 18:41h

já existe o ext4

[30] Comentário enviado por adilsom em 24/02/2010 - 10:37h

ola, tenho um servidor dedicado com que tinha instalado centos 5.4 64bits, tive que pedir ao datacenter para reinstalar, e pedi centos5 32bits.

O hd que estava, pedi pra ficar como secundario, foi o que eles fizeram, mas quando tento montar o hd secundario da o seguinte erro:

[root@ns1]# mount /dev/sda2 /disco2
mount: /dev/sda2 already mounted or /disco2 busy

Por favor ajuda, tenho todo meu sistema neste HD, e o datacenter simplismente diz que nao pode ajudar.

Obrigado


Adilson Magnus
http://magnussolution.com

[31] Comentário enviado por davidsonpaulo em 24/02/2010 - 11:27h

Adilson,

Se o disco é secundário, sua identificação deve ser sdb (ou sdc ou sdd) e não sda. Experimente usar sdb2, sdc2 e sdd2 para ver se algum deles corresponde ao disco antigo.

[32] Comentário enviado por adilsom em 20/03/2010 - 09:03h

root@pbx:~ $ fdisk -l

Disk /dev/hda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/hda1 * 1 13 104391 83 Linux
/dev/hda2 14 9729 78043770 8e Linux LVM

Disk /dev/sda: 160.0 GB, 160040803840 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2 14 19457 156183930 8e Linux LVM


Pelo que entendo seria sda2,

Mas da este erro:

root@pbx:~ $ mount -t ext3 /dev/sda2 /mnt/hd_slave
mount: wrong fs type, bad option, bad superblock on /dev/sda2,
missing codepage or other error
In some cases useful info is found in syslog - try
dmesg | tail or so


obrigado



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts