服務(wù)器
前言
10年的銀川網(wǎng)站建設(shè)經(jīng)驗(yàn),針對設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時及時工作處理。營銷型網(wǎng)站建設(shè)的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動調(diào)整銀川建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)從事“銀川網(wǎng)站設(shè)計(jì)”,“銀川網(wǎng)站推廣”以來,每個客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。最近這兩天登陸服務(wù)器,發(fā)現(xiàn)用 wget 下載文件的時候提示“No space left on device”,而且連使用 tab 鍵進(jìn)行補(bǔ)全時也會提示該錯誤。
之前遇到過一次這種問題,是由于磁盤空間被占滿了,導(dǎo)致無法創(chuàng)建新文件。正常情況下,刪除一些文件來釋放空間,即可解決該問題。
當(dāng)我使用 df 命令查看分區(qū)情況時,結(jié)果如下:
# df -h Filesystem Size Used Avail Use% Mounted on /dev/vda1 29G 29G 0 100% / udev 10M 0 10M 0% /dev tmpfs 101M 232K 100M 1% /run tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 405M 0 405M 0% /run/shm
看到這里,我以為磁盤真的被 100% 占用了,于是就查看了各目錄的占用情況:
# du -sh /* 8.8M /bin 30M /boot 0 /dev 5.3M /etc 24K /home 0 /initrd.img 205M /lib 4.0K /lib64 16K /lost+found 8.0K /media 4.0K /mnt 4.0K /opt 0 /proc 2.5G /root 232K /run 5.2M /sbin 8.0K /srv 0 /sys 4.0K /tmp 2.6G /usr 1.8G /var 0 /vmlinuz
很明顯,總共的磁盤占用完全不到 10G,磁盤理論上并未被占滿。
這種情況下,很可能是小文件過多,導(dǎo)致 inode 急劇增加,消耗完 inode 區(qū)域的空間。
如果真是如此,那么即使磁盤空間有剩余,但由于無法創(chuàng)建新的 inode 來存儲文件的元信息,也就無法創(chuàng)建新文件。
因此,我用 df 命令進(jìn)行驗(yàn)證:
# df -ih Filesystem Inodes IUsed IFree IUse% Mounted on /dev/vda1 1.9M 299K 1.6M 17% / udev 123K 299 123K 1% /dev tmpfs 126K 249 125K 1% /run tmpfs 126K 4 126K 1% /run/lock tmpfs 126K 2 126K 1% /run/shm
可以看到,inode 區(qū)域只被占用了一小部分,還有大量的空間未使用,所以也不是 inode 區(qū)域被占滿的問題。
到了這里,我的內(nèi)心是非常郁悶的。這個問題直接導(dǎo)致了Apache、mysql以及其它的一些服務(wù)均無法啟動,服務(wù)器已經(jīng)基本沒法使用了,然而原因卻撲朔迷離。
最后,服務(wù)器提供商告訴我另一種可能的情況,就是有些文件刪除時還被其它進(jìn)程占用,此時文件并未真正刪除,只是標(biāo)記為 deleted,只有進(jìn)程結(jié)束后才會將文件真正從磁盤中清除。
于是我通過 lsop 命令查看了被進(jìn)程占用中的文件:
# lsof | grep deleted Mysqld 1952 2982 MYSQL 5u REG 254,1 0 127 /tmp/ibzMEe4z (deleted) mysqld 1952 2982 mysql 6u REG 254,1 0 146 /tmp/ibq6ZFge (deleted) mysqld 1952 2982 mysql 10u REG 254,1 0 150 /tmp/ibyNHH8y (deleted) apache2 2869 root 9u REG 254,1 0 168 /tmp/.ZendSem.2w14iv (deleted) apache2 2869 root 10w REG 0,16 0 11077 /run/lock/apache2/rewrite-map.2869 (deleted) ... python 3102 root 1w REG 254,1 22412342132 264070 /var/log/nohup.out (deleted)
終于找到了罪魁禍?zhǔn)祝瓉硎窃诤笈_運(yùn)行的 Python 腳本,源源不斷地將輸出保存到 /var/log/nohup.out 文件中,文件大小居然達(dá)到了20G+!
前階段在后臺運(yùn)行腳本之后,就沒再管過它。估計(jì)是我在 Python 運(yùn)行過程中刪掉了 nothup.out 文件,由于該文件被占用,所以只能先標(biāo)記為 deleted,而未真正刪除,最后導(dǎo)致磁盤爆滿。
這次的教訓(xùn)提醒了我,不能將任務(wù)簡單放到后臺就放任不管,特別是使用 nohup 命令時,所有的輸出都會被不斷地添加到同一個文件中,如果該進(jìn)程不會自己終止,就可能導(dǎo)致輸出文件占滿整個磁盤。
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對創(chuàng)新互聯(lián)的支持。
當(dāng)前題目:Linux中出現(xiàn)“Nospaceleftondevice”錯誤的排查與解決方法
當(dāng)前路徑:http://www.rwnh.cn/article48/cpgjhp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)公司、定制網(wǎng)站、網(wǎng)站排名、網(wǎng)站改版、網(wǎng)站制作、企業(yè)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)