1. 程式人生 > 其它 >記一次CentOS根目錄空間佔滿的解決方案

記一次CentOS根目錄空間佔滿的解決方案

問題背景是這樣的,根目錄初始大小是50G,我把mysql和docker都裝在根目錄底下了。

 

隨著時間推移,mysql大小達到了27個G,docker則是22個G

 

根目錄空間不夠用了,上圖:

 

圖 1-1

 

想過的方案有資料庫遷移,根目錄擴容,和軟連線,最後選擇的是軟連線,沒別的意思,就是解決問題快,開搞:

 

如圖1-1所示,home目錄下空間有1.8T容量,我們把資料遷移到home下就達成目的了。

 

通過查詢,mysql佔用容量最大的是data目錄。查詢命令是:  du -h --max-depth=1

 

 

圖:1-2

 

先把data遷移到home目錄底下

在home目錄下新建資料夾

mkdir   /home/mysql

關閉mysql

service mysqld stop

轉移資料

mv /usr/mysql/data /home/mysql

製作軟連結

ln -s /home/mysql/data /usr/mysql/data

開啟mysql

service mysqld start

 

這樣,mysql 資料就遷移到home下了

 

 

 

接下來做docker的遷移

cd /home
mkdir docker

方法 一

修改docker的systemd的 docker.service的配置檔案

不知道 配置檔案在哪裡可以使用systemd 命令顯示一下

systemctl disable docker
systemctl enable docker
#顯示結果
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.

修改docker.service檔案
vim /usr/lib/systemd/system/docker.service

在裡面的EXECStart的後面增加後如下:
ExecStart=/usr/bin/dockerd --graph /home/docker

重新enable 一下docker 服務 重新進行軟連線 以及進行一次 daemon-reload
systemctl disable docker
systemctl enable docker
systecmtl daemon-reload
systemctl start docker

可以看到:

 

 

 

 

方法 二

 不修改 docker.service的配置檔案的預設路徑,直接製作軟連線

 

  

到此,根目錄空間也就降下來了。 

 

 

以後真正的資料是儲存的home資料夾下的。