1. 程式人生 > >伺服器磁碟空間已滿造成:SSH傳輸檔案報錯

伺服器磁碟空間已滿造成:SSH傳輸檔案報錯

linux檢視目錄大小及硬碟大小的命令:

檢視當前目錄大小:

[[email protected]]# du -sh /var/www  

檢視指定目錄大小:

[[email protected]]# du -sh /www/typengine.com 

檢視當前目錄檔案總數:

[[email protected]]# find . -type f |wc -l

檢視指定目錄檔案總數:

[[email protected]]# find /var/www -type f |wc -l

檢視當前目錄的目錄總數:

[[email protected]]# find . -type d |wc -l

檢視指定目錄的目錄總數:

[[email protected]]# find /www/typengine -type d |wc -l 以下內容供參考:# du -ks  ---in all
# du -k  ---every last
du和df命令都被用於獲得檔案系統大小的資訊:df用於報告檔案系統的總塊數及剩餘塊數,du -s /用於報告檔案系統使用的塊數。但是,我們可以發現從df命令算出的檔案系統使用塊數的值與通過du命令得出的值是不一致的。如下例:
# du -s /tmp 返回如下值:
---12920 /tmp
而 df /tmp返回如下值:
Filesystem --512-blocks-- Free --%Used --Iused-- %Iused --Mounted on
/dev/hd3 --------57344 --42208--- 26% ----391 ------4% --/tmp
從上面的值我們可以算出 - = : 57344 - 42208 = 15136. 而15136大於12920。該值差異的存在是由於du與df命令實施上的不同: du -s命令通過將指定檔案系統中所有的目錄、符號連結和檔案使用的塊數累加得到該檔案系統使用的總塊數;而df命令通過檢視檔案系統磁碟塊分配圖得出總塊數與剩餘塊數。
檔案系統分配其中的一些磁碟塊用來記錄它自身的一些資料,如i節點,磁碟分佈圖,間接塊,超級塊等。這些資料對大多數使用者級的程式來說是不可見的,通常稱為Meta Data。
du命令是使用者級的程式,它不考慮Meta Data,而df命令則檢視檔案系統的磁碟分配圖並考慮Meta Data。df命令獲得真正的檔案系統資料,而du命令只檢視檔案系統的部分情況。例如,一個frag=4096 並且 nbpi=4096的空的大小為4MB的日誌檔案系統中Meta Data的分配情況如下:
1 4k block for the LVM
2 4k super blocks
2 4k blocks for disk maps
2 4k blocks for inode maps
2 4k blocks for .indirect
32 4k blocks for inodes
-------------------------
41 4k blocks for meta data on an empty 4MB file system
對於AIX 4.X版本:
執行 du /foo返回的結果如下:
----8 -------/foo/lost+found
----16 ------/foo
要使du命令輸出的結果與df命令輸出的結果匹配,我們必須要加上Meta Data。首先,將41個4k的塊轉換為以512位元組為單位的值:
41 * 8 = 328
328(meta data) + 16(from du) = 344
所以有344個以512位元組為單位的塊分配給了這個空的檔案系統。
而使用 df /foo命令我們可以得到下面的結果:
Filesystem --512-blocks --Free --%Used --Iused---%Iused --Mounted on
/dev/lv01 ------8192 -----7848 -----5% -----16 -----2% ----/foo
從中我們可以得到該檔案系統使用的塊數:8192(total blocks) - 7848(free blocks) = 344。該值與上面得出的值一致。
上面的換算方法對於空的檔案系統很容易實現,但是對於非空的檔案系統,由於Meta Data中檔案間接塊的大小不定,因此較難實現。所以我們不需要檢視du 與 df返回的值的匹配關係,而只需要瞭解du -s命令返回的值反映了分配給檔案及目錄的磁碟塊數,而df命令則反映了檔案系統的實際分配情況。df命令反映的實際情況包含了使用者資料(檔案及目錄)和Meta Data。
另一個表現出du與df命令不同之處的例子如下:

如果使用者刪除了一個正在執行的應用所開啟的某個目錄下的檔案,則du命令返回的值顯示出減去了該檔案後的目錄的大小。但df命令並不顯示減去該檔案後的大小。直到該執行的應用關閉了這個開啟的檔案,df返回的值才顯示出減去了該檔案後的檔案系統的使用情況。
列出一個目錄佔用的空間
1. du或du -s或du -k
  du -S | sort -n 可以迅速發現那個目錄是最大的。
2. 用df可以看到已安裝的檔案系統的空間大小及剩餘空間大小。

3. quota -v檢視使用者的磁碟空間資訊,如果你用quota限制了使用者空間大小的話。

boot
5746310 /boot
[[email protected]

test]$ du -ks /boot
5772    /boot
[[email protected] test]$ du -ms /boot
6       /boot

3.顯示目錄的總大小及目錄樹中各資料夾的大小,並以較好的單位表示

[[email protected] test]$ du -h /boot
308K    /boot/grub
5.7M    /boot

相關推薦

伺服器磁碟空間滿造成SSH傳輸檔案

linux檢視目錄大小及硬碟大小的命令: 檢視當前目錄大小: [[email protected]]# du -sh /var/www   檢視指定目錄大小: [[email protected]]# du -sh /www/typengine.com  檢視當前目錄檔案總數: [[em

linux 磁碟空間滿解決方法

