Loop-Device
如何設置可增長的環回設備?
我知道我可以創建和使用這樣的環回設備:
# Create the file truncate disk.img --size 2G # Create a filesystem mkfs.ext4 disk.img # Mount to use mount disk.img /mnt # Clean up umount /mnt
但是在這種情況下,磁碟映像固定為 2GB。空的時候是2GB,滿的時候是2GB。它不會增長。
有沒有一種可以變大的環回設備?或者,有沒有一種只需要儲存空間的環回設備?
@jordanm 的評論確定了這一點。當我查看
ls -lh disk.img
. 當我ls -s disk.img
在@Stephan 的回答中使用時,會顯示真實的文件大小。作為測試,我創建了一個比我的硬碟大的圖像文件:truncate test.img -s 1000G
它工作得很好,這意味著答案就在問題中:)
使用 dd 創建一個稀疏文件設備。
df -hm # to show where we started dd of=sparse-file bs=1k seek=102400 count=0 # creates a 100Meg sparsefile mkfs.ext4 sparse-file mkdir blah mount sparse-file blah cp somefile blah ls -lahts sparse-file # The 's' option will report the actual space taken in the first column ls -lahts blah df -hm # doublecheck my work echo 'profit :)'
參考:維基百科稀疏文件文章