最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Git使用小坑 Out of memory錯誤的解決方法

 更新時間:2015年10月19日 13:13:44   作者:UndeadWraith  
這篇文章主要介紹了Git使用小坑 Out of memory錯誤的解決方法,需要的朋友可以參考下

最近公司將內(nèi)部使用的代碼由svn遷到了git上,所以也必須學(xué)者使用Git命令。


雖說git的模式和svn區(qū)別很大,但想必也不是什么難事。但沒曾想在第一步git clone的時候就踩到了一個大坑……廢話不多提,先看錯誤代碼:

復(fù)制代碼 代碼如下:

Cloning into XXXX...
remote: Couting objects: 125627, done.
remote: Compressing objects: 100% (47061/47061), done.
fatal: Out of memory, malloc failed (tried to allocate 1941159936 bytes)

就這幾行錯誤碼,生生的把我給絆住了一天……

0x00 調(diào)內(nèi)存

看到“Out of memory, malloc failed”,第一反應(yīng)是內(nèi)存不足。畢竟虛擬機(jī)內(nèi)存太小,Debian的虛擬機(jī)只給了512M的內(nèi)存,再加上自己沒事鼓搗著玩,自己裝了一堆亂七八糟的程序,free的只有幾十兆了。


于是果斷把亂七八糟的進(jìn)程結(jié)束掉,服務(wù)停掉,沒用的東西全關(guān)了。最后又把虛擬機(jī)的內(nèi)存調(diào)到了1G.

結(jié)果——fatal依然……

0x01 調(diào)配置

后來又看了下這句——“allocate 1941159936 bytes”——這是1.8G啊……這能有多大內(nèi)存給他啊……調(diào)內(nèi)存顯然不是辦法。于是上網(wǎng)搜了一下這個報錯,發(fā)現(xiàn)都是讓調(diào)配置的:

復(fù)制代碼 代碼如下:

git config --global pack.threads 1 git
config --global pack.deltaCacheSize = 128m
git config --global pack.windowMemory 50m

順便吐槽一句——國內(nèi)博客全都在抄這個配置……還把Cache抄成了Chase……復(fù)制都不會么……


這樣一來,應(yīng)該是可以減小資源的占用,但遺憾的是貌似git根本沒拾這茬,依然是義無反顧的申請了1.8個G的空間……

當(dāng)然,結(jié)果——再一次的fatal依然……


另外,我還找了另一個哥們做了個試驗,他的虛擬機(jī)里就可以正常clone(1G內(nèi)存,free不到100M),而我手上的兩個虛擬機(jī)則都無法正常clone(1G內(nèi)存,free超過800M 和 2G內(nèi)存,free將近1.3G)??雌饋砗蛢?nèi)存沒什么關(guān)系了

0x02 調(diào)swap

最后終于看到了這篇:http://stackoverflow.com/questions/14038074/git-pull-fatal-out-of-memory-malloc-failed

讓我眼前一亮的是這個帖子里貼出的錯誤代碼和我的幾乎一模一樣,而且在一開始就寫明了上面的所謂配置方案都已經(jīng)試過了,但依然無效——和我遇到的情況完全一樣。不過他最后的結(jié)果是:

In the end i had to kill old & create new repo.

貌似是沒找到什么好的解決方案……

但當(dāng)我翻到最下面的時候眼前一亮——“To get around this I temporarily created a large swap drive...”?!癮 large swap”……醍醐灌頂啊……我立馬問了下能正常clone的那個哥們的虛擬機(jī)給了多少swap空間,得到的答復(fù)是2G,而我手里的——1G和0……和0……和……0……0……0……

原來我需要的是一個大的swap!

雖然我的swap已經(jīng)是劃分好了的,但還是可以添加的,具體方法這篇帖子中也給出了鏈接:http://www.thegeekstuff.com/2010/08/how-to-add-swap-space/

使用Method2,完美解決。

Method 2: Use a File for Additional Swap Space
If you don't have any additional disks, you can create a file somewhere on your filesystem, and use that file for swap space.

The following dd command example creates a swap file with the name “myswapfile” under /root directory with a size of 1024MB (1GB).

復(fù)制代碼 代碼如下:

# dd if=/dev/zero of=/root/myswapfile bs=1M count=1024
1024+0 records in
1024+0 records out

# ls -l /root/myswapfile
-rw-r--r--    1 root     root     1073741824 Aug 14 23:47 /root/myswapfile

Change the permission of the swap file so that only root can access it.

復(fù)制代碼 代碼如下:

# chmod 600 /root/myswapfile

Make this file as a swap file using mkswap command.

復(fù)制代碼 代碼如下:

# mkswap /root/myswapfile
Setting up swapspace version 1, size = 1073737 kB

Enable the newly created swapfile.

復(fù)制代碼 代碼如下:

# swapon /root/myswapfile

To make this swap file available as a swap area even after the reboot, add the following line to the /etc/fstab file.

復(fù)制代碼 代碼如下:

# cat /etc/fstab
/root/myswapfile               swap                    swap    defaults        0 0

