日期:2014-05-16  浏览次数:20694 次

系统文件么被莫名修改...应用程序有可能干这事么?

事件: 同事使用应用程序进行一些文件等操作后,出现其他目录下的系统文件被破坏的情况。 
  同事说根本没操作过系统文件的目录(/etc) 相信这种低级错误他应该不会犯, 那
系统文件在没人动的前提下,怎么就被修改了呢? 

疑问: 有没有可能是 他的程序越界了,无意间修改到了/etc下面的文件? 比如内存越界什么的原因。


环境: PowerPc 2.6.29

  根文件系统为: Ramdisk文件系统 , 我又挂载了一个jffs2文件系统,存储一些需要保存的配置文件。
jffs2文件挂载在了,/usr/local/conf下。

FLASH分区方面,PowerPc使用的device tree, 根文件系统和jffs2在划分上是连续的(不重叠).

分区应该是正常的,cat /proc/mtd 可以看到 根文件系统,和jffs2文件系统等。


我们项目经理说,可能是我FLASH分区不对,导致内存混乱了。

我对虚拟内存这块理解的不深,这会正在看各种资料。 但我总感觉,这根我FLASH分区有关系???


问题: 1、除了直接的OPEN文件,可以直接修改文件外, 什么方法, 可以破坏文件的存储? 比如破坏文件之间的
  链表结构。
   
  2、出现这种现象的原因可能是?  
  3、FLASH分区会对这个有影响么? 如有影响,我把各mtdblock之间留些空隙,可以解决此问题否?(个人感觉应该跟这个没影响..)


问题有点纠结,不太好描述...谷歌百度查,都不好查... 望各位帮帮忙 先谢过!



------解决方案--------------------
最可能的情况是:
1.这位同事忽视了绝对路径和相对路径之间的关系和区别
2.这位同事没有注意程序运行时的父目录所在位置
------解决方案--------------------
你的东西不能用串口进行调试?你怎么确定是文件被破坏了?