请高手指点,system调用cp文件夹A到B,得到的B下面好多文件大小为0
Cent-OS 6.5上,程序test调用系统调用system,cp -rf A B,test本身位于A下面某个子目录,且test打开了A下面的好几个文件,
在执行system调用拷贝之后调用reboot进行了重启,重启后发现得到的B文件夹里好些文件大小为0。
此问题不是必现的,但是出现的频率也不低。有几次应该是磁盘空间不够引起的,更多的几次用df命令查看磁盘空间很充分,应该不是空间的问题。
分析思路:
1.system系统调用应该是阻塞式的,即肯定是拷贝结束之后才执行下面的命令
2.reboot命令是在cp命令执行完毕之后的几秒之后执行的,应该不会有影响
3.排除了磁盘空间不够的问题
请高手帮忙指点下思路,是否与拷贝的目录下有正在被打开的文件有关,但是我用了-rf参数应该是可以拷贝的啊。
请高手赐教,多谢!