Verify whether the newly created swap area is available for your use.

復(fù)制代碼 代碼如下:

# swapon -s
Filename                        Type            Size    Used    Priority
/dev/sda2                       partition       4192956 0       -1
/root/myswapfile                file            1048568 0       -2

# free -k
             total       used       free     shared    buffers     cached
Mem:       3082356    3022364      59992          0      52056    2646472
-/+ buffers/cache:     323836    2758520
Swap:      5241524          0    5241524

Note: In the output of swapon -s command, the Type column will say “file” if the swap space is created from a swap file.

If you don't want to reboot to verify whether the system takes all the swap space mentioned in the /etc/fstab, you can do the following, which will disable and enable all the swap partition mentioned in the /etc/fstab

復(fù)制代碼 代碼如下:

# swapoff -a
# swapon -a

說實在的我一直不太關(guān)心swap的大小,總覺得沒啥用處。這一次就讓我長記性了——swap還是必要的!

相關(guān)文章

  • 使用acme.sh注冊免費(fèi)的ssl證書

    使用acme.sh注冊免費(fèi)的ssl證書

    這篇文章主要介紹了acme.sh注冊免費(fèi)的ssl證書,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-03-03
  • TCP socket SYN隊列和Accept隊列區(qū)別原理解析

    TCP socket SYN隊列和Accept隊列區(qū)別原理解析

    這篇文章主要介紹了TCP socket SYN隊列和Accept隊列區(qū)別原理解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-12-12
  • Win2008 藍(lán)屏漏洞揭秘

    Win2008 藍(lán)屏漏洞揭秘

    藍(lán)屏漏洞威脅的是服務(wù)器操作系統(tǒng)Windows Server 2008,這意味著如果Windows Server 2008藍(lán)屏,將導(dǎo)致服務(wù)器停止服務(wù)……
    2009-10-10
  • Zookeeper未授權(quán)訪問測試問題

    Zookeeper未授權(quán)訪問測試問題

    ZooKeeper是一個分布式的,開放源碼的分布式應(yīng)用程序協(xié)調(diào)服務(wù),是Google的Chubby一個開源的實現(xiàn),是Hadoop和Hbase的重要組件。這篇文章主要介紹了Zookeeper未授權(quán)訪問測試,需要的朋友可以參考下
    2019-10-10
  • Centos7使用docker搭建gitlab服務(wù)器

    Centos7使用docker搭建gitlab服務(wù)器

    這篇文章主要為大家詳細(xì)介紹了Centos7使用docker搭建gitlab服務(wù)器,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • windows系統(tǒng)搭建WEB服務(wù)器詳細(xì)教程

    windows系統(tǒng)搭建WEB服務(wù)器詳細(xì)教程

    這篇文章主要為大家詳細(xì)介紹了windows系統(tǒng)搭建WEB服務(wù)器詳細(xì)教程,文中安裝步驟介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • 網(wǎng)絡(luò)線路科普之CN2,GIA,CIA,BGP以及IPLC都是什么意思

    網(wǎng)絡(luò)線路科普之CN2,GIA,CIA,BGP以及IPLC都是什么意思

    購買海外vps或者物理服務(wù)器或者海外實體服務(wù)器托管的時候,在中國IDC服務(wù)器商中的有關(guān)網(wǎng)絡(luò)線路帶寬的術(shù)語有很多,今天專門做了一個專題,有關(guān)IPLC專線、CN2、BGP、CIA和普通線路知識普及
    2021-06-06
  • 將 PFX,JKS 證書轉(zhuǎn)換為 PEM 格式方法

    將 PFX,JKS 證書轉(zhuǎn)換為 PEM 格式方法

    這篇文章主要介紹了將 PFX,JKS 證書轉(zhuǎn)換為 PEM 格式方法,需要的朋友可以參考下
    2024-01-01
  • IMail 的安裝和設(shè)置 圖文教程

    IMail 的安裝和設(shè)置 圖文教程

    IMail 的安裝和設(shè)置 圖文教程,使用IMail的朋友可以參考下。
    2011-09-09
  • nginx/apache/php隱藏http頭部版本信息的實現(xiàn)方法

    nginx/apache/php隱藏http頭部版本信息的實現(xiàn)方法

    有時候我們需要隱藏我們的服務(wù)器版本信息,防止有心人士的研究,更安全,這里介紹下在nginx/apache/php中如何隱藏http頭部版本信息的方法,有需要的朋友參考下吧
    2013-06-06

最新評論

肇东市| 铜山县| 金乡县| 富锦市| 隆安县| 家居| 阜康市| 阜康市| 嵊州市| 长垣县| 达日县| 岳池县| 新宁县| 平利县| 丁青县| 昌江| 体育| 红河县| 遵义市| 织金县| 兴和县| 安阳市| 樟树市| 襄垣县| 师宗县| 郓城县| 托里县| 龙泉市| 武冈市| 仲巴县| 安远县| 怀来县| 柳州市| 罗田县| 资中县| 井陉县| 依安县| 邵武市| 江北区| 阿克| 福贡县|