執行命令 du -sh /* |sort -h 檢視根目錄下所有資料夾所佔用的磁碟空間。/* 是檢視根目錄開始的磁碟空間,  | sort -h 是按照大小排序  137M /root 150M

web.xml檔案:cvc-complex-type.2.4.a: Invalid content was found starting with element 'init-param'.

<?xml version="1.0" encoding="UTF-8"?> <web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns

磁碟滿造成的mysql啟動失敗問題分享

突然發現mysql死活都啟不起來了: 複製程式碼程式碼如下: /etc/init.d/mysql restart Stopping MySQL:                                            [FAILED] Timeout

oracle-system表空間滿,如何解決?

1.登入資料庫 sqlplus /nolog conn / as sysdba 1 2 2.查詢表空間使用狀況 SELECT UPPER(F.TABLESPACE_NAME) "表空間名",  D.TOT_GROOTTE_MB "表空間大小(M)",  D.TOT_GRO

spark遭遇空間滿的解決

-----------------------------------------------9.22------------------------------------------------------ 今天甚是高興,終於解決了叢集記憶體滿的問題,下面記錄的是之前的處理記憶體的方法,一般

記一次Linux伺服器磁碟空間佔用,大檔案查詢

好久沒寫東西了,很久之前弄了個伺服器玩玩,寫了點東西在上面放著,一直在不停的抓資料,也就沒怎麼看,最近閒來無事登入後臺檢視,發現我的媽呀,伺服器磁碟快滿了 剛開始以為抓取的太多,資料庫資料膨脹佔用了,於是登入MySQL檢視,發現有20多萬條記錄,咋看似乎佔

Linux磁碟空間滿問題定位

在Linux中,當我們使用rm在linux上刪除了大檔案,但是如果有程序打開了這個大檔案,卻沒有關閉這個檔案的控制代碼,那麼linux核心還是不會釋放這個檔案的磁碟空間,最後造成磁碟空間佔用100%,整個系統無法正常執行。這種情況下,通過df和du命令查詢的磁碟空間。 解決步驟: 1

centos /dev/vda1磁碟空間滿 隨筆

今天筆者所在的公司維護的後臺管理系統。突然發現系統跑不動了。 開啟伺服器上一看,連按tab鍵補全命令都很困難。關鍵時刻來了,發現原來是磁碟空間滿了。 輸入命令 df -h 看到  /dev/vda1磁碟的使用率是100%。 既然發現是磁碟空間不夠,刪掉一些不要緊的檔案就好了

Jenkins伺服器磁碟空間爆滿問題解決

現象:今天接到運維同事通知,說我們測試伺服器磁碟空間不足,感覺很奇怪,以前沒有出現這種現象的。通過追蹤查詢,發現是jenkins的構建紀錄未清理,而且最近我們專案測試構建很頻繁,導致磁碟最近爆漲。注:檢視隱藏檔案的命令:du -sh .[!.]* * | sort -hr解決

記錄一次Centos磁碟空間滿的解決辦法

解決前 磁碟使用情況: 第二塊磁碟使用率達到97% [root@feng020 ~]# df -l Filesystem 1K-blocks Used Available Use% Mounted on /dev/xvda1 2

伺服器磁碟空間不足!

  上週就發現這個問題了,系統盤的空間變成了0,這樣,好多web應用程式都會報錯,當時清理了一下磁碟,騰出了少量空間,當時因為有些事兒,就忘記了。  今天,和使用者在討論售後系統的問題時,還在猜測是記憶體或是頻寬,正搞不清方向呢。分開後,使用者就打來了電話,反應說系統又出現了

關於伺服器記憶體空間滿問題

最近伺服器部署時發現記憶體空間佔滿,但是若干刪除檔案後,問題仍然沒有得到解決,最後發現是因為tomcat開的程序太多,佔用了空間,使用 ps -ef|grep 程序名 來檢視程序使用情況 ,使用 kill -9 pid號 來結束程序,之後記憶體空間就可以釋放了,驚了! --

SSH執行hqlCaused by: org.hibernate.hql.ast.QuerySyntaxException: user is not mapped [from user where username = ?]

執行 occurred ble xml文件 ron red 報錯 temp caused 報錯信息: ERROR Dispatcher:38 - Exception occurred during processing request: user is not mapped

springMVC框架 springmvc-config.xml文件 導入beans、context、mvc命名空間xml頁面開頭Multiple annotations found at this line

框架 cati -m clas class color eight height xml文件 根據網上給出的解決方案,可以解決 1、調出MyEclipse的preference,按照如下圖示配置 2、配置好之後,就可以在springmvc-congig.xml文件中引

查詢Linux系統中的佔用磁碟空間最大的前10個檔案或資料夾

   當磁碟空間被迅速佔用的時候,我們必須找出一些,比較佔用磁碟空間的檔案或者資料夾。通常情況下,最有可能找出佔用磁碟空間檔案或資料夾的地方,主要是 /tmp or /var or /home。       目前沒有單個命令來

瀏覽器訪問IIS伺服器上面的plist檔案HTTP Error 404.3

報錯:HTTP Error 404.3 - Not FoundThe page you are requesting cannot be served because of the extension configuration. If the page is a scrip

訪問IIS伺服器的json檔案404

轉載自:win7如何本地讓IIS伺服器可以讀取json檔案 首先,就需要配置本機IIS服務,在win7下找到“開啟或關閉windows功能”,選擇“Internet資訊服務”,然後確定,等待系統更新,成功後,就可以直接在瀏覽器輸入“localhost”顯示出

SSH時出現id to load is required for loading

原因關於ssh中模型驅動我在用edit方法時沒有加上判斷條件頁面傳來的id是否為空值:如下面程式碼:public String edit(){        book = bookService.getBookById(id);return "success";}所以新增功能

python 向linux vsftpd伺服器檔案ftplib.error_perm: 550 Permission denied

使用ftp模組向vsftpd伺服器上傳檔案報550錯誤的,程式碼如ftprun.py所示,vsftpd伺服器執行在ubuntu16.04。 解決方法解: 修改配置檔案:sudo gedit /etc/vsftpd.conf 去掉“write_enable=YES”前面