Não consigo dd / dev / kmem no Ubuntu Jaunty

3

Eu estou disposto a despejar o conteúdo da RAM física em um arquivo simples na minha caixa do Ubuntu, mas tudo que consigo é um arquivo de 1 MB usando dd (que é estranho, pois tenho 4GB de RAM!).

O comando que estou usando é dd if=/dev/mem of=/usr/dd.mem . Eu também tentei usar / dev / kmem como um arquivo de entrada, mas eu recebo um erro de arquivo não encontrado (e sim, o arquivo está no diretório / dev)

Sei que no Windows você pode usar o parâmetro \. \ PhysicalMemory \ como um arquivo de entrada.

Alguém tem uma ideia de como eu posso fazer isso no Linux?

    
por Luke Bibby 09.11.2009 / 11:17

2 respostas

2

É um recurso.

O Ubuntu é distribuído com a opção de kernel CONFIG_STRICT_DEVMEM . Isso restringe a leitura de /dev/mem acima de 1Mb físico. Você deve encontrar uma entrada correspondente em /var/log/messages que confirme a restrição.

Existem algumas opções para prosseguir. Mas provavelmente o easist e mais óbvio será recompilar seu kernel sem CONFIG_STRICT_DEVMEM .

    
por 09.11.2009 / 11:53
2

CONFIG_STRICT_DEVMEM foi habilitado em sua máquina, você provavelmente está recebendo um erro de "Operação não permitida" (um aparte: vale a pena copiar e colar a saída de comandos enquanto você os executa, ao invés de apenas descrever o que acontece! ). Este é um parâmetro do kernel que normalmente não é (embora existam patches para permitir isso) sintonizável através de um sysctl. Desativar requer reconstruir seu kernel.

Consulte o link para obter mais informações e soluções sobre o que você pode fazer para tenha acesso à memória.

    
por 09.11.2009 / 11:52