fopen問題?

來源:互聯網
上載者:User
$file='/data0/htdocs/www.25229.com/data/block/687-accept_service-order_str.data';
$mod='a+';
if(!$fp = fopen($file, $mod)) {
echo '1';
}else{
echo '2';
}

報fopen: failed to open stream: No space left on device ,換一個檔案名稱就不報錯,可以建立檔案,直接在伺服器用命令建檔案也是報同樣的錯,例如:改成"687-accept_service-order_str.data1"就不報錯,實際硬碟上還有很多空間
該分區裡的目錄數限制也沒有問題,分區格式是:ext4的

為什麼換一個檔案名稱就沒有問題,頭痛中!!!


回複討論(解決方案)

是不是字元的問題呢?
在西文狀態下再打一遍

沒問題,換目錄都可以建檔案,就是這個"/data0/htdocs/www.25229.com/data/block/"目錄不能這個名稱的檔案,

用你的代碼測試過,一切正常,輸出2。

既然改其他檔案名稱可以,那就不可能是空間不夠了。

試試把$mod='a+'; 改成r試試能不能讀出。

不行,只有這個目錄"block"不能建立檔案,其它的目錄下沒有問題,但這個目錄下換個檔案名稱就以,
實際這個檔案也沒存在,在伺服器上直接用命令列建立檔案也不行,和程式好像無關,但是就不知道是什麼原因就這個名稱在這目錄下不能建立,在其它目錄又可以,該目錄下檔案數:7718686個檔案,不過也沒超過分區限制的"inodes"數

都有小兩萬個檔案了,不能排除你那個檔案因損壞造成不能 a+

rm /data0/htdocs/www.25229.com/data/block/687-accept_service-order_str.data
rm: cannot remove `/data0/htdocs/www.25229.com/data/block/687-accept_service-order_str.data': No such file or directory
檔案不存在,
touch /data0/htdocs/www.25229.com/data/block/687-accept_service-order_str.data 時提示No space left on device

但這個目錄下建其它檔案又可以,只要名稱不一樣就可以

其實這是典型的檔案目錄資訊被損壞的表現
每個檔案在目錄檔案中都有一項,標誌著這個檔案在硬碟上的位置,佔用的扇區數以及其他管理資訊。
只要其中某個位元組損壞了,就可能引發各種問題
你可以把整個目錄複寫到新目錄下,然後去刪除原目錄,此時你就可能會發現這個目錄刪不掉。出現這種情況就很麻煩了,簡單的處理就是把能刪的都刪掉。改用新目錄就是了。如果你有檔案粉碎機,也可以嘗試用一下
當然能刪掉就最好了,把複製的新目錄改名回去就可以了

刪除目錄會影響網站的使用呀,網站裡面的資料都在裡面
而且這個目錄自動丟失檔案,只要丟失的檔案,就不能再次建立設了,只有這個目錄會這樣

是的,刪除是會有些影響,但不是跟你說了複製一份嗎?
做的時候當然要在訪問量不大的時候進行,發個公告。不會有太大的影響

目錄會丟失檔案,表示目錄中檔案太多,片段太多。也可能是磁軌老化造成的
總之讓目錄在硬碟上換個位置,是有益無害的
解決檔案太多的問題,可能涉及程式修改,可先放一放

應該是目錄問題,我直接 mount --bind 一個新目錄就可以了,謝謝了

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.