AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / unix / Perguntas / 558262
Accepted
CcVHKakalLLOOPPOkKkkKk
CcVHKakalLLOOPPOkKkkKk
Asked: 2019-12-21 06:16:42 +0800 CST2019-12-21 06:16:42 +0800 CST 2019-12-21 06:16:42 +0800 CST

Por que usar dd em vez de cp para criar disco inicializável?

  • 772

Existe alguma diferença entre fazer ie dd bs=4M if=archlinux.iso of=/dev/sdx status=progress oflag=syncou fazer cp archlinux.iso /dev/sdx && synce razão para usar um sobre o outro? (além da bela barra de progresso em dd)

dd cp
  • 2 2 respostas
  • 1488 Views

2 respostas

  • Voted
  1. Best Answer
    Eduardo Trápani
    2019-12-21T06:56:09+08:002019-12-21T06:56:09+08:00

    Uma diferença é a eficiência e, portanto, a velocidade. Por exemplo, você poderia pegar os bytes um a um e copiá-los para o dispositivo, com catse tivesse a implementação idealizada ou em sistemas mais antigos, por exemplo BSD4 :

    cat archlinux.iso > /dev/sdx
    

    Nestas implementações catirá mover cada byte de forma independente. Esse é um processo lento, embora na prática haja buffers envolvidos. Observe que as catimplementações modernas lerão blocos (veja abaixo).

    Com um bomdd tamanho de bloco será mais rápido.

    Com cpele depende do tamanho do buffer usado por cp(não sob seu controle) e outros buffers no caminho. A eficiência está entre a implementação idealizada cate ddcom o tamanho ótimo do bloco.

    Na prática, embora moderno cat, cpele solicitará ao sistema o tamanho de bloco preferido : st_blksize . Observe que isso não precisa ser o tamanho de bloco ideal .

    Uma analogia: é como despejar o conteúdo de um copo em outro copo.

    • idealizado catfaria isso uma gota de cada vez.

    • ddusará uma colher e você definirá exatamente o tamanho da colher (os limites do sistema se aplicam)

    • cpe o moderno catusará sua própria colher ( stat -f -c %s filenamedirá o tamanho dela).

    • 10
  2. user339730
    2019-12-26T17:27:44+08:002019-12-26T17:27:44+08:00

    Eu uso principalmente por causa do status=progressque você mencionou; o que posso dizer, estou impaciente e preciso saber :-)

    Mesmo se você esqueceu de adicionar isso e iniciou o trabalho, você pode enviar um sinal SIGUSR1 e ele imprimirá as estatísticas de E/S atuais para stderr (que, a menos que você o redirecione, é o seu terminal).

    • 0

relate perguntas

  • Determine se duas imagens iso são iguais

  • Como posso copiar um diretório e renomeá-lo no mesmo comando?

  • Como faço uma duplicata de uma árvore de diretórios com links simbólicos duplicados relativamente?

  • cp se comporta de maneira estranha quando . (ponto) ou .. (ponto ponto) são o diretório de origem

  • Como acelerar o dd no macOS High Sierra?

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Possível firmware ausente /lib/firmware/i915/* para o módulo i915

    • 3 respostas
  • Marko Smith

    Falha ao buscar o repositório de backports jessie

    • 4 respostas
  • Marko Smith

    Como exportar uma chave privada GPG e uma chave pública para um arquivo

    • 4 respostas
  • Marko Smith

    Como podemos executar um comando armazenado em uma variável?

    • 5 respostas
  • Marko Smith

    Como configurar o systemd-resolved e o systemd-networkd para usar o servidor DNS local para resolver domínios locais e o servidor DNS remoto para domínios remotos?

    • 3 respostas
  • Marko Smith

    apt-get update error no Kali Linux após a atualização do dist [duplicado]

    • 2 respostas
  • Marko Smith

    Como ver as últimas linhas x do log de serviço systemctl

    • 5 respostas
  • Marko Smith

    Nano - pule para o final do arquivo

    • 8 respostas
  • Marko Smith

    erro grub: você precisa carregar o kernel primeiro

    • 4 respostas
  • Marko Smith

    Como baixar o pacote não instalá-lo com o comando apt-get?

    • 7 respostas
  • Martin Hope
    user12345 Falha ao buscar o repositório de backports jessie 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl Por que a maioria dos exemplos do systemd contém WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky Como exportar uma chave privada GPG e uma chave pública para um arquivo 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll status systemctl mostra: "Estado: degradado" 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim Como podemos executar um comando armazenado em uma variável? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S Por que /dev/null é um arquivo? Por que sua função não é implementada como um programa simples? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 Como ver as últimas linhas x do log de serviço systemctl 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - pule para o final do arquivo 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla Por que verdadeiro e falso são tão grandes? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis Substitua a string em um arquivo de texto enorme (70 GB), uma linha 2017-12-30 06:58:33 +0800 CST

Hot tag

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve