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

linux内核态下怎么重命名文件?求解
在网上查了一些资料,只讲到打开、读写文件的操作,没有说道怎么重命名文件。
查看了内核里面的函数,有一个vfs_rename的函数,但不知道怎么用。
求大大们解惑。

------解决方案--------------------
内核态不适合操作文件,你可以让内核去调用应用程序操作文件。




vfs_rename 仅仅是给um 这个虚拟机用的
------解决方案--------------------
错了 vfs_rename 是系统调用rename的实现 ,但不适合由内核自己调用
------解决方案--------------------
都有open了,不会举一反三?
找到与其同级的rename

当然也是不能直接调用的,要做一些特殊处理,标志出传入的文件名等是在内核态,不是用户态提供的,这个请参考open的内核态调用。