5 utilidades do comando dd no Linux

5 utilidades do comando dd no linux

Um dos comandos que consideramos mais formidável no mundo Linux é o comando dd. Neste artigo, 5 utilidades do comando dd no Linux mostraremos o que é possível fazer com este comando tão simples e ao mesmo tempo tão poderoso. Assim, aprenda como usar o comando dd no Linux em 5 exemplos.

5 utilidades do comando dd no Linux

O dd, que são as iniciais de Data Definition, é um utilitário de linha de comando que em primeiro lugar, tem como principal função converter e copiar arquivos.

A sintaxe básica deste comando é:

Terminal
dd if=arquivo_de_entrada of=arquivo_de_saida [opções]

Conhecendo o comando dd no Linux

  • if = Input file, ou seja, arquivo de entrada, portanto também pode ser o caminho completo do arquivo.
  • of = Output file, ou seja, arquivo de saída, portanto também pode ser o caminho completo do arquivo.
  • [opções] – São parâmetros opcionais para acompanhamento de status ou formatação de saída do comando. Entretanto para mais informações, consulte o manual do dd em “man dd“.

Por exemplo, abaixo temos o diretório /teste e efetuaremos a cópia do arquivo teste_dd para teste_dd2:

Primeiro eu entrei no diretório teste que foi criado com o comando mkdir e depois entrei no diretório com o comando:

Terminal
cd /teste

Depois eu criei um arquivo de exemplo, e coloquei o nome de teste_dd. Este arquivo seria, por exemplo, uma ISO de alguma distribuição Linux. Mas, eu quero copiar o teste_dd o mesmo diretório, no entanto com um nome diferente, que neste exemplo seria o teste_dd2:

Então, tudo ficaria assim:

Terminal
dd if=teste_dd of=teste_dd2

A saídas do comando dd no Linux, seria assim:

Depois, confira se o arquivo foi mesmo criado. Abaixo, mostra que o sintaxe do comando dd que executamos fez exatamente o que eu gostaria:

Repare que foi feito a cópia do arquivo teste_dd para teste_dd2 com sucesso, mantendo suas permissões. Mas aí você deve estar se perguntando: Isso não é a mesma coisa que fazer uma cópia com o comando cp?

Comando dd não faz a mesma coisa que o comando cp no Linux?

Pois bem, em sistemas Unix/Linux os dispositivos de hardware são tratados como arquivos e também temos alguns “arquivos especiais”, como por exemplo /dev/random e /dev/zero. Com essa “mágica”, podemos fazer várias manobras no Linux, tais como:

1 – Criar arquivo temporário de SWAP com o comando dd

Neste artigo mostramos como criar um arquivo temporário para aumentar a memória SWAP do seu equipamento. Este procedimento pode ser útil quando é necessário efetuar aumento temporário de memória SWAP por questões de cache. Geralmente, essa situação ocorre em sistemas de gerenciamento de banco de dados ou quando o equipamento está com alto consumo de memória RAM e temporariamente precisamos de memória SWAP para “desafogá-lo”.

Também lembramos que memória SWAP pode ter uma velocidade bem inferior a memória RAM, já que o acesso a memória SWAP é em disco rígido (exceto nos casos de SSD).

2 – Criar arquivos de tamanhos determinados com o comando dd

Querendo testar algum alarme de monitoração relacionado a determinada partição? Precisa criar algum arquivo de tamanho determinado para algum teste de backup? Basta executar o comando dd com os parâmetros abaixo:

Terminal
dd if=/dev/zero of=arquivo_saída bs=1GB count=1

Explicando o uso do comando dd no Linux para teste de backup!

if=/dev/zero – É um arquivo especial que retorna caracteres nulos e neste caso, acaba preenchendo o arquivo em “of”.
of=arquivo_saída – É o arquivo a ser criado, portanto também podemos passar o caminho completo.
bs=1GB – Block size ou tamanho do bloco. Inserimos aqui a quantidade de blocos que queremos no arquivo, também podendo ser em GB, MB e KB.
count=1 – Contador. Multiplica a quantidade de block sizes (bs).

No exemplo acima criamos o arquivo arquivo_saída com 1 GB:

Saída do Terminal
[root@sempreupdate teste]# dd if=/dev/zero of=arquivo_saida bs=1GB count=1
1+0 registros de entrada
1+0 registros de saída
1000000000 bytes (1,0 GB) copiados, 1,96409 s, 509 MB/s
[root@sempreupdate teste]# ls -lh
total 954M
-rw-r–r–. 1 root root 954M Fev 4 17:20 arquivo_saida

3 – Como testar velocidade de escrita e leitura em dispositivos SSD, HDD ou pendrive com o comando dd no Linux!

Neste artigo demonstramos como medir a velocidade de escrita e leitura em dispositivos SSD, HDD ou pendrive.

4 – Como gravar imagens ISO com o comando dd no Linux

Outro artigo é como montar uma imagem ISO bootável em um pendrive com o comando dd no Linux.

5 – Como destruir ou inutilizar mídias de forma segura com o comando dd no Linux

Com o propósito de inutilizar mídias físicas de forma segura, podemos executar o comando dd com uma das opções abaixo:

ATENÇÃO: Esteja atento ao que está fazendo, os comandos abaixo apagarão os dados no destino, ou seja em /dev/sdc!
Terminal
dd if=/dev/random of=/dev/sdc

ou você também utilizar o comando dd assim:

Terminal
dd if=/dev/zero of=/dev/sdc

Explicando o comando para destruir ou inutilizar mídias com o comando dd no Linux:

  • if=/dev/random – É um arquivo especial que retorna números aleatórios, portanto vai preencher todo o /dev/sdc com esses números aleatórios, destruindo todos os dados. Para este efeito, também temos as opções /dev/urandom e /dev/arandom.
  • if=/dev/zero – É um arquivo especial que retorna caracteres nulos, portanto vai preencher todo o /dev/sdc de caracteres nulos, destruindo todos os dados.

Em resumo, esperamos que este artigo 5 utilidades do comando dd no Linux faça com que você utilize mais esse comando no seu dia a dia. Dúvidas, críticas, sugestões? Entre em contato no nosso grupo no Telegram.

Até a próxima!