4

サーバーに接続された USB ハードディスクの空き容量を (php を使用して) 取得しようとしていますが、disk_free_space() は常にブート パーティションで利用可能な容量を返します。これが私のサーバー設定の要約です:

Rasbperry Pi 2 running rasbian.
php version: 5.4.39-0+deb7u2
booting from 32 gb sd card with about 24 gb free
3TB ntfs gpt usb hard drive mounted 
ntfs-3g installed on system

テストコード:

<?
echo ":".disk_free_space("")."\n";
echo "/".disk_free_space("/")."\n";
echo "/mnt/drive:".disk_free_space("/mnt/drive")."\n";
?>

出力

PHP Warning:  Module 'apc' already loaded in Unknown on line 0
PHP Warning:  PHP Startup: apc.shm_size now uses M/G suffixes, please update your ini files in Unknown on line 0
PHP Warning:  disk_free_space(): No such file or directory in /home/pi/test.php on line 2
:
/24991305728
/mnt/drive:24991305728
4

1 に答える 1

0

理解した。ハードドライブを再フォーマットすると、その UUID が変更され、/etc/fstab の構成が無効になります。したがって、ドライブはアクセス可能でしたが、ntfs3g でマウントされていなかったため、容量の読み取りに問題があったと思います。fstab の行を新しい UUID に更新すると、正しく動作し始めました。

UUID={newuuid} /mnt/drive ntfs-3g defaults,permissions 0 0
于 2015-05-05T15:16:50.180 に答える