android系统开机的时候在系统中创建一个文件

//挂载上分区后就立刻创建文件
+++ b/system/core/fs_mgr/fs_mgr.c
@@ -63,6 +63,8 @@
 
 #define ARRAY_SIZE(a) (sizeof(a) / sizeof(*(a)))
 
 /*
  * gettime() - returns the time in seconds of the system's monotonic clock or
  * zero on error.
@@ -229,6 +231,7 @@ static int __mount(const char *source, const char *target, const struct fstab_re
     /* We need this because sometimes we have legacy symlinks
      * that are lingering around and need cleaning up.
      */
     struct stat info;
     if (!lstat(target, &info))
         if ((info.st_mode & S_IFMT) == S_IFLNK)
@@ -241,6 +244,43 @@ static int __mount(const char *source, const char *target, const struct fstab_re
         fs_mgr_set_blk_ro(source);
     }
     errno = save_errno;
+
+    if(!strcmp(target, "/metadata")) {
+        //creat and read rbdserver file
+        int fd1;
+        char buffer[256] = {0};
+
+        fd1 = open("/metadata/rbdserver", O_RDONLY | O_CREAT, 0x755);
+        if(fd1 < 0) {
+            INFO("%s: open rbdserver infor failed!\n", __func__);
+        } else {
+            read(fd1, buffer, sizeof(buffer));
+            INFO("%s: read rbdserver info:%s\n", __func__, buffer);
+            close(fd1);
+        }
+   }

猜你喜欢

转载自blog.csdn.net/u014630142/article/details/110670998