[Linux / dd] 리눅스 dd 명령어로 I/O 성능 테스트, 리눅스 읽기/쓰기 성능 테스트 하기
1. dd 명령어
dd 명령어는 리눅스의 파일시스템에서 블록 단위로 파일을 복사하거나 변환할 수 있는 명령어입니다.
아래의 dd 명령어의 옵션들을 보면 conv와 같이 변환할 형식이나 count 같이 블록 단위를 지정할 수 있는 옵션이 있습니다.
그렇지만 실제로 dd 명령어는 디스크의 I/O 속도를 측정할 때, 디스크가 가진 읽기/쓰기 성능을 측정할 때 자주 사용됩니다.
2. dd 명령어를 이용하여 I/O 성능 측정
df -h 로 현재 파일 입출력을 확인할 위치를 확인합니다.
현재 루트 디렉토리 '/'로 사용하고 있는 /dev/mapper/ubuntu--vg-ubuntu--lv 에서 진행하겠습니다. (VirtualBox VM)
쓰기(Write) 속도 테스트
dd if=/dev/zero bs=1M count=1024 of=writetest_file oflag=direct
위의 명령어에서 쓰인 옵션을 살펴보자면
if : 입력 파일, /dev/zero의 경우 리눅스 특수파일로 파일 내용을 0x00 로 채워줌
of : 출력파일, /dev/null의 경우 리눅스 특수파일로 파일로 존재하지만 실제로는 아무것도 없는, 주로 리다이렉션으로 무언가 버릴 때 사용.
bs: 한번에 읽고 쓸 파일크기 - 1MB
count: 입출력을 반복할 횟수 - 1MB를 1024 반복하므로 1GB를 쓸 때까지 반복
oflag: 는 캐시를 사용하지않고 직접 Read/Write
명령어를 실행하면 잠깐의 시간이 지난 후 결과가 나타납니다.
1GB가 copied 되었고 237MB/S 가 나오네요.
읽기(Write) 속도 테스트
이번에는 위의 쓰기 테스트에서 쓰인 파일을 읽기 테스트로 측정해보겠습니다.
파일의 내용을 /dev/null로 버리는 형태로 읽기 테스트가 진행됩니다.
dd if=writetest_file of=/dev/null bs=1024
1GB가 읽어졌고 286MB/S 의 속도가 측정되었습니다.
본 포스팅의 내용 및 이미지를 무단 전재, 재배포 또는 복사를 금지합니다.
인용 시 출처와 같이 공개해주세요!
도움이 되셨다면 댓글 또는 공감 부탁드립니다!
'IT > Linux_리눅스' 카테고리의 다른 글
[Linux / netstat] netstat 명령어로 리눅스 포트를 사용중인 프로세스 확인하기 , Ubuntu 20.04 netstat 사용 (0) | 2023.02.19 |
---|---|
[Linux / 디스크] 리눅스 df, du 명령어의 차이와 사용법 (0) | 2023.02.14 |
[Linux / tee] 리눅스 tee 명령어로 파일 끝에 내용 붙이기 / 파일 끝에 텍스트 붙이기 (0) | 2023.01.17 |
[Linux / 명령어] 리눅스 로그를 비우는 Null copy(널카피)와 /dev/null (0) | 2023.01.14 |
[Linux / Ubuntu] Ubuntu 리눅스 apt의 update 와 upgrade의 차이 (0) | 2022.12.24 |
댓글