Linux-Kernel
xz:壓縮 1TB .tar 時出現 OOM
我正在嘗試壓縮啟用多執行緒的大型存檔,但是,我的系統不斷凍結並耗盡記憶體。
OS: Manjaro 21.1.0 Pahvo Kernel: x86_64 Linux 5.13.1-3-MANJARO Shell: bash 5.1.9 RAM: 16GB
|swapon| NAME TYPE SIZE USED PRIO /swapfile file 32G 0B -2
我已經嘗試過使用
/swapfile
兩倍於我擁有的 RAM 量(32GB)的方法,但是一旦使用了超過 90% 的總 RAM,系統總是會凍結,並且似乎沒有使用 /swapfile。|xz --info-memory| Total amount of physical memory (RAM) : 15910 MiB Memory usage limit for compression: Disabled Memory usage limit for decompression: Disabled
我是新手,
xz
所以請多多包涵,但是有沒有辦法全域啟用記憶體使用限制器並讓物理記憶體(RAM)總量考慮到可用空間/swapfile
?
來自
man xz
:記憶體使用情況
特別是舊系統的使用者可能會發現非常大記憶體使用的可能性令人討厭。為了防止令人不快的意外,xz 有一個內置的記憶體使用限制器,預設情況下它是禁用的。
可以使用命令行選項啟用記憶體使用限制器
--memlimit=limit
。通常通過設置環境變數來預設啟用限制器會更方便XZ_DEFAULTS
。