我正在嘗試使用兩個大尺寸文件夾(〜7GB)創建修補程序。內存耗盡:用於使用差異的大文件
這裏是我如何做它:
$:#DIFF -Naurbw。 ../other-folder> file.patch
但可能是由於文件大小,不獲取創建補丁並給了一個錯誤:
DIFF:內存耗盡
我試圖使空間超過15 GB但仍然存在問題。
有人可以幫我拿出我應該用的旗幟嗎?
我正在嘗試使用兩個大尺寸文件夾(〜7GB)創建修補程序。內存耗盡:用於使用差異的大文件
這裏是我如何做它:
$:#DIFF -Naurbw。 ../other-folder> file.patch
但可能是由於文件大小,不獲取創建補丁並給了一個錯誤:
DIFF:內存耗盡
我試圖使空間超過15 GB但仍然存在問題。
有人可以幫我拿出我應該用的旗幟嗎?
最近我遇到了這個,當我需要區分兩個大文件(每個> 5Gb)時。
我試着用不同的選項使用'diff',但即使是--speed-large-files
也沒有效果。其他方法如將文件拆分爲更小的文件,使用xdelta
或按this suggestion對文件進行排序也無濟於事。我甚至把我的手放在一個功能非常強大的虛擬機(> 72Gb RAM)上,但仍然有這個memory exhausted
錯誤。
我終於加入下面的參數sysctl.conf
(sudo vim /etc/sysctl.conf
)工作:
vm.overcommit_memory=1
爲了確保該參數確實應用可以運行
sudo sysctl -p
不要忘記完成後更改此參數!
感謝您的編輯,我是newover at stackoverflow。 此外,有些解釋此參數: vm.overcommit_memory有三個值(0,1,2)並設置內核虛擬內存記帳模式。 'man 5 proc' 0:啓發式過度使用(這是默認設置) 1:總是過量使用,從不檢查 2:總是檢查,從不過度使用 – Igor 2015-02-18 07:53:58
我對這樣一個有趣而不規範的事實感到有點難過anwser,由我發現並共享,僅爲我做了+2次代表。雖然scho0l的故事,我如何玩python,更無聊,給了我更多@pritam – Igor 2015-03-20 08:51:42
我同意,有趣,非標準,它爲我工作!比較兩個70GB文件,我看到例如317TB虛擬內存和150TB駐留內存......即使250GB內存尚未運行之前的比較現在也完成了。非常聰明! – 2016-03-17 17:02:33
我搜索了「diff large files linux」,並在其他很多鏈接中找到[this](http://unix.stackexchange.com/questions/2150/diffing-two-big-text-files),你可以在至少假裝做了一些研究...這也是題外話。 – Thomas 2013-03-07 05:55:44
是的,我試着用Google搜索它,發現一些參數變化,即使使用「-speed-large-files」標誌,「內存耗盡」錯誤仍然存在。 – pritam 2013-03-07 06:15:44
怎麼樣分多個步驟?例如將文件夾拆分成1GB塊,diff,然後連接修補程序,但我不確定是否可以像這樣拆分diff(所以您可能需要一些額外的邏輯來應用修補程序)。你爲什麼在第一個地方分配7GB文件夾?當然只有其中的一些文件/文件夾已經改變了? – Thomas 2013-03-07 06:19:22