重慶分公司,新征程啟航
為企業提供網站建設、域名注冊、服務器等服務
為企業提供網站建設、域名注冊、服務器等服務
在日常使用過程中,可能會經常遇到Linux服務器磁盤空間滿的問題。
站在用戶的角度思考問題,與客戶深入溝通,找到彌勒網站設計與彌勒網站推廣的解決方案,憑借多年的經驗,讓設計與互聯網技術結合,創造個性化、用戶體驗好的作品,建站類型包括:網站設計、做網站、企業官網、英文網站、手機端網站、網站推廣、域名注冊、虛擬空間、企業郵箱。業務覆蓋彌勒地區。
一、遇到磁盤空間不足的報錯時候,首先使用df -h查看磁盤空間使用情況,如下圖所示
二、進入目錄/home/zhang,查找磁盤空間中的大文件,使用命令du -sh *查找占用空間大的目錄,通過逐層定位,最后會找到具體的文件。
三、第二步的命令雖然能看到了,但是文件太多不好找,使用du -h --max-depth=1命令查找空間占用大的文件。
1:清理殘余的配置文件
一般而言,當從 Ubuntu 系統中刪除了一個軟件之后,該軟件的殘余配置文件并沒有被刪除。如果確信以后不再使用該軟件,那么保留其配置文件實在沒有必要,所以大可一并刪除之。
要刪除某個軟件的殘余配置文件,可以執行下面的操作:
在終端中執行 sudo synaptic,以便啟動 Synaptic 包管理工具。
點擊 Synaptic 右下角的 Status 按鈕進行切換。
現在,應該能夠在 Synaptic 的左邊看到 Not installed (residual config)。選擇它即可在右邊看到包含有殘余配置文件的包,可以在此選擇刪除該包。
2:清理下載的緩存包
在 Ubuntu 中通過 sudo apt-get install 安裝軟件時,其下載的包都緩存在 /var/cache/apt/archives/ 目錄中。如果要清理掉這些已下載的緩存包,那么可以執行命令:
sudo apt-get autoclean
sudo apt-get clean
3:清理不再需要的包
在 Ubuntu 系統中安裝軟件時,該軟件的依賴通常也會自動安裝上。那么,在刪除該軟件后,其依賴可能需要我們手動刪除之。可以運行 sudo apt-get autoremove 命令來解決這個問題。
4:清理無用的語言文件
Ubuntu 與其他 Linux 發行版一樣,是一個支持多語言界面的系統。其實,對使用自己母語的我們來說,通常保留中文即可,也可以保留自己所需要使用的語言,如英文。其他的語言文件則沒有必要保留。
為了清理這些無用的語言文件,需要在 Ubuntu 系統中安裝一個名為 localepurge 的小工具。
安裝 localepurge 是十分簡單的,只需執行 sudo aptitude install localepurge 命令就可以了。在安裝的過程中,程序會提示進入如下圖所示的畫面中進行配置。
localepurge
使用空格鍵可以選擇需要保留的區域配置,其他的則會被刪除。當以后在安裝程序時,此工具也會自動執行,勿需再次配置。中文用戶保留zh、zh_CN、zh_CN.*
5:清理無用的翻譯內容
可以使用 trans-purge 這組小工具來清理 *.desktop、mime-database、gconf schema 中的無用翻譯內容。
trans-purge 這組小工具使用過程如下:
下載源代碼:
wget?
wget?
wget?
安裝編譯依賴:
sudo?apt-get?install?libglib2.0-dev
編譯程序:
gcc?`pkg-config?glib-2.0?--cflags?--libs`?-o?desktop-purge?desktop-purge.c
gcc?`pkg-config?glib-2.0?--cflags?--libs`?-o?mime-purge?mime-purge.c
gcc?`pkg-config?glib-2.0?--cflags?--libs`?-o?gconf-purge?gconf-purge.c
安裝程序:
sudo?cp?desktop-purge?/usr/bin/
sudo?cp?mime-purge?/usr/bin/
sudo?cp?gconf-purge?/usr/bin/
執行清理:
手動清理:
sudo?desktop-purge
sudo?mime-purge
sudo?gconf-purge
自動清理:
讓每次 apt-get 安裝軟件后自動進行清理。創建 /etc/apt/apt.conf.d/99-transpurge 文件,并添加下列內容:
DPkg
{
Post-Invoke?{"if?[?$(ps?w?-p?"$PPID"?|?grep?-c?remove)?!=?1?];?then?/usr/bin/desktop-purge??/dev/null;?/usr/bin/mime-purge?/dev/null?;?/usr/bin/gconf-purge??/dev/null;?else?exit?0;?fi";};
};
警告:無用翻譯在清除后無法還原
Linux下清除磁盤分區及殘留raid信息
適用場景:
1、 查看硬盤編號
2、 刪除磁盤分區
3、 刪除磁盤內殘留raid信息
*本文適用于430-8i等只有低速格式化或沒有格式化功能的HBA卡使用,若raid卡有格式化功能,建議使用raid卡格式化解決問題。
一、查看硬盤編號
適用lsblk命令可以查看當先系統下的磁盤相關信息及磁盤大小
sda為硬盤為系統內的第一個硬盤
sda1為該硬盤下的第一個分區以此類推
二、刪除磁盤分區
三、刪除磁盤內殘留raid信息
如果磁盤在其他raid卡中做過raid,在430-8i這類沒有格式化功能的HBA卡中使用時,使用parted等相關命令無法將raid殘留信息刪除導致無法分區正常安裝系統。
現象如下:
Raid卡殘留信息的type為dmraid分區名稱以`-ddf_開頭
刪除方法如下:
整體思路是通過dd命令將殘留信息所在扇區置零
通常raid卡的信息會放在最后一個柱面即最后63個扇區
以sda為例:
發現有dpIBM等信息,為殘留的raid信息
再打印發現已經置零,清除成功。
重啟節點重新加載linux中才會生效
第一步:先執行sync命令
#sync
sync命令用于強制被改變的內容立刻寫入磁盤,更新超塊信息,以防止釋放,sync命令則可用來強制將內存緩沖區中的數據立即寫入磁盤中。
第二步:清理linux內存緩存
#echo 3 /proc/sys/vm/drop_caches
一般系統是不會自動釋放內存的
關鍵的配置文件/proc/sys/vm/drop_caches。這個文件中記錄了緩存釋放的參數,默認值為0,也就是不釋放緩存。他的值可以為0~3之間的任意數字,代表著不同的含義:
0 – 不釋放
1 – 釋放頁緩存
2 – 釋放dentries和inodes
3 – 釋放所有緩存
此指令輸入立即生效,意在釋放所有緩存。
第三步:關閉swap,再開啟swap
(如果只是清理swap,第二部可以不用進行操作,因為操作了第二步關閉swap時會使用更長的時間)
#swapoff -a? 這一步因為是后臺 在一點一點的釋放,如果配置的swap超大,這里就等待得超久一些
#swapon -a? 再開啟
linux什么時候開始使用虛擬內存(swap)
A.[root@wenwen ~]# cat /proc/sys/vm/swappiness
60
上面這個60代表物理內存在使用60%的時候才會使用swap
swappiness=0的時候表示最大限度使用物理內存,然后才是 swap空間,
swappiness=100的時候表示積極的使用swap分區,并且把內存上的數據及時的搬運到swap空間里面。
通常情況下:
swap分區設置建議是內存的兩倍 (內存小于等于4G時),如果內存大于4G,swap只要比內存大就行。另外盡量的將swappiness調低,這樣系統的性能會更好。
B.修改swappiness參數
臨時性修改:
[root@wenwen ~]# sysctl vm.swappiness=10
vm.swappiness = 10
[root@wenwen ~]# cat /proc/sys/vm/swappiness? ? ? ? ? ? ? ?
10
永久性修改:
[root@wenwen ~]# vim /etc/sysctl.conf
加入參數:
vm.swappiness = 35
然后在直接:
[root@wenwen ~]# sysctl -p
查看是否生效:
cat /proc/sys/vm/swappiness
35
雖然說使用
rm
命令清理磁盤空間一點也不難(即:#\rm
-r
*),但是最最關鍵的還是需要你對
LINUX
系統有相當的熟悉才行。即:在刪除文件之前,必須要知道哪些文件是可以刪除的,而哪些文件又是絕對不能夠刪除的。只有這樣,才能夠使用文件刪除命令有效地清理磁盤空間。
特別注意:我上面寫的那一條命令:#\rm
-r
*
一定、一定、一定要特別慎用、再慎用!!
因為其中:#
代表在超級用戶狀態下;\
代表取消刪除文件之前對用戶的詢問提示;-r
代表當前目錄以及當前子目錄下的所有子目錄(具有遞歸性);*
代表子目錄下面的所有文件。