爱黑武论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6948|回复: 22

z6制作刷机包教程系列之五 &am

[复制链接]
发表于 2009-6-19 10:06 | 显示全部楼层 |阅读模式

立即注册,加入爱黑武论坛的大家庭!爱黑武,爱上搞机生活!

您需要 登录 才可以下载或查看,没有账号?注册

x
今天讲下 怎么修改CG46和CG36

CG46也就是我们的字体单刷包,,,其实呢,,大家去百度一下 v8字体单刷包 z6字体单刷包 等等关键字 就会搜出来很多,,,既然别人写了CG46的教程我就不写了


当然有个 小小问题 ,,做好CG46了,,也打包成CG46.smg了,,,我们还需要用 WinHex 修改CG36.smg,,增加效验值,,,当然相比CG43和CG52就要难点了,,使用WinHex就以后用一个教程来讲


下面说说 CG36.smg,,前面我们说了这么解开 CG36.smg ,,如果你用linux的话,,我这里有一个 linux的 squashfs.2.1版本的,放在linux里面直接安装 squashfs-tools_2.1r2-0.1_i386.rar (52 KB, 下载次数: 191)


如果你不知道squashfs是什么的话,,就算了


先看看 CG36的全貌,,, (个人不建议菜鸟 制作CG36)

QQ截图未命名.jpg

大家一看,,这个怎么像我们手机里面的根目录呢...

它本来就是我们手机的根目录


第一个文件夹 bin

这个文件夹里面全部都是命令,,什么cp mv rm sed grep 都在里面,,但是为什么没有tar gzip dirnameswapon swapoff
我们过去用tar 就要使用busybox tar 用gzip 就用 busybox dirname 用 dirname 就用busybox dirname,,很麻烦
现在我们就需要增加 tar gzip dirname swapon swapoff 命令

打开Cygwin,,进入CG36/bin文件夹,,用我的电脑为例

cd /home/Administrator/CG36/bin
cp busybox /bin
ln -s /bin/busybox tar
ln -s /bin/busyboxgzip
ln -s /bin/busyboxdirname
ln -s /bin/busyboxswapon
ln -s /bin/busyboxswapoff
ln -s /bin/busyboxmkswap
ln -s /bin/busyboxtime
ln -s /bin/busyboxfree
如果你还需要增加什么命令,,,你们要去查一下,,busybox里面有哪些,,,如果busybox里面没有的命令,,建立出来就没有作用,,大家可以用telnet连接手机,,输入 busybox 查看busybox里面有哪些命令

OK了,,,(就不截图了,,因为主要CG36是针对高手制作,,,不用整了那么傻瓜式)


第二个文件夹 usr

CG36/usr/SYSqtapp/phone/Device_Connect.wav这个是 java提示音,,可以取消了,,(把文件改名,,或者删除)
CG36/usr/SYSqtapp/am/bin/am 这个是官方主菜单,,默认没有图标的,,我们用2级菜单的am替换,,那么开机后默认就是2级主菜单
CG36/usr/bin 这个里面是很多的命令,,大家把showQ系统的所有命令复制到里面,,以后编写一些shell程序就不用 过去的那个头文件了

第三个文件夹 mmc

默认里面一个有个mmca1文件夹,,如果需要挂载第二分区,,就在里面建立几个文件夹,,比如mmca2 mmca3 mmca4 mmca5 等等

第四个文件夹 etc

第一个文件 CG36/etc/profile (bash的脚本)

官方的是这样的...
PATH=\"/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games\"
修改一下
PATH=\"/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games:/ezxlocal/LinXtend/bin:/ezxlocal/LinXtend/usr/bin\"
还有一个,,我们使用telnet的时候,,输入showQ,,会发现telnet中提示 QTDIR 是否设置正确??
所以我们可以在 profile中增加一行代码,,设置一下 QTDIR

if [ -f /etc/initservices/ezx_flexbit/ezxenv.sh ] ; then
. /etc/initservices/ezx_flexbit/ezxenv.sh
fi

OK了 ,,这个/etc/initservices/ezx_flexbit/ezxenv.sh就是专门来设置QTDIR的

第二个文件 CG36/etc/fstab

这个文件是用来 开机挂载分区的,,,打开看一下

/dev/mtdblock/user /ezxlocal jffs2 noatime,sync,noexec,nodev,nosuid 0 0
/dev/mtdblock/setup /usr/setup squashfs ro,noexec 0 0
/dev/mtdblock/secure /usr/securesetup squashfs ro,noexec 0 0
/dev/mtdblock/pds /etc/pds yaffs noatime,sync,shred,noexec,nodev,nosuid 0 0
/dev/mtdblock/resrc /usr/data_resource squashfs ro,noexec 0 0
/dev/mtdblock/lang /usr/language squashfs ro 0 0
/dev/mtdblock/mass_storage /mnt/msc_int0 yaffs noatime,sync,noexec,nodev,nosuid 0 0

这个就是分区的挂载 ,,里面有很多的noexec ,,就是这个分区 禁止执行linux程序,,,我们要把noexec删除
其次,我们可以自己增加,,我的增加了一个 开启内存卡第4个虚拟内存分区,,看下我修改后的

/dev/mtdblock/user /ezxlocal jffs2 noatime,sync,nodev,nosuid 0 0
/dev/mtdblock/setup /usr/setup squashfs ro, 0 0
/dev/mtdblock/secure /usr/securesetup squashfs ro 0 0
/dev/mtdblock/pds /etc/pds yaffs noatime,sync,shred,nodev,nosuid 0 0
/dev/mtdblock/resrc /usr/data_resource squashfs ro 0 0
/dev/mtdblock/lang /usr/language squashfs ro 0 0
/dev/mtdblock/mass_storage /mnt/msc_int0 yaffs noatime,sync,nodev,nosuid 0 0
/dev/mmca4 swap swap defaults 0 0
OK了,,这个文件修改完毕

第三个文件 CG36/etc/initservices/startup文件夹的修改

这个文件夹是我们开机后最先执行的程序,,如果要实现开机就挂在第二分区,,等等,,就要在里面修改和增加内容,,截个图

QQ截图未命名2.jpg


怎么全部都是快捷方式呢,,,

这些快捷方式都是连接到 CG36/etc/initservices/services 里面的,,,

我们回到startup文件夹
第一个文件 15mountall对应 services里面的mountall.sh
这个里面的文件很多都是自读的,,用uedit32修改不了,,首先在 cygwin中 输入

cd /home/Administrator/CG36/etc/initservices/services
chmod 777 *

修改了读写权限了

在mountall.sh里面主要增加一些 复制文件,,,特别是ezx_idle.cfg如果我们的CG43里面的ezx_idle.cfg是快捷方式,,如果在CG52的开机启动中复制的话,,开机后,,配置表就会只出现3个选项,,还需要重启才可以生效,,如果在 mountall.sh里面复制的话,,就不会出现这个bug

增加一段代码

if [ ! -f /ezxlocal/download/appwrite/setup/ezx_idle.cfg ] ; then
if [ -f /usr/data_resource/oss/ezx_idle.cfg ] ; then
cp -f /usr/data_resource/oss/ezx_idle.cfg /ezxlocal/download/appwrite/setup/ezx_idle.cfg
else
cp -f /etc/initservices/ezx_flexbit/ezx_idle.cfg /ezxlocal/download/appwrite/setup/ezx_idle.cfg
fi
fi

我在CG36/etc/initservices建立了一个ezx_flexbit文件夹 ,,放了很多开机需要复制的文件
上面的代码什么意思,,如果你看不懂,,就不要去修改CG36了,,因为CG36里面全部都是一些命令

第二个文件 16mot_security 对应services里面的mot_security.sh


这个文件是增加了mount的权限,,,开机后我们会无法使用mount,,可以删除这个文件,,不然的话,,下面我们的第二分区无法挂载

现在我们需要在startup里面增加3个文件 17a_mount_mmc和 17n_mount_yuerstuff和17r_cp_file_mount_ttf


这个3个文件都是有顺序的,为什么我都用 17开头,,还要用 17a 17n 17r 等等,,因为在 startup文件夹里面的文件是按照 顺序执行的

我们截个图,,看看,,这3个文件的内容

QQ截图未命名3.jpg

QQ截图未命名4.jpg

QQ截图未命名5.jpg



手机内存第二分区还需要跟 17mountNand配合 也就是 services的mountNand.sh
打个比方,,,mnt目录剩余50M,,官方的mountNand.sh会默认建立 49M的手机内存,,如果再去建立20M的 手机内存第二分区的话 ,,是不是就出现bug了
所以我们需要修改 mountNand.sh ,,建立手机内存的时候要减去 20M
对于V8-512的话,,如果建立手机内存第二分区100M 就需要减去100M才对

其次官方的默认挂载手机内存用的 noexec
MOUNT_OPTIONS=\"-t vfat $VFAT_IMAGE $VFAT_MOUNT_PT -o sync,shortname=mixed,utf8,loop,uid=2000,gid=233,noexec,nosuid,nodev\"
这样的话我们手机内存的程序就不能用了,,所以删除noexec
MOUNT_OPTIONS=\"-t vfat $VFAT_IMAGE $VFAT_MOUNT_PT -o sync,shortname=mixed,utf8,loop,uid=2000,gid=233,nosuid,nodev\"
还有修改61mountMMC也就是services的mountMMC.sh(挂载内存卡)
里面同样的 用了noexec
mount -t vfat /dev/mmca1 /mmc/mmca1 -o uid=2000 -o gid=233 -o utf8 -o shortname=mixed -o umask=002 -o noexec-o noatime
同样的删除noexec
mount -t vfat /dev/mmca1 /mmc/mmca1 -o uid=2000 -o gid=233 -o utf8 -o shortname=mixed -o umask=002 -o noatime

其余的呢,,就有2个注意的地方
我的挂载手机内存第二分区的话 挂载到 /ezxlocal/download/yuerstuff 为什么不挂在到 /ezxlocal/download/mystuff2 ,,因为我们连接电脑后,,,.需要重新挂载手机内存,,程序会检查mount是否有 /ezxlocal/download/mystuff 字段,,如果有就退出 ,,
如果手机内存第二分区为 /ezxlocal/download/yuerstuff2 连接电脑后,,手机内存就会挂载不上去,这就是bug,,我才改名为 /ezxlocal/download/yuerstuff

第二个呢,,就是连接电脑,,我们会发现手机内存的程序可以使用,,但是内存卡的不可以使用了,,所以我们需要在 mountNand.sh增加一段话

mount -t vfat /dev/mmca1 /mmc/mmca1 -o uid=2000 -o gid=233 -o utf8 -o shortname=mixed -o umask=002 -o noatime
mount | grep '/mmc/mmca1.*noexec'
if [ $? -eq 0 ]; then
mount -o remount,rw,exec /dev/mmca1 /mmc/mmca1
fi

这样的话,,连接电脑后,手机内存和内存卡都可以用了 (过去我们用守护进程,会让手机变的卡点,,,现在不用了)



我想呢,,,,说这么多,,,菜鸟基本上 是 一无所知,,,高手也会觉得头痛,,,我做CG36,,几天之内,,做了30多个,,,做一个刷一次机,,,真的是累啊

我想了一下,,,其实我还是把这些程序发出来,.,,不然你们修改CG36会苦恼
当然现在有一些人 把别人的成果改个名字就是自己的,,当然这种人关键是不能去理解我的辛苦,,,,想问一句既然大家都是作包人,,,,都明白作包的辛苦,,,何必互相偷盗呢???大家都尊重别人的成果多好呢???
不过还是加个权限500,,,主要是让我们论坛的人气高点,,,理解一下
z6_v8_CG36.tar.gz (1.52 MB, 下载次数: 219)

这个附件包含CG36/bin和CG36/etc 可以直接替换官方的CG36的/bin和/etc 很简单的
注意看下那个 CG36/etc/initservices/startup/16mot_security 这个文件如果没有删除的话,,挂载第二分区会失败,,,所以要手动删除这个文件
我把CG36里面最难做的和最关键的都发出来了,,,
对于v8_512的需要修改里面的手机内存第二分区的大小,,,因为z6的手机内存是60M,,我分为 手机内存第二分区20M的,,,所以呢,,,v8_512的要自己去改下程序
第一个修改17mountNand 其次修改 17n_mount_yuerstuff 修改就不用我教了嘛,,,只是修改下数字,,我的手机内存第二分区是20M ,也就是20480 如果你想把512的设置为200M或100M,,就把里面的20480 改成204800或者102400 很简单的 (手机里面一般是用KB作为单位,,而不是M ,,所以是20480)

里面有些文件是 快捷方式,,如果用 windows的rar或者7z解压会出问题 ,,在cygwin中 输入 tar -zxvf z6_v8_CG36.tar.gz 就解压出来了


对于CG36就基本上结束了,,,比较难的东西,,我都帮你解决了,,,,简单的东西还是要靠你自己去修改嘛

下一篇讲 所有CG的快捷方式建立




今天是2009年7月1号,面对论坛今日出现的危机,面对菜鸟的很多郁闷,,以后免费下载我的附件
发表于 2009-6-19 10:09 | 显示全部楼层

Re:z6制作刷机包教程系列之五    CG46.smg和

偶占个沙发先
发表于 2009-6-19 10:11 | 显示全部楼层

Re:z6制作刷机包教程系列之五    CG46.smg和

什么运气啊
呵呵
发表于 2009-6-19 10:20 | 显示全部楼层

Re:z6制作刷机包教程系列之五    CG46.smg和

 优势你很强啊!!1
发表于 2009-6-19 10:20 | 显示全部楼层

Re:z6制作刷机包教程系列之五    CG46.smg和

来看看不错啊!
发表于 2009-6-19 10:26 | 显示全部楼层

Re:z6制作刷机包教程系列之五    CG46.smg和

[s:71]
什么东西。。?
发表于 2009-6-19 10:27 | 显示全部楼层

Re:z6制作刷机包教程系列之五    CG46.smg和

再顶~~
发表于 2009-6-19 11:09 | 显示全部楼层

Re:z6制作刷机包教程系列之五    CG46.smg和

[s:69]
发表于 2009-6-19 11:16 | 显示全部楼层

Re:z6制作刷机包教程系列之五    CG46.smg和

[s:60][s:60][s:60]
发表于 2009-6-19 12:03 | 显示全部楼层

Re:z6制作刷机包教程系列之五    CG46.smg和

觉对支持!
 Hello,黑武的好机友!回复想偷个懒?点这里: 
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|Archiver|手机版|爱黑武论坛 ( 京ICP备2023028323号 | 京公网安备11011202000270号 )

GMT+8, 2024-3-29 04:42 , Processed in 0.060145 second(s), 24 queries .

Powered by Discuz! X3.4

Copyright © 2001-2024, ihei5.com

快速回复 返回顶部 返回列表