Files
如何使用命令行修剪文件?
以下 Python 程式碼的控制台等效項是什麼:
target = file("disk", "w") # create a file target.seek(2*1024*1024*1024) # skip to 2 GB target.write("\0") target.close()
也許一些 dd 咒語?這個想法是製作一個外觀大小為 2 GB 的文件,以用於例如虛擬化。
kvm disk -cd whatever.iso #Only allocate space as necessary
一般來說,只需使用
dd
; 但是當您提到使用 KVM 虛擬化時,您可能會考慮使用qemu-img
:qemu-img create -f raw disk 2G
它的作用與
dd
Chris Down 的答案中的命令相同,有效。無論您使用什麼命令,在虛擬化中使用時,我都強烈建議您使用
fallocate
預分配塊以防止碎片並提高性能。fallocate -l 2G disk
但是,它並非在所有平台和文件系統上都可用。這不會寫入零,而只是將塊分配給文件,而不是在以後每次必須擴展文件時按需執行。
您可以使用以下命令創建一個稀疏文件
dd
:dd of=file bs=1 seek=2G count=0
$ du file 0 disk $ du --apparent-size file 2097152 disk