답변:
dd if=/dev/shm/test of=/data/sdb/test bs=1G oflag=append conv=notrunc
그것이 당신이 사용해야했던 것입니다.
참고 : https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=373736
count=1
옵션이 없으면 사용 가능한 모든 공간이 추가됩니다.
리눅스 커널 4.1 FALLOC_FL_INSERT_RANGE
옵션이 추가되었습니다. 에서 fallocate(2)
man 페이지 :
모드에서 FALLOC_FL_INSERT_RANGE 플래그 (Linux 4.1부터 사용 가능)를 지정하면 기존 데이터를 덮어 쓰지 않고 파일 크기 내에 구멍을 삽입하여 파일 공간을 늘립니다. 구멍은 오프셋에서 시작하여 len 바이트 동안 계속됩니다. 파일 내부에 구멍을 삽입하면 오프셋에서 시작하는 파일의 내용이 len 바이트만큼 위쪽으로 (즉, 더 높은 파일 오프셋으로) 이동합니다. 파일 내부에 구멍을 삽입하면 파일 크기가 len 바이트 증가합니다.
그리고 최근에이 옵션 지원 이 다음에 추가 되었습니다 util-linux
.
-i, --insert-range Insert a hole of length bytes from offset, shifting existing data.
따라서 util-linux
버전 2.30이 릴리스되고 Linux 배포판이이 버전으로 업데이트되면 다음을 실행하여 플래시에서 파일 크기를 늘릴 수 있습니다.
fallocate -i -l 1G -o 128M /path/to/file
128M
현재 파일 크기는 어디에 있습니까 ?
스파 스 홀을 파일에 추가하는 더 쉬운 방법이 있습니다.
truncate
dd보다 훨씬 빠릅니다. 파일을 10 바이트로 늘리려면 다음을 사용하십시오.truncate -s +10 file.txt