今天我們會學習如何在Linux PC或者服務器上找出和刪除重復文件。這裡有一款工具你可以工具自己的需要使用。
無論你是否正在使用Linux桌面或者服務器,有一些很好的工具能夠幫你掃描系統中的重復文件並刪除它們來釋放空間。圖形界面和命令行界面的都有。重復文件是磁盤空間不必要的浪費。畢竟,如果你的確需要在不同的位置享有同一個文件,你可以使用軟鏈接或者硬鏈接,這樣就可以在磁盤的一個地方存儲數據了。
FSlint 在不同的Linux發行版二進制倉庫中都有,包括Ubuntu、Debian、Fedora和Red Hat。只需你運行你的包管理器並安裝“fslint”包就行。這個工具默認提供了一個簡單的圖形化界面,同樣也有包含各種功能的命令行版本。
不要擔心FSlint的圖形化界面太復雜。默認情況下,它會自動選中Duplicate窗格,並以你的家目錄作為搜索路徑。
要安裝fslint,若像我這樣運行的是Ubuntu,這裡是默認的命令:
$ sudo apt-get install fslint
這裡還有針對其他發行版的安裝命令:
Debian:
svn checkout http://fslint.googlecode.com/svn/trunk/ fslint-2.45 cd fslint-2.45 dpkg-buildpackage -I.svn -rfakeroot -tc sudo dpkg -i ../fslint_2.45-1_all.deb
Fedora:
sudo yum install fslint
OpenSUSE:
[ -f /etc/mandrake-release ] && pkg=rpm [ -f /etc/SuSE-release ] && pkg=packages wget http://www.pixelbeat.org/fslint/fslint-2.42.tar.gz sudo rpmbuild -ta fslint-2.42.tar.gz sudo rpm -Uvh /usr/src/$pkg/RPMS/noarch/fslint-2.42-1.*.noarch.rpm
對於其他發行版:
wget http://www.pixelbeat.org/fslint/fslint-2.44.tar.gz tar -xzf fslint-2.44.tar.gz cd fslint-2.44 (cd po && make) ./fslint-gui
要在Ubuntu中運行fslint的GUI版本fslint-gui, 使用Alt+F2運行命令或者在終端輸入:
$ fslint-gui
默認情況下,它會自動選中Duplicate窗格,並以你的家目錄作為搜索路徑。你要做的就是點擊Find按鈕,FSlint會自動在你的家目錄下找出重復文件列表。
點擊按鈕來刪除任何你要刪除的文件,並且可以雙擊預覽。
完成這一切後,我們就成功地刪除你系統中的重復文件了。
注意 ,命令行工具默認不在環境的路徑中,你不能像典型的命令那樣運行它。在Ubuntu中,你可以在/usr/share/fslint/fslint下找到它。因此,如果你要在一個單獨的目錄運行fslint完整掃描,下面是Ubuntu中的運行命令:
cd /usr/share/fslint/fslint ./fslint /path/to/directory
這個命令實際上並不會刪除任何文件。它只會打印出重復文件的列表-你需要自己做接下來的事。
$ /usr/share/fslint/fslint/findup --help find dUPlicate files. Usage: findup [[[-t [-m|-d]] | [--summary]] [-r] [-f] paths(s) ...] If no path(s) specified then the current directory is assumed. When -m is specified any found duplicates will be merged (using hardlinks). When -d is specified any found duplicates will be deleted (leaving just 1). When -t is specfied, only report what -m or -d would do. When --summary is specified change output format to include file sizes. You can also pipe this summary format to /usr/share/fslint/fslint/fstool/dupwaste to get a total of the wastage due to duplicates.