當(dāng)前位置: 首頁IT技術(shù) → 刷機(jī)遇到can't open /sdcard/update.zip(bad)怎么辦

刷機(jī)遇到can't open /sdcard/update.zip(bad)怎么辦

更多

最近在使用安卓手機(jī)recovery下刷補(bǔ)丁時(shí)出現(xiàn)了這樣的提示:“can't open /sdcard/update.zip(bad)”

網(wǎng)上很多說是SD卡有問題,什么格式化拉,換卡拉,還有說補(bǔ)丁包有問題,不要用下載工具下,用瀏覽器直接下載,等等等等……

哎,解決這個(gè)問題花了一天的時(shí)間,起初認(rèn)為是刷機(jī)腳本問題,改了又改,無效。又以為是文件權(quán)限設(shè)置問題,改了又改,還是無效,

其實(shí)出現(xiàn)這個(gè)提示的原因就是:補(bǔ)丁包中的文件名不能有中文!空格是可以有的,中文是不能有的,忘了aapt也不識(shí)別中文么?

不過總算沒白折騰,通過不斷的網(wǎng)上搜索,也學(xué)到了很多知識(shí)。

刷機(jī)精靈(一鍵刷機(jī)精靈)
6.1
類別: 手機(jī)工具    大小:26.9M    語言: 中文
查看詳細(xì)信息 >>

關(guān)于權(quán)限:

set_perm_recursive(1002, 1002, 0755, 0440, "/system/etc/bluetooth"); 

set_perm(0, 0, 0755, "/system/etc/bluetooth");

先是設(shè)置bluetooth目錄和文件的UID1002,GID1002,目錄權(quán)限0755,其下文件權(quán)限0440,

再設(shè)置bluetooth目錄的UID0,GID0,權(quán)限0755

分為兩行來寫,為設(shè)定目錄下文件用了第一行,又為了設(shè)目錄本身用了第二行。set_perm原來是可以設(shè)定目錄權(quán)限的,以前一直以為只能用于文件。

關(guān)于創(chuàng)建新文件的默認(rèn)權(quán)限:

很多刷機(jī)補(bǔ)丁的腳本里用了package_extract_dir,但并未用set_perm設(shè)置權(quán)限,那么未設(shè)置權(quán)限的文件的權(quán)限到底是怎么規(guī)定的呢?

recovery模式建立新文件,算是root賬戶

一、默認(rèn)權(quán)限: 

1:文件的默認(rèn)權(quán)限為:666 rw- rw- rw- 

2:目錄的默認(rèn)權(quán)限為:777 rwx rwx rwx

二、umask: 

默認(rèn)root的umask值為:0022,所以新創(chuàng)建的文件權(quán)限為:644,目錄權(quán)限為:755 

其它帳戶的umask值為:0002,所以新創(chuàng)建的文件權(quán)限為:664,目錄權(quán)限為:775

這就是為什么刷機(jī)包刷進(jìn)文件,不設(shè)權(quán)限也可以的原因了,因?yàn)槟J(rèn)建立的權(quán)限正是我們所熟悉的(0,0,0755,0644)。當(dāng)然這是對一般文件,特殊文件如su還是要設(shè)置權(quán)限的。

參考:

Linux文件默認(rèn)權(quán)限:umask

Linux文件與目錄的默認(rèn)權(quán)限及隱藏權(quán)限

Linux 文件與目錄的默認(rèn)權(quán)限

更多精彩內(nèi)容請點(diǎn)擊

安卓刷機(jī)軟件

專題
熱門評(píng)論
最新評(píng)論
第 1 樓 河北電信 網(wǎng)友 客人 發(fā)表于: 2012/12/18 13:38:03
說的很好。

支持( 0 ) 蓋樓(回復(fù))

發(fā)表評(píng)論 查看所有評(píng)論(0)
昵稱:
表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
字?jǐn)?shù): 0/500 (您的評(píng)論需要經(jīng)過審核才能顯示)