今天做項目的時候svn突然提更新不了,但是能提交,我以爲是IDE自帶的svn出問題,但是使用了其他的svn客戶端還是不能更新代碼,很是詭異!
錯誤出現: svn: Can't find a temporary directory
解決辦法:網上搜了搜說一般這種情況出現在服務器端,磁盤滿了的情況;
我的svn服務器爲Centos 6.5,於是我查看了一下硬盤使用情況,
[root@localhost /]# df -hT
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root ext4 50G 50G 0 100% /
tmpfs tmpfs 3.8G 0 3.8G 0% /dev/shm
/dev/sda1 ext4 485M 40M 420M 9% /boot
/dev/mapper/VolGroup-lv_home ext4 860G 481M 816G 1% /home
根目錄使用了100%,於是查找了些不用的文件刪除後,svn就能正常使用了!
利用這個方法刪除了部分佔空間的數據後過一段時間還是這樣的問題,我剛開始猜想是不是inode節點被用空了:
[root@localhost /]# df -i /dev/mapper/VolGroup-lv_root
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/mapper/VolGroup-lv_root 3276800 129950 3146850 4% /
很顯然還有很多!
難道根下還有大文件?
[root@localhost /]# du -sh /
6.1G/
很顯然也不是!
那是怎麼回事呢?
應該是刪除了這些文件,但是空間沒有釋放,當然重啓可以解決目的,但是會造成服務器上所有業務中斷,可使用下面命令查看刪除文件佔用情況:
[root@localhost /]# lsof |grep delete
NetworkMa 1651 root 13u REG 253,0 0 1974715 /var/lib/NetworkManager/timestamps.VWQYMX (deleted)
NetworkMa 1651 root 14u REG 253,0 0 1974716 /var/lib/NetworkManager/timestamps.6OOYMX (deleted)
NetworkMa 1651 root 15u REG 253,0 0 1974717 /var/lib/NetworkManager/timestamps.JROYMX (deleted)
NetworkMa 1651 root 16u REG 253,0 0 1974718 /var/lib/NetworkManager/timestamps.37QYMX (deleted)
NetworkMa 1651 root 17u REG 253,0 0 1974719 /var/lib/NetworkManager/timestamps.8OQYMX (deleted)
NetworkMa 1651 root 18u REG 253,0 0 1974720 /var/lib/NetworkManager/timestamps.0ZPYMX (deleted)
NetworkMa 1651 root 19u REG 253,0 0 1974721 /var/lib/NetworkManager/timestamps.XBPYMX (deleted)
NetworkMa 1651 root 20u REG 253,0 0 1974723 /var/lib/NetworkManager/timestamps.4UPYMX (deleted)
NetworkMa 1651 root 21u REG 253,0 0 1974725 /var/lib/NetworkManager/timestamps.MAVWMX (deleted)
NetworkMa 1651 root 22u REG 253,0 0 1974726 /var/lib/NetworkManager/timestamps.NZSYMX (deleted)
NetworkMa 1651 root 23u REG 253,0 0 1974727 /var/lib/NetworkManager/timestamps.DM6XMX (deleted)
NetworkMa 1651 root 24u REG 253,0 0 1974728 /var/lib/NetworkManager/timestamps.RC6XMX (deleted)
NetworkMa 1651 root 25u REG 253,0 0 1974729 /var/lib/NetworkManager/timestamps.4GWYMX (deleted)
NetworkMa 1651 root 26u REG 253,0 0 1974730 /var/lib/NetworkManager/timestamps.X1VYMX (deleted)
NetworkMa 1651 root 27u REG 253,0 0 1974731 /var/lib/NetworkManager/timestamps.ORWYMX (deleted)
NetworkMa 1651 root 28u REG 253,0 0 1974732 /var/lib/NetworkManager/timestamps.1XHXMX (deleted)
mysqld 2791 mysql 5u REG 253,0 0 655364 /tmp/ibbvu3EW (deleted)
mysqld 2791 mysql 6u REG 253,0 388 655365 /tmp/iblqPntL (deleted)
mysqld 2791 mysql 7u REG 253,0 0 655366 /tmp/ibHriIhA (deleted)
mysqld 2791 mysql 8u REG 253,0 0 655367 /tmp/ibPHPZdp (deleted)
mysqld 2791 mysql 13u REG 253,0 699 655368 /tmp/ibygudEe (deleted)
sh 15516 root cwd DIR 253,0 0 1573606 /usr/src/inotify-tools-3.14 (deleted)
sh 15516 root 1w REG 253,0 46488477696 1579039 /usr/src/inotify-tools-3.14/nohup.out (deleted)
sh 15516 root 2w REG 253,0 46488477696 1579039 /usr/src/inotify-tools-3.14/nohup.out (deleted)
注意看最後兩行,刪除的數據還在(還存在磁盤中)!
於是:
[root@localhost /]# kill -9 15516 註釋:kill掉這些佔用進程
再看一遍磁盤使用情況
[root@localhost /]# df -hT
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root ext4 50G 6.0G 41G 13% /
tmpfs tmpfs 3.8G 0 3.8G 0% /dev/shm
/dev/sda1 ext4 485M 40M 420M 9% /boot
/dev/mapper/VolGroup-lv_home ext4 860G 481M 816G 1% /home
這下世界清淨了!