Linux--如何把快速把服務器空間寫滿(創建大文件)


有時我們需要測試服務器空間不足時程序的性能。這時你就需要手動對服務器創建大文件使其空間不足了。

我在百度之后發現了三個命令:truncate dd fallocate

truncate命令:

它的作用是指定一個文件的大小,如果該文件不存在,就會創建該文件。如果指定文件的大小小於原先的大小,會丟失內容。

這個命令指定的文件大小其實是虛擬的。只是顯示出來的大小。如果你指定一個非常大的文件。其實服務器剩余空間並不會減少。

用法:turncate -s 1G test.txt --創建一個虛擬大小1G的test文件,其真實大小為0

dd命令:

可以創建虛擬大小的文件,也可以創建真實占用空間的文件。

真實:dd if=/dev/zero of=test.txt count=10 bs=512M --創建一個5G大的test.txt文件

虛擬:dd if=/dev/zero of=test.txt count=10 bs=512M seek=10G --創建一個5G大的test.txt文件,但顯示容量為10G

參數含義:

if 輸入文件

of 輸出文件

count 創建的文件構成的塊數

bs 每塊的容量大小

seek 指定的虛擬大小

/dev/zero 一個不斷返回0值字節的字符設備,為了提供寫入的字符。

fallocate命令:

可以直接分配一個指定容量的真實大小文件,且速度很快。

用法: falloate -l 5G test.txt --創建一個大小為5G的真實文件

 

選擇:最后我還是使用fallocate進行文件的創建,因為它速度較快。

注:

1.文件的虛擬大小可以通過ls/ll命令進行查看,真是大小可以通過進入文件所在目錄,然后 du -sh *,找到對應文件名,看其真實大小。

2.dd命令十分強大,我只是使用了它其中的一種,以后還需學習其他用法。
————————————————
版權聲明:本文為CSDN博主「stalin_」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/stalin_/article/details/81328409


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM