Android 檔案系統的許可權設定

2021-06-20 11:29:12 字數 1255 閱讀 7190

在system.img和data.img,我們發現目錄和檔案有自己的uid/gid及相應的訪問許可權

但在android的編譯環境中,這些目錄和檔案目錄並沒有對此有相應的配置。

事實上,這些修改是有mkyaffs2image工具完成的。分析mkyaffs2image.c源**,其過程如下:1. 預製條件. 當我們使用 mkyaffs2image 工具生成yaffs2檔案系統時,這裡有兩個預製條件:

a. 使用'-f'標誌

/external/yaffs2/yaffs2/utils/mkyaffs2image.c.

如果'-f',**中fixstats標誌會被設定,一些特殊操作將會根據標誌來操作

if (strcmp(argv[1], "-f") == 0) b. 輸入的資料夾的名字必須是"data"或者"system"

if (fixstats) else if((len >= 7) && (!strcmp(argv[1] + len - 6, "system"))) else

fix_stat(argv[1], &stats);

}2. 正常配置:訪問許可權、uid/gid.

mkyaffs2image 給所有的目錄和檔案uid:gid/root:root,使用在編譯環境中得到原始的訪問許可權3. android特殊的配置如果fixstats標誌被設定了,mkyaffs2image 將會做一些特殊的配置用於android作業系統 /external/yaffs2/yaffs2/utils/mkyaffs2image.c.

main() -> process_directory() -> fix_stat() -> fs_config() -> fs_config() 定義在 sysem/core/include/private/android_filesystem_config.h.

該函式根據android_dirs和android_files資料結構做android相關的配置4. android_dirs和android_files資料結構定義在system/core/include/private/android_filesystem_config.h檔案中:static struct fs_path_config android_dirs = ,,,

,,,,

,,,,

,,,,

,};static struct fs_path_config android_files = ,,,

,,,,

,,,,

,,,,

,,,,

,,,,

,,};

linux檔案系統許可權

777 任何人可讀寫 440 不可讀寫 644 唯讀 755 可執行文件不可修改 rw 600 只有屬主有讀寫許可權。rw r r 644 只有屬主有讀寫許可權 而屬組使用者和其他使用者只有讀許可權。rwx 700 只有屬主有讀 寫 執行許可權。rwxr xr x 755 屬主有讀 寫 執行許可權 ...

linux檔案系統許可權

許可權型別 rwx,讀 寫 執行 r 4 w 2 x 1 rwx許可權說明 1.對於檔案而言 r 可以獲取檔案的資料 w 可以修改檔案資料 x 可以將此檔案執行為程序 2 對於目錄而言 r 可以使用ls命令獲取檔案列表 w 可以修改檔案列表,即建立和刪除 x 表示我們可以cd此目錄,並且可以使用ls...

檔案系統中的許可權含義

chmod abc file 例如 chmod 777 2.txt 其中a b c各為乙個數字,分別表示user group 及other的許可權 其中,r 讀取許可權,數字代號為 4 二進位制中表示 100 w 寫入許可權,數字代號為 2 二進位制中表示 010 x 執行或切換許可權,數字代號為 ...