수정해야 할 dd 명령은 다음과 같습니다.
dd if=/tmp/nfs/image.dd of=/dev/sda bs=16k
pv
이제 NFS 서버에서 복사 속도를 제한하는 데 사용하고 싶습니다 . 어떻게 해야 하나요? 이렇게 하면 작업이 완료될 것이라는 것은 알지만 --rate-limit
파이프라인을 어떻게 구성해야 할지 잘 모르겠습니다.
답변1
어떤 이유로든 당신이~ 해야 하다16K 크기의 블록을 사용하여 블록 장치를 읽습니다.
dd if=/mnt/nfs bs=16k | pv -L <rate> > /dev/sda
초당 전송이 허용되는 최대 바이트 수는 어디에 <rate>
있습니까? 또는 K, M, G, [...]가 지정된 경우 초당 전송이 허용되는 최대 킬로바이트, 밀리바이트, 기가바이트 수,[... ] 숫자.
그러나 파일을 읽는 데 실제로 16K 블록 크기를 사용할 필요가 없다면 pv
블록 장치를 읽을 수 있는 를 사용하면 됩니다.
pv -L <rate> /mnt/nfs > /dev/sda
답변2
여기서는 필요하지 않습니다 dd
. pv
입력에서 출력으로의 삽질이 이미 완료되었습니다.
pv -L 1m </tmp/nfs >/dev/sda
일부 웹 페이지에서 이 내용을 읽었더라도 dd
장치에 액세스하기 위해 이를 사용할 필요는 없습니다. 모든 마법이 거기에 있습니다 /dev/stuff
.
/tmp/nfs
참고: 이 명령은 디스크 이미지이고 이를 디스크에 쓰려는 경우에 적합합니다 /dev/sda
. 비율 제한을 제외하고 질문의 명령과 동일합니다. 관련된 NFS 서버가 없는 것 같습니다.