2018年7月19日 星期四

samba 無法連線 & 刪除 log 檔案後無法恢復空間

CentOS 7.5
# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)

samba 突然無法連線,apache 正常。

重啟 samba 失敗
# systemctl restart smb
Job for smb.service failed because the control process exited with error code. See "systemctl status smb.service" and "journalctl -xe" for details.

檢查磁碟空間,發現「根」的空間已滿
# df
檔案系統              1K-區段      已用    可用 已用% 掛載點
/dev/mapper/cl-root  30385668  30385648       20  100% /
devtmpfs               929140         0   929140    0% /dev
tmpfs                  941172         0   941172    0% /dev/shm
tmpfs                  941172     87500   853672   10% /run
tmpfs                  941172         0   941172    0% /sys/fs/cgroup
/dev/sda1             1038336    272944   765392   27% /boot
/dev/sdb1           264090692 184621996 66030592   74% /cnes
tmpfs                   41188         0    41188    0% /run/user/0


檢查資料夾,「var」異常的大
# cd /
# du -h -x --max-depth=1
35M     ./etc
320K    ./root
28G     ./var
0       ./tmp
1.4G    ./usr
12K     ./home
0       ./media
0       ./mnt
0       ./opt
0       ./srv
0       ./backup
29G     .

「var」裡面則是「log」異常的大
# cd var
# du -h -x --max-depth=1
4.0K    ./tmp
181M    ./lib
27G     ./log
0       ./adm
63M     ./cache
8.0K    ./db
0       ./empty
0       ./games
0       ./gopher
0       ./local
0       ./nis
0       ./opt
0       ./preserve
5.3M    ./spool
0       ./yp
0       ./kerberos
0       ./crash
373M    ./www
28G     .

「log」裡面則是「httpd」異常的大
# cd log
# du -h -x --max-depth=1
0       ./ppp
44K     ./tuned
34M     ./audit
0       ./chrony
1.8M    ./anaconda
0       ./rhsm
27G     ./httpd
4.0K    ./mariadb
36K     ./samba
27G     .

「httpd」裡面則是「error_log」異常的大
# cd httpd
# ls -l
Á`­p 28232288
-rw-r--r-- 1 root root   226877440  7¤ë 18 15:28 access_log
-rw-r--r-- 1 root root    15504855  6¤ë 24 03:21 access_log-20180624
-rw-r--r-- 1 root root     9495202  7¤ë  1 03:19 access_log-20180701
-rw-r--r-- 1 root root     7784584  7¤ë  8 08:38 access_log-20180708
-rw-r--r-- 1 root root     7245121  7¤ë 15 03:37 access_log-20180715
-rw-r--r-- 1 root root 28496015360  7¤ë 18 15:29 error_log
-rw-r--r-- 1 root root    64612097  6¤ë 24 03:21 error_log-20180624
-rw-r--r-- 1 root root    37291384  7¤ë  1 03:20 error_log-20180701
-rw-r--r-- 1 root root    22470046  7¤ë  8 08:39 error_log-20180708
-rw-r--r-- 1 root root    22506344  7¤ë 15 03:38 error_log-20180715

直接刪除 error_log ---錯誤的開始,不可以直接刪除 log 檔---
# rm error_log

結果檔案刪除了,系統卻沒有釋放空間。
刪除 error_log 後
var 已從 28G 變成 1.1G
但是 df 的結果「根」還是 100%


用 df 看,「根」有 29G;用 du 看,只有 2.4G。


igogo 大師說:log 檔建議使用  cat /dev/null > error_log 清空,不可以用 rm,因為 inode 不見了   apache 會以為它還在那裡。

解決方式:
  1. 在伺服器前
    進入單人模式
    # init 1
    再回到多人模式
    # init 3
  2. 重新開機應該也可以
    # reboot
    只是 df 看到滿滿的「根」,有點害怕重啟後會無法開機。

沒有留言:

張貼留言