【问题标题】:Issue with writing files into Linux using PHP使用 PHP 将文件写入 Linux 的问题
【发布时间】:2014-10-18 18:54:13
【问题描述】:

我有一个问题 - 我有一个 PHP 脚本,它复制大型数据文件,我们的一台 linux 服务器用作数据文件的中间存储。然后它将这些数据文件推送到我们的各种合作伙伴服务器。最近我注意到磁盘快满了。

当我在磁盘上执行df -h 时,我得到了以下信息:

Filesystem      Size  Used Avail  Use% Mounted on
/dev/xvda1      29.9G  29.9G  0G  100% /
none            828M     0  828M   0%  /dev/shm
/dev/xvdb       147G  188M  140G   1%  /mnt/ephemeral

数据文件似乎存储在空间很小的/dev/xvda1 中。 /dev/xvdb 有很多空间,但似乎文件永远不会保存在那里。

我运行的 PHP 脚本位于 linux 框的 /var/www/html/data-transfer 文件夹中。该文件是写入本地硬盘的 PHP 的常规 ftp 函数。代码中没有什么花哨的东西。

这里我有点困惑,/dev/xvda1/dev/xvdb 是什么意思?如何修改我的脚本以改为写入/dev/xvdb

如您所见,我是 linux 文件系统的新手,非常感谢任何帮助!

【问题讨论】:

  • 将它们视为不同的驱动器,尽管它们可能只是某些 vps 设置中的不同虚拟磁盘/分区。只需更改您的脚本以存储到新路径(/mnt/ephemeral/wherever/you/like/in/here),记住网络服务器用户将需要在您选择的任何文件夹中的写入权限。
  • @JimL - 谢谢你的评论 - 你能给我关于如何存储到新路径的任何想法吗?我不知道如何在我的 php 脚本中访问 /dev/xvdb...
  • 您需要发布您的 php 脚本,以便我们查看当前配置的路径

标签: php linux filesystems diskspace


【解决方案1】:

您的问题实际上是:如何找出分区挂载到文件系统内的哪个位置?

考虑您示例中的此条目:

/dev/xvdb       147G  188M  140G   1%  /mnt/ephemeral

它告诉您设备(磁盘/分区)/dev/xvdb(即whatrever)已安装(导入)到本地文件系统的位置/mnt/ephemeral

所以后者是您感兴趣的位置,这就是您要使用的空间。因此,您应该修改您的存储代码,以便将文件保存在该位置。

哦,还有一个提示:不要忘记清理那里,否则那个位置会很快填满,不管它实际上有多大......

【讨论】:

  • 这正是我想要的!谢谢,我不会忘记在那里打扫的! :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-11-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-08-22
  • 1970-01-01
相关资源
最近更新 更多