como usar setores “Inutilizáveis” fora dos limites de partição definidos

6

Qual pode ser uma maneira conveniente de armazenar alguns dados ocultos na área "Inutilizável" após a última partição ou em qualquer lugar fora dos limites de partição definidos? Por exemplo, fazendo com que apareça como /dev/___ pronto para E / S para meus programas de espaço do usuário.

Digamos que eu não me importo se os programas de particionamento ou os gerenciadores de inicialização não reconhecem que pode haver algo importante lá e pisar nele; Eu faria uma verificação de integridade da estrutura & recriar os dados conforme necessário.

                             cfdisk (util-linux 2.19.1)

                                Disk Drive: /dev/sda
                         Size: 160041885696 bytes, 160.0 GB
               Heads: 255   Sectors per Track: 63   Cylinders: 19457

 Name     Flags     Part Type   FS Type        [Label]        Size (MB) 
 --------------------------------------------------------------------------------
 sda1                Primary    vfat           [ACER]         25827.38   
 sda2                Primary    ntfs                          90033.92
                                       Unusable               13193.35
 sda3                Primary    ext4                          16508.14
 sda4     Boot       Primary    ext4                          14476.50
                                       Unusable                   2.62  *
    
por Marcos 31.01.2012 / 11:51

3 respostas

3

Você deve definir apenas uma partição para conter o espaço. Você também deve deixar os 63 primeiros setores do disco sozinho ou você irá quebrar seu gerenciador de inicialização (mais problemático do que o carregador de boot quebrar seus dados).

Você pode usar losetup para criar um dispositivo de loop e apontá-lo para a seção específica da unidade, se você realmente quiser:

losetup -o start --sizelimit size /dev/loop0 /dev/sda

Onde start e size são o deslocamento inicial e o tamanho da área em bytes.

É claro que, se você errar os valores, você acabará com o seu FS.

    
por 31.01.2012 / 21:56
2

Eu criaria um pequeno sistema de arquivos no espaço desperdiçado. Para inicializar o processo:

  1. Crie um arquivo regular (usando dd ) que corresponda ao tamanho da região "inutilizável" da unidade.
  2. Use losetup para associar o arquivo regular a um dispositivo de loop.
  3. Use mkfs para criar um sistema de arquivos no dispositivo de loop.
  4. Use losetup para desanexar o dispositivo de loop.
  5. Use dd para copiar o arquivo regular para a região "inutilizável" da unidade.

Sempre que você quiser acessar os dados:

  1. Copie a região "inutilizável" da unidade (usando dd ) para um arquivo normal.
  2. Use losetup para associar o arquivo a um dispositivo de loop.
  3. Use fsck no dispositivo de loop para verificar a integridade do sistema de arquivos. Se algo pisou no sistema de arquivos, você terá que repetir as etapas de bootstrapping. Nada deve ser escrito nessa área do disco, portanto, se o sistema de arquivos estiver sendo danificado, provavelmente significa que você está sobrescrevendo parte de uma partição de disco ativa. (!)
  4. Use mount para montar o dispositivo de loop como um sistema de arquivos.
  5. Acesse os dados.
  6. Use umount para desmontar o sistema de arquivos.
  7. Use losetup para desanexar o dispositivo de loop.
  8. Use dd para copiar o arquivo normal de volta para a região "inutilizável" da unidade.

Você pode acessar a unidade inteira pelo nome do dispositivo sem os números da partição, no seu caso /dev/sda . Você precisará usar o parâmetro dd de skip= para ler a unidade e seek= para gravar no local correto. Se você obtiver o bloco, procure contar errado ao gravar na unidade, você sobrescreverá uma das partições do seu disco.

    
por 31.01.2012 / 20:22
1

O problema com sua tabela de partição é que ela contém 4 partições primárias que não preenchem o disco. Essa é a razão pela qual o espaço restante é marcado como "inutilizável", porque não há como adicionar uma partição para usá-lo.

Se você substituir uma das suas partições por uma partição "estendida", você poderá criar mais de 4 partições e usar o disco inteiro sem problemas.

    
por 31.01.2012 / 21:28