Linux 計算機安裝後,在咱們不斷的使用過程當中,由於添加、刪除軟件和上網衝浪、調試程序等行爲,硬盤中會產生各類各樣的垃圾文件,而隨着這些垃圾文件的不斷膨脹,它們不只會平白吞噬掉咱們寶貴的硬盤空間,更會拖累機器的運行速度,影響咱們的工做效率。本文介紹一下給 Linux 系統減肥的方法和工具的使用技巧,本文使用的 Linux 發行版本是 Ubuntu 12.04 。本文介紹的工具包括:Activity Log Manager、BleachBit、find、fdupes、Geeqie、GConf Cleaner,這些工具都是開源工具,Linux 用戶能夠經過下載編譯源代碼在其餘流行的 Linux 版本(如 Redhat、SUSE 等)上使用。php
Linux 下哪些文件屬於垃圾文件
軟件安裝過程當中產生的臨時文件 html
許多 bin 格式的軟件在安裝時,首先要把自身的安裝文件解壓縮到一個臨時目錄(通常爲/tmp 目錄)而後再進行安裝。若是軟件設計有疏忽或者系統有問題,當安裝結束後,這些臨時文件就會變得並不「臨時」,成爲硬盤裏的一堆垃圾,不少時候它們以*.tmp 的面孔出現。html5
軟件運行過程當中產生的臨時文件java
和安裝過程同樣,在軟件的運行過程當中一般也會產生一些臨時交換文件,有些軟件運行事後遺留下來的垃圾甚至多達數百兆,好比 ssh 服務器和客戶端鏈接過程當中時產生的文件。還有虛擬機運行時產生的文件。另外咱們刪除一個帳戶以後,還會存在一些無用垃圾文件及目錄。linux
上網衝浪產生的臨時文件web
咱們在上網的時候,瀏覽器老是將網頁文件下載到本地機器上,這些緩存文件不但佔用了寶貴的磁盤空間,還經常會把咱們的我的隱私公之於衆。數據庫
一些不經常使用的雞肋文件編程
好比一些應用軟件自帶的幫助和系統手冊頁等。既然食之無味索性也將它們視做垃圾文件的一種表現。佔用空間甚大,更會嚴重拖累系統和一些圖形處理軟件的運行速度。另外還有一些損壞的桌面文件,它包括損壞的應用程序菜單按鈕和文件關聯。ubuntu
各類緩存文件vim
若是 Linux 用戶安裝使用 GIMP 或者 Geeqie 等圖形編輯工具,在這些軟件都有圖片預覽功能,在保存了圖片的文件夾下會產生一個名爲「Thumbs.db」的文件,這個文件會隨着圖片文件的增長而膨脹。還有就是.DS_Store 文件,DS_Store 文件是用來存儲這個文件夾的顯示屬性的:好比文件圖標的擺放位置。刪除之後的反作用就是這些信息的失去。另外還有使用 apt 或者 yum 軟件包安裝過程當中生成的緩存文件。
使用 Linux 命令刪除垃圾文件
刪除用戶後遺留下的垃圾文件
這裏咱們使用到的主要命令是 find 。舉個例子: 咱們刪除一個帳戶以後,還會存在一些無用垃圾文件及目錄,咱們要找出屬於這個用戶的垃圾東西,使用 find / -user 用戶名 :就能夠找到根目錄下屬於這個用戶的相關文件 ,使用命令:
#find ./ -nouser |xargs rm –rf
core 文件
當咱們在系統下運行某個程序出錯的時候,系統會自動將殘留在內存中的數據存成 core 文件,長此以往,系統中遺留下來的 core 會愈來愈多,就像灰塵同樣散落在系統的每個角落裏非常煩人。這個時候,咱們就能夠應用 find 命令加上—exec 參數來清理它們。使用命令:
# find / -name core -print -exec rm -rf {} ;
多餘的手冊頁
另外 Linux 提供了衆多語言的手冊頁(man)好比 Ubuntu 的 手冊頁位於/usr/share/man 目錄下 ,可使用命令刪除多餘語言的手冊頁保留中英文便可。
# cd /usr/share/man
# find ./ -maxdepth 1 -type d | tail -n +2 | grep -E -v '(en|zh|man).*' |
while read d; do rm -rf $d; done
說明:關鍵字是(en|zh|man) ,您能夠根據本身的狀況修改。
使用 fdupes 工具刪除指定目錄下重複文件
fdupes 是一個命令行工具,它會查找和刪除指定目錄的重複文件,它經過文件的大小和 MD5 值進行比較 。一個字節一個字節進行對比。 首先安裝這個工具
# apt-get install fdupes
在 /etc 目錄查找重複文件 ,使用以下命令:
#fdupes /etc
能夠與 Linux 命令組合使用,刪除文件 :
#fdupes -r -f . | grep -v ^$ | tee duplicate.txt cat duplicate.txt |
while read file; do rm -v "$file"; done
另外也能夠與 sed 命令組合使用,刪除文件 :
# fdupes -r -n -S /tmp | sed -r 「s/^/#rm 」/」 | sed -r 「s/$/」/」 >duplicate-files.sh
刪除緩存文件
清理舊版本的軟件緩存
# apt-get autoclean
清理全部軟件緩存:
#apt-get clean
使用 Geeqie 工具找出類似圖像文件
如今的硬盤容量是愈來愈大,出於備份的考慮,不少朋友會採起「寧濫勿缺」的原則保存圖片,這就可能出現文件重複的狀況,形成文件搜索的效率低下。要在海量的存儲空間中找出重複的文檔,並非一件容易的工做。其實藉助著名的圖像瀏覽工具 Geeqie 能夠很輕鬆地找出系統中的重複和類似圖像文件。這些文件相比文本文件更大,時間長了會佔用不少硬盤空間。使用上面介紹的 fdupes 工具就不行,由於 fdupes 工具只能刪除徹底相同 (md5sum 相同) 的重複文件, 但若要剔除 "類似" 的圖片文件, 則可以使用 geeqie 工具。首先安裝這個工具:
# apt-get install gqview
下面運行這個工具,在要搜索的目錄上按鼠標右鍵, 選擇 "Find duplicates recursive..."見圖 1 。
選擇左下角的 "Compare by:" 下拉菜單可選擇比對方式 Similarity (custom)找出類似度 99% 以上的圖片,另外能夠勾選 "Thumbnails" 可顯示縮略圖見圖 2
下面在被選取的項目上按鼠標右鍵, 點選 "Delete" 便可刪除全部被選取的圖片, 刪除前會有一個的確認界面以避免誤刪。說明 99%是圖片類似度的缺省值,用戶能夠經過以下方式修改參數:在 Edit → Preferences → Preferences... → Behavior → Miscellaneous: Custom similarity threshold 見圖 3 。
使用 BleachBit 清理文件
簡介
BleachBit 是一款開源免費的系統清理工具,功能相似 Windows 平臺的 CCleaner。BleachBit 可以刪除隱藏的垃圾文件,以及簡單的保護你的隱私。擦除緩存,刪除 cookies 文件,清除互聯網瀏覽歷史,刪除未使用的本地化碎片日誌,刪除臨時文件,是一款很是實用的跨平臺的系統清理工具。BleachBit 提供有 rpm 和 deb 二進制包,適用於 Fedora/CentOS/RHEL、Debian/Ubuntu 等 Linux 發行版。其它 Linux 用戶能夠選擇 BleachBit 的源碼包(下載地址:http://bleachbit.sourceforge.net/download.PHP )。使用 BleachBit,你能夠清理系統中的緩存、歷史、臨時文件、cookies 等不須要的東西,這樣能夠釋放你的磁盤空間。當前,BleachBit 可以清理 Beagle、Firefox、Epiphany、Flash、OpenOffice.org 、KDE、 GIMP、JAVA 編程工具、vim、Gedit 編輯器等 70 多種軟件所產生的垃圾文件。還有系統運行時生成的「Thumbs.db」的文件和使用 apt 或者 YUM 軟件包安裝過程當中生成的緩存文件以及剪切板裏面的歷史文件信息等。
首先安裝軟件:
#apt-get install bleachbit
安裝以後系統工具菜單裏就會多出兩個工具:bleachbit 和 bleachbit as root。對於 root 用戶使用第 2 個,軟件第一次運行,彈出「首選項窗口」,見圖 4。
簡單說明一下設置界面:包括定製文件和文件夾,驅動器列表 ,語言,白名單(免於清理的)設置,以及是否開機啓動 BleachBit 等一些選項。
下面看看工做界面見圖 5。
BleachBit 軟件功能單一所以使用起來也方便。從圖 5 裏我能看到。 軟件的左邊羅列出了可以清理的各類垃圾,點擊「預覽「按鈕,就會分析出垃圾文件的明細和大小。 勾選好軟件按 clean(清除)按鈕便可。
以 Chrome 瀏覽器爲例介紹操做實例
Chrome 瀏覽器能夠清理的文件主要包括:
- 緩存: 刪除那些網頁緩衝文件(這些緩衝文件能夠減小下次訪問該網頁的時間)
- Cookies: 刪除 cookies 文件,它們保存網站首選項、認證和身份等信息
- 當前會話: 刪除當前會話
- DOM(文檔對象模型) 存儲: 刪除 HTML5 cookies
- 表單歷史: 網站表單輸入歷史
- 歷史: 刪除已瀏覽網站、下載及縮略圖的歷史記錄
- 搜索引擎: 重置搜索引擎使用歷史並刪除非內置搜索引擎,其中一些引擎爲自動添加
- 整理數據庫: 清理數據庫碎片以減小空間並提升速度(無需刪除任何數據)
首先查看可清理的 Chrome 瀏覽器文件見圖 6 。
選中欲清理的項目後,點擊「預覽「按鈕便可執行對該類項目內所含垃圾文件的掃描操做,掃描過程很是快速,掃描過程完畢,用戶將看到檢測到的垃圾文件列表及其統計信息,下面用戶只需鼠標點擊「清理」按鈕便可輕鬆清除這些已經被檢測到的垃圾文件。
上面筆者選擇執行的是對 Chrome 瀏覽器的掃描清理任務,固然能夠選擇所有垃圾列表中的全部項目,用戶只需逐一勾選掃描項目選擇激活項便可。
使用 Activity Log Manager 清理殘留在系統中的使用痕跡
上網衝浪,用帳號登陸系統,包括使用一些編輯軟件都會在系統裏留下蛛絲馬跡,這些殘留信息中包含我的信息,若是被不法分子利用,就會形成隱私泄露,下面介紹的工具是 Activity Log Manager,它是配置在 Zeitgeist 活動日誌中記錄的內容的 ,使用它能夠有效保護隱私。首先安裝這個工具:
#apt-get install activity-log-manager
Activity Log Manager 的中文名稱是活動日誌管理器,安裝完成後出如今附件菜單中。它的使用方法也比較簡單。最直接的就是設置中止記錄的功能,而後刪除全部歷史文件見圖 7 。
固然用戶也能夠進行有區別的設置,能夠根據具體狀況設置哪些應用程序和文件能夠保留歷史文件那些不保留。下面經過「文件」界面進行設置見圖 8
這裏筆者選擇「電子表格、文本、即時消息」三個事關隱私的選項。另外對於一些特殊的應用程序用戶還能夠本身添加到活動日誌管理器中,見圖 9
使用 GConf Cleaner 清理 GConf
GConf 是一個用於存儲 GNOME 應用程序選項設置的系統。若是該系統充斥着大量無用鍵值,那麼將使 GConf 臃腫不堪。這對應用程序的啓動速度和性能都是有影響的。爲了解決這個問題,你可使用 GConf Cleaner 來對其進行清理。Gconf-Cleaner 是一款相似於 Windows 註冊表清理器的工具。它會檢查 Gconf 數據庫(即 GNOME 配置數據庫)並移除無用及過期的項目。
首先安裝這個工具:
#apt-get install gconf-cleaner
而後從終端執行 gconf-cleaner 啓動 GConf Cleaner 程序。這個程序具備執行嚮導,只需按步驟操做便可。 嚮導初始畫面,點擊 Forward 會進入分析過程。圖 10 是分析結果,它提供具體數據,並可保存。再次點擊 Forward 則開始清理過程。