Difference between revisions of "Dd (command)"
Jump to navigation
Jump to search
↑ http://man7.org/linux/man-pages/man1/dd.1.html
↑ https://www.gnu.org/software/coreutils/manual/html_node/dd-invocation.html#dd-invocation
↑ https://www.gnu.org/software/coreutils/manual/html_node/dd-invocation.html#dd-invocation
↑ https://superuser.com/a/470957
Line 9: | Line 9: | ||
== Examples == | == Examples == | ||
− | * Write a 10G file with random data: 10 G (<code>bs=10G count=1</code>), with random data (<code>[[/dev]]/urandom</code>)<ref>https://superuser.com/a/470957</ref>: | + | * Write a 10G file with random data: 10 G (<code>bs=10G count=1</code>), with random data (<code>[[/dev]]/[[urandom]]</code>)<ref>https://superuser.com/a/470957</ref>: |
<code>dd iflag=fullblock if=/dev/[[urandom]] of=sample_output_file.txt bs=10G count=1 status=progress</code> | <code>dd iflag=fullblock if=/dev/[[urandom]] of=sample_output_file.txt bs=10G count=1 status=progress</code> | ||
<pre> | <pre> |
Revision as of 14:02, 23 December 2019
dd
[1][2] is a command-line utility for Linux and Unix-like operating systems used to copy or create files on block devices (HDD).
Warning: write operations will not ask for confirmation if you are overwriting an existing file.
Options:
oflag=sync
[3]iflag=[fullblock|nocache]
Examples
dd iflag=fullblock if=/dev/urandom of=sample_output_file.txt bs=10G count=1 status=progress
10737418240 bytes (11 GB, 10 GiB) copied, 66 s, 162 MB/s 1+0 records in 1+0 records out 10737418240 bytes (11 GB, 10 GiB) copied, 66.4367 s, 162 MB/s
- Write a 10G with zeroes: 10 G (
bs=10G count=1
), file with "zeroes" (/dev/zero
):
dd iflag=fullblock if=/dev/zero of=sample_output_file.txt bs=10G count=1 status=progress
10737418240 bytes (11 GB, 10 GiB) copied, 66 s, 162 MB/s 1+0 records in 1+0 records out 10737418240 bytes (11 GB, 10 GiB) copied, 66.4367 s, 162 MB/s
dd iflag=fullblock if=/dev/zero of=sample_output_file.txt bs=10G count=1 dd: memory exhausted by input buffer of size 10737418240 bytes (10 GiB)
Activities
Basic
- Write a 10GB file with random data and review your disk performance:
dd iflag=fullblock if=/dev/urandom of=sample_output_file.txt
- Read Linux I/O Performance Tests using dd: https://www.thomas-krenn.com/en/wiki/Linux_I/O_Performance_Tests_using_dd
- /Benchmark disk performance using dd/
Advanced
- Understand iflags, such us fullblock
iflag=fullblock
meaning - Try to interrupt/kill your command:
dd iflag=fullblock if=/dev/urandom of=sample_output_file.txt bs=10G count=1
and explain outcome.
See also
- cp and rsync
- IO performance:
iotop, iostat, sar -d, fio, nmon, vmstat -d
,dd
,nmon
,stress
- pv
- Benchmarking tools
fallocate
: fallocate -l 24M NEW_filename
Advertising: