用於開發的MacBook怎樣釋放磁碟空間

2022-09-01 05:36:07 字數 2988 閱讀 9114

用於開發的macbook怎樣釋放磁碟空間

譯自how to free disk space on macbook used for development

由於缺少磁碟空間,有時在macos上安裝或更新應用程式(例如xcode…)非常困難。在這篇部落格文章中,我將介紹各種方法,這些方法可以快速安全地清理用於web開發的macbook上的大量儲存。

我最近在macbook pro上進行了同樣的分析和清理。結果,我設法釋放了數十gb的儲存空間,最終可以將xcode更新到最新版本。

識別儲存空間的最大分配位置的最佳方法是使用disk inventory x應用程式。在macos上,最簡單的安裝方法是使用homebrew cask。

$ brew install --cask disk-inventory-x
該程式提供了簡單明瞭的ui,使您可以一目了然地檢查您的儲存使用情況:

現在,我們來討論減少儲存使用量的最低限度。

在我的計算機上,大量不必要的資料位於〜/library/caches資料夾中。我注意到有一年左右都沒有使用的數百mb與yarn相關。顯然,許多應用程式都希望快取資料,而忽略隨後進行的清理。

您可以使用以下命令徹底清除快取:

$ cd ~/library/caches

$ rm -rf *

或者,您可以選擇要刪除的快取資料夾。我幾個月來一直定期進行快取的總清理。除了暫時的系統速度下降之外,我沒有發現任何問題。

顯然,快取將隨著時間的推移自行重建。但是,即使經過更長的時間,它也不會增長到相同的大小。刪除30gb以上的快取後,caches資料夾的大小在定期使用計算機一周後增加到僅2gb左右。

我主要在macbook上使用ruby on rails。使用disk inventory x時,我發現連續執行本地測試會將內容追加到log/test.log檔案中。

我可以想象其他堆疊同樣以靜默方式占用磁碟空間。disk inventory x對於識別和修復此類情況非常寶貴。

docker因吞噬大量磁碟空間而享有聲譽。您可以通過執行以下命令檢查docker到目前為止已獲取了多少磁碟空間:

$ docker system df

type total active size reclaimable

images 17 4 2.115gb 1.577gb (74%)

containers 6 1 138.4mb 0b (0%)

local volumes 19 5 1.564gb 1.347gb (86%)

build cache 0 0 0b 0b

現在執行docker images來檢視哪些映像占用了大部分磁碟空間:

$ docker images

repository tag image id created size

pihole/pihole latest 4642d275ab73 4 months ago 296mb

postgres 11.8-alpine a7f73db0b977 6 months ago 156mb

postgres 12.3-alpine 17150f4321a3 6 months ago 157mb

postgres 9.6-alpine 45f463e53bc1 6 months ago 36.1mb

alpine latest a24bb4013296 7 months ago 5.57mb

postgres 12.2-alpine ae192c4d3ada 8 months ago 152mb

postgres 9.6.17 529a7b20fb73 8 months ago 200mb

postgres 11.6-alpine 89ae06c2ad76 11 months ago 152mb

在我的計算機上,我有各種版本的postgres image,每個版本都占用大量空間。您可以通過執行以下命令來刪除docker image:

$ docker rmi -f image_id
根據我的經驗,images通常會占用大部分磁碟空間。但是,如果您想進行更全面的清理,包括docker containers,networks和cache,請使用以下命令:

$ docker system prune
整體清理對我有用,因為可以使用seed data輕鬆地重新建立所有本地docker專案。在刪除container或volume之前,請確保仔細檢查沒有重要的資料。

檢視docker文件以了解有關其他清理命令的更多資訊。

我希望這些技巧將幫助您輕鬆清理大量磁碟空間。良好的做法是定期檢查disk inventory x是否有不必要的磁碟使用膨脹,這將有助於您保持磁碟使用的順序。

Rails gem 用於開發的gem 推薦

1,rails footnotes 是開發必加套件啊 非常的強大,可以顯示出 完整的 controller sessions,cookie等資訊,對於開發來說,不可多的 安裝特別簡單 group development do gem rails footnotes 3.7.5.rc4 gem pry...

使用M1晶元的Macbook開發TF M

首發極術社群最重要的問題應該就是編譯tf m所需的工具及庫軟體的安裝。以前在x86下可能問題並不是太大,但是現在切換到arm架構的m1,軟體適配方面的問題就尤為重要。所幸筆者發現,常用工具對m1架構的還是不錯的,而且適配的速度遠超筆者預期。下面以gnuarm編譯器為例,介紹一下m1晶元的系統中,如何...

選擇怎樣的開發模式

迭代開發模式 典型的是螺旋式迭代開發模式將軟體生命週期的分析設計 程式設計 測試 實現分成若干的小階段。序列開發模式 典型的是瀑布開發模式,描繪了乙個整體的軟體生命週期,勾畫了軟體生命週期中的每乙個階段層層推進。分析 設計 程式設計 測試 實現 在需求變更是響應和分析變得困難 瀑布式開發的文件數量會...