åã®ããŒãã§ã¯ãã¯ããã¯ã®ããã«ããŒãããŠåäœãããã¡ãŒã ãŠã§ã¢ãäœæããŸãããããã®åºæ¬æ©èœãæ¡åŒµããããšæããŸãã æãèŠæ±ãããæ¡åŒµæ©èœã®1ã€ã¯ãã¹ãŒããŒãŠãŒã¶ãŒç¹æš©ïŒ root ïŒã§ã®äœæ¥ã®ãµããŒãã§ãã busyboxçµ±åãå«ãŸããŸãã ããã«ãã·ã¹ãã ã®èµ·åæã«ä»»æã®ã¹ã¯ãªãããå®è¡ãã ramdiskãããŒãºã«åãããæ¹æ³ãåŠç¿ããŸãã
ããžãŒããã¯ã¹
busyboxã¯ãã¢ãã€ã«ã·ã¹ãã ã«ãšã£ãŠéåžžã«éèŠãªãå°ãããµã€ãºãšããã©ãŒãã³ã¹ã«çŠç¹ãåãããã³ã³ãœãŒã«UNIXãŠãŒãã£ãªãã£ã®ã»ããã§ãã Androidã·ã¹ãã ãšãšãã«ãç¬èªã®ãŠãŒãã£ãªãã£ã»ããïŒã·ã¹ãã ã«å¿ èŠãªæå°éã®æ©èœãæäŸããããŒã«ããã¯ã¹ ïŒãæäŸãããŸãããã®çµæãéçããã³æ©èœçã«ã¯ããã·ã³ãã«ã«ãªããŸãã ã·ã¹ãã ã«busyboxãååšããããšã§ãäžæ¹ã§éçºè ã¯ããã€ã¹äžã§ãªã¢ãŒãã§äœæ¥ãããšãã«å¿«é©ã«æããããšãã§ããŸããäžæ¹ã§ãè€éãªã¹ã¯ãªãããèšè¿°ã§ããããã«ãªããããšãã°run-partsã䜿çšããŠããŒãæã«ç¬èªã®ã¹ã¯ãªãããèµ·åããã¡ã«ããºã ãå®è£ ã§ããŸãã äžéšã®Androidã¢ããªã±ãŒã·ã§ã³ïŒç¹ã«rootã䜿çšããã¢ããªã±ãŒã·ã§ã³ïŒã§ã¯ãbusyboxã®ååšãå¿ é ã§ããããšãèæ ®ãã䟡å€ããããŸãã
ç§ãã¡ã®ç掻ãç°¡çŽ åããããã«ããã§ã«åéãããŠããbusyboxããã©ãããã©ãŒã ã«äœ¿çšããŸãã ããšãã°ãæªåé«ãã¢ãã³ã®1.16.0ãããã§ããã¯ã¢ãã ã§ããŸã ã åæ¢ã§æéããã人ã¯ã å ¬åŒããªãŒ ïŒã¢ã³ããã€ãããŒã«ãã§ãŒã³ã«é©å¿ããããã®ãã¡ã€ã«ãšlibc ã®ã¢ã³ããã€ãå®è£ ã®ããã®ãã€ãªãã㯠ïŒããbusyboxãæ§ç¯ãããã crosstool-ngãšuCLibcã§XVilkaã¢ã»ã³ããªåœä»€ã䜿çšãããã ãã€ãªããã¯ã®åé¡ããã§ã«è§£æ±ºãããŠããcyanogenmodã®æã
ãããã£ãŠã busyboxãè¿œå ããåã«ãã·ã¹ãã å ã®ããã€ãã®ã€ããªãã®ãŒã®åé¡ã解決ããå¿ èŠããããŸãã
- busybox / toolboxã䜿çšããäžè¬çãªã¹ããŒã ã§ã¯ãå®è¡å¯èœãã¡ã€ã«ãé 眮ãã ã¢ãã¬ããã®ååã§ãªã³ã¯ãäœæããå¿ èŠããããŸãã ãªã³ã¯ã¯ã $ PATHå€æ°ããã®ãã¹ã§ã¢ã¯ã»ã¹å¯èœã§ãªããã°ãªããŸããã busyboxã®ãªã³ã¯ã¯ã©ãã«ä¿åããŸããïŒ / system / bin ïŒ /ã·ã¹ãã / xbin ïŒ å¥ã®ãã£ã¬ã¯ããªïŒ
- äºåã«äœæããããªã³ã¯ã䜿çšãããããã¡ãŒã ãŠã§ã¢ãã€ã³ã¹ããŒã«ãã段éã§çæããŸããïŒ
æåã®éšåã®äŸã§ã¯ã ããŒã«ããã¯ã¹ã«äºåäœæããããªã³ã¯ã䜿çšããŸããã ãã ããã·ã³ããªãã¯ãªã³ã¯ã«ç¹å®ã®åé¡ãããWindowsã·ã¹ãã ã§ãã¡ãŒã ãŠã§ã¢ãéçºãããŠããå Žåããã®ãªãã·ã§ã³ã¯å°é£ã§ãã - busyboxã®ãã«ãã«å¿ããŠã ããŒã«ããã¯ã¹ã§ãã§ã«äœ¿çšå¯èœãªã³ãã³ãã»ããããªãŒããŒã©ã€ãã§ããŸã ã 誰ãããéèŠã§ããïŒ
busyboxã¯å¹ åºãæ©èœãæäŸããŸãïŒäŸïŒ chmodã®æš©å©ã®æåå²ãåœãŠïŒããäžæ¹ã§ãã»ããã®ãµã€ãºãå°ããããããã«busyboxããæ¢ã«å®è£ ãããŠãããŠãŒãã£ãªãã£ãé€å€ãããå ŽåããããŸãã
busyboxããµããŒãããã¢ãã¬ããã 調ã¹ãã«ã¯ããã©ã¡ãŒã¿ãªãã§ããã€ã¹ã§å®è¡ããã ãã§ãã
$ adb remount && adb push busybox / cache / $ adb shell chmod 0755 / cache / busybox $ adb shell / cache / busybox | tail tcpsvd, tee , telnet, telnetd, test , tftp, tftpd, time , timeout, top, touch , tr , traceroute, true , tty, ttysize, tunctl, udpsvd, umount , uname , uncompress, unexpand, uniq , unix2dos, unlzma, unlzop, unzip , uptime , usleep, uudecode, uuencode, vconfig, vi , vlock, volname, watch, watchdog, wc , wget , which , who , whoami , xargs , yes , zcat , zcip
$ adb remount && adb push busybox / cache / $ adb shell chmod 0755 / cache / busybox $ adb shell / cache / busybox | tail tcpsvd, tee , telnet, telnetd, test , tftp, tftpd, time , timeout, top, touch , tr , traceroute, true , tty, ttysize, tunctl, udpsvd, umount , uname , uncompress, unexpand, uniq , unix2dos, unlzma, unlzop, unzip , uptime , usleep, uudecode, uuencode, vconfig, vi , vlock, volname, watch, watchdog, wc , wget , which , who , whoami , xargs , yes , zcat , zcip
$ adb remount && adb push busybox / cache / $ adb shell chmod 0755 / cache / busybox $ adb shell / cache / busybox | tail tcpsvd, tee , telnet, telnetd, test , tftp, tftpd, time , timeout, top, touch , tr , traceroute, true , tty, ttysize, tunctl, udpsvd, umount , uname , uncompress, unexpand, uniq , unix2dos, unlzma, unlzop, unzip , uptime , usleep, uudecode, uuencode, vconfig, vi , vlock, volname, watch, watchdog, wc , wget , which , who , whoami , xargs , yes , zcat , zcip
$ adb remount && adb push busybox / cache / $ adb shell chmod 0755 / cache / busybox $ adb shell / cache / busybox | tail tcpsvd, tee , telnet, telnetd, test , tftp, tftpd, time , timeout, top, touch , tr , traceroute, true , tty, ttysize, tunctl, udpsvd, umount , uname , uncompress, unexpand, uniq , unix2dos, unlzma, unlzop, unzip , uptime , usleep, uudecode, uuencode, vconfig, vi , vlock, volname, watch, watchdog, wc , wget , which , who , whoami , xargs , yes , zcat , zcip
$ adb remount && adb push busybox / cache / $ adb shell chmod 0755 / cache / busybox $ adb shell / cache / busybox | tail tcpsvd, tee , telnet, telnetd, test , tftp, tftpd, time , timeout, top, touch , tr , traceroute, true , tty, ttysize, tunctl, udpsvd, umount , uname , uncompress, unexpand, uniq , unix2dos, unlzma, unlzop, unzip , uptime , usleep, uudecode, uuencode, vconfig, vi , vlock, volname, watch, watchdog, wc , wget , which , who , whoami , xargs , yes , zcat , zcip
$ adb remount && adb push busybox / cache / $ adb shell chmod 0755 / cache / busybox $ adb shell / cache / busybox | tail tcpsvd, tee , telnet, telnetd, test , tftp, tftpd, time , timeout, top, touch , tr , traceroute, true , tty, ttysize, tunctl, udpsvd, umount , uname , uncompress, unexpand, uniq , unix2dos, unlzma, unlzop, unzip , uptime , usleep, uudecode, uuencode, vconfig, vi , vlock, volname, watch, watchdog, wc , wget , which , who , whoami , xargs , yes , zcat , zcip
$ adb remount && adb push busybox / cache / $ adb shell chmod 0755 / cache / busybox $ adb shell / cache / busybox | tail tcpsvd, tee , telnet, telnetd, test , tftp, tftpd, time , timeout, top, touch , tr , traceroute, true , tty, ttysize, tunctl, udpsvd, umount , uname , uncompress, unexpand, uniq , unix2dos, unlzma, unlzop, unzip , uptime , usleep, uudecode, uuencode, vconfig, vi , vlock, volname, watch, watchdog, wc , wget , which , who , whoami , xargs , yes , zcat , zcip
$ adb remount && adb push busybox / cache / $ adb shell chmod 0755 / cache / busybox $ adb shell / cache / busybox | tail tcpsvd, tee , telnet, telnetd, test , tftp, tftpd, time , timeout, top, touch , tr , traceroute, true , tty, ttysize, tunctl, udpsvd, umount , uname , uncompress, unexpand, uniq , unix2dos, unlzma, unlzop, unzip , uptime , usleep, uudecode, uuencode, vconfig, vi , vlock, volname, watch, watchdog, wc , wget , which , who , whoami , xargs , yes , zcat , zcip
ããŒã«ããã¯ã¹ã§äœ¿çšå¯èœãªã¢ãã¬ããã®ãªã¹ããååŸããããã«ãå ã®ãã¡ãŒã ãŠã§ã¢ã§äœæããããªã³ã¯ã«çŠç¹ãåœãŠãŸãã
- $ find habrrom / system / bin / -type l -printf 'ïŒ fã' | ãã£ãœ
- getpropãinsmodã ifconfig ãsetpropãwipeãwatchpropsãlogã sync ãschedtopãioctlã rm ã
- sleep ãnotifyãsendeventã dmesg ã df ãrouteã vmstat ã mv ãiftopãrmmodã
- dd ãreniceã kill ã mount ãstartã rmdir ã ps ã ln ã cmp ãdumpcrashãtopãgeteventã
- umount ã mkdir ãsetconsoleãprintenvãnewfs_msdosã chown ã cat ãhdã chmod ã date ã
- stopãsmdã netstat ã ls ã lsmod ã id ã
ããŒã«ããã¯ã¹ãæããŠããªãå¯äžã®ãªã³ã¯ã¯dumpcrashã§ãïŒ
- $ ls -o habrrom / system / bin / | grep dumpstate
- lrwxrwxrwx 1 astar 9 2010 -06--16 03ïŒ59 dumpcrash- > dumpstate
- -rwxr-xr-x 1 astar 14296 2010 -06- 16 03:55 p.m. dumpstate
æŽæ°ã¹ã¯ãªãããäœæããéã«ãæ€èšãã䟡å€ããããŸãã
ç§ãã¡ã®äž»ãªãã®ã¯busyboxã§ãããšå€æãããšããŸã ã 次ã®ããŒã«ããã¯ã¹ã¢ãã¬ããã¯äžæã§ããããšãå€æããŸããã
-
getevent, getprop, iftop, ioctl, log, newfs_msdos, notify, schedtop, sendevent, setprop, smd, start, stop, top, umount , vmstat , watchprops, wipe
-
getevent, getprop, iftop, ioctl, log, newfs_msdos, notify, schedtop, sendevent, setprop, smd, start, stop, top, umount , vmstat , watchprops, wipe
- symlink dumpstate SYSTEMïŒbin / dumpcrash
- ïŒ
- symlink toolbox SYSTEMïŒbin / getprop
- ïŒå¿ èŠãªããŒã«ããã¯ã¹ã¢ãã¬ããã«å¯ŸããŠæé ãç¹°ãè¿ããŸã
- symlink busybox SYSTEMïŒxbin / [
- ïŒãã¹ãŠã®busyboxã¢ãã¬ããã«ã€ããŠæé ãç¹°ãè¿ããŸã
ãã¡ãŒã ãŠã§ã¢èªäœãããªã³ã¯ãåé€ããããšãå¿ããªãã§ãã ããã
-
$ rm ` find habrrom / system / bin / -type l `
-
set_perm 0 0 04755 SYSTEM:xbin/busybox
- $ mkdir habrrom / system / xbin / bb
- $ touch habrrom / system / xbin / bb /ãã¬ãŒã¹ãã«ããŒ
ããã§ãæå®ãããã¹ã«ãªã³ã¯ãå®å šã«é 眮ã§ããŸãããã®ããã«ãæŽæ°ã¹ã¯ãªãããæŽæ°ããŸãã
- symlink ../busybox SYSTEMïŒxbin / bb / [
- ïŒãªã©
Ramdiskã®å€æŽ
ãã ãããªã³ã¯ãå¥ã®ãã©ã«ããŒã«é 眮ããã ãã§ã¯äžååã§ãã ã·ã¹ãã ã®å®è¡å¯èœãã¡ã€ã«ã®æ€çŽ¢ãã¹ãæ¡åŒµããå¿ èŠããããŸãã ãããè¡ãã«ã¯ãå€æ°$ PATHãè£è¶³ããå¿ èŠããããŸããããã¯ãHTC Heroã®ã¢ã³ããã€ãã®å Žåã / init.rcã§å®çŸ©ãããŠããŸã
- $ adb shell cat /init.rc | grep "ãšã¯ã¹ããŒããã¹"
- ãšã¯ã¹ããŒãPATH / sbinïŒ/ system / sbinïŒ/ system / binïŒ/ system / xbin
ãã¹ãŠã®ã«ãŒããã£ã¬ã¯ããªãã¡ã€ã«ã¯ã ramdiskã®äžéšã§ãïŒä»ã®ãµããã£ã¬ã¯ããªãšåæ§ïŒã æåã®éšåã®ç¥èã䜿çšããŸã ïŒ bootãã¢ã³ããã¯ãããã®åŸPATHå€æ°ãå€æŽã§ããŸã
- $ cat habrrom.boot / ramdisk / init.rc | grep "ãšã¯ã¹ããŒããã¹"
- ãšã¯ã¹ããŒãPATH / sbinïŒ/ system / sbinïŒ/ system / binïŒ/ system / xbinïŒ/ system / xbin / bb
ramdiskãååŸããåã«ãããã«äŸ¿å©ãªããšãè¡ããŸãã
ç掻ãç°¡çŽ åããããã«ã次ã®ãã®ãå¿ èŠã§ãã
- æžã蟌ã¿æš©éã§ãã¡ã€ã«ã·ã¹ãã ãããŠã³ãããæ©èœ
- USBãããã°ã¯ããã©ã«ãã§æå¹ã«ãªã£ãŠããŸãã ããããªããšãäœããããŸããããªãå Žåã adbdãµãŒãã¹ãç¡å¹ã«ãªãããã®çµæãããŒãæã«adb logcatãå©çšã§ããªããªããããçç±ã«é¢ããå°ãªããšãããã€ãã®æçšãªæ å ±ãååŸã§ããŸããã
- ã·ã¹ãã ã®èµ·åæã«ä»»æã®ã¹ã¯ãªãããå®è¡ããïŒæãäžè¬çãªäœ¿çšäŸïŒ app2sdããªã³ã«ã ã dalvik-cacheã/ cacheã«ç§»åãã ïŒ
ãããè¡ãã«ã¯ãèŠç·ã/default.propã«å€æŽããŸããããã«ã¯ããšããã次ã®èšå®ãä¿åãããŸãã
- ro.secure-ã·ã¹ãã ã®ãã¡ãã¡ã§äœ¿çšãããŸãããé¢å¿ã®ããããããã£ã®ãã¡ãæžã蟌ã¿çšã®adbãªããŠã³ããå«ãŸãããŸãã adbã·ã§ã«ã¯ã¹ãŒããŒãŠãŒã¶ãŒæš©éã§å®è¡ãããŸãã å€ã0ã«èšå®ããŸã
- persist.service.adb.enable - adbdãµãŒãã¹ãéå§ããŸããããã¯ã adbã䜿çšããŠé»è©±ãšãªã¢ãŒãã§ããåãããã®ã«åœ¹ç«ã¡ãŸãã 1ã§å ¬é
åæåã¹ã¯ãªãã
3çªç®ã®æ®µèœãå®è£ ããã«ã¯ãåæåã¹ã¯ãªãã/init.rcãå€æŽããå¿ èŠããããŸãã ãã®ã¹ã¯ãªããã¯ããã€ãã®ããã«ãAndroid Init Languageäžã®
-
service sysinit /system/bin/logwrapper /system/xbin/busybox run-parts /system/etc/init.d disabled oneshot
-
service sysinit /system/bin/logwrapper /system/xbin/busybox run-parts /system/etc/init.d disabled oneshot
-
service sysinit /system/bin/logwrapper /system/xbin/busybox run-parts /system/etc/init.d disabled oneshot
ãµãŒãã¹ãéå§ããå¿ èŠããããŸãïŒ ç¡å¹ãªãªãã·ã§ã³ã§ã¯ããã®ãµãŒãã¹ã¯èªåçã«éå§ãããŸããïŒã ãããè¡ãã«ã¯ãæåŸã®ã³ãã³ããèµ·åæããªã¬ãŒããç¬èªã®ããªã¬ãŒã«ç§»åããŠãã¹ã¯ãªããã®å®è¡ãçµäºãããµãŒãã¹ãåŒã³åºããŸãã
- ïŒä»ã§ã¯ãªã
- ïŒclass_start default
- sysinitãéå§ããŸã
- ããããã£ïŒhabr.sysinit.done = 1
- ïŒä»
- class_startã®ããã©ã«ã
ãŸãã / system / etc / init.dã«2ã€ã®åçŽãªã¹ã¯ãªãããäœæããŠãããããã¹ãŠæ©èœããããšã瀺ããŸãã 1ã€ç®ã¯æšæºã®ãšã³ãŒ ïŒ Hello World !ããããªãã®æ¹æ³ïŒãå®è¡ãã2ã€ç®ã¯ãã£ãã·ã¥ãã¯ãªã¢ãã initã¹ã¯ãªããã«æ¢ã«çµäºããããšãäŒããããã«ããŒããç¶è¡ã§ããŸãã
- $ cat habrrom / system / etc / init.d / 00banner
- ïŒïŒ/ system / bin / sh
- echo "Hello habrahabrïŒ";
- $ cat habrrom / system / etc / init.d / 99complete
- ïŒïŒ/ system / bin / sh
- åæ;
- setprop habr.sysinit.done 1
æåŸã®ã¿ãã-å®è¡ããæš©å©ãèšå®ããŸãïŒãã¹ãŠåã-ãã¡ãŒã ãŠã§ã¢æŽæ°ã¹ã¯ãªããã§ïŒ
-
set_perm_recursive 0 2000 0755 0755 SYSTEM:etc/init.d
ã¹ãŒããŒãŠãŒã¶ãŒã®æš©å©ã æ ¹
å€ãã®å Žåãããããæãå·®ãè¿«ã£ãåé¡ã§ãã ãããèªãã æ£è ã®ããã«ã
ãœãŒã¹ã³ãŒãã¯suã®ç¬èªã®å®è£ ãæã£ãŠãããšããäºå®ã«ããããããããã®äž»ãªç®çã¯ä»ã®ãŠãŒã¶ãŒã®æš©éã§ã¢ããªã±ãŒã·ã§ã³ãã¹ãŒããŒãŠãŒã¶ãŒãšããŠïŒãŸãã¯adb shellããïŒå®è¡ããããšã§ãããããç§ãã¡ã«ã¯é©ããŠããŸããã
ChainsDD-ã¢ããªã±ãŒã·ã§ã³ã¹ãŒããŒãŠãŒã¶ãŒ2.1ã® éçºã䜿çšããŸãã ã¢ããªã±ãŒã·ã§ã³ã®æ¬è³ªã¯ãããªãã¿ã®sudo ããŸãã¯Windowsã·ã¹ãã ã®ç®¡çè æ¿èªã¢ãŒãã«äŒŒãŠããŸãã ã¢ããªã±ãŒã·ã§ã³ããã®æš©éãã¹ãŒããŒãŠãŒã¶ãŒæš©éã«ã¢ããã°ã¬ãŒãããå ŽåïŒã ãã§ãªãïŒããŠãŒã¶ãŒã«èš±å¯ãæ±ããŸãã ãŸããåãå ¥ããããã«ãŒã«ãèšæ¶ããä»åŸã®ãã¹ãŠã®é話ã«èªåçã«é©çšããããšãã§ããŸãã
Android 2.1çšã«æ¢ã«ã¢ã»ã³ãã«ãããã¢ããªã±ãŒã·ã§ã³ã䜿çšããŸããããœãŒã¹èªäœããããã調æ»ããã³ã¢ã»ã³ãã«ããæ©äŒã¯åžžã«ãããŸã ã
ã¢ããªã±ãŒã·ã§ã³ã¯2ã€ã®ã³ã³ããŒãã³ãã§æ§æãããŠããŸãã
- ãã€ãã£ãã¢ãžã¥ãŒã«su æš©å©ã®å€æŽããªã¯ãšã¹ããããšããªã¯ãšã¹ããç¬èªã®ã¢ã¯ãã£ããã£ã«ãªãã€ã¬ã¯ããããŠãŒã¶ãŒã®åå¿ãåŸ ã¡ãŸã
- Superuser.apkã¢ããªã±ãŒã·ã§ã³- ãŠãŒã¶ãŒãšã®å¯Ÿè©±ãè¡ããèšå®ãä¿åããã€ã³ã¿ãŒãã§ã€ã¹ã®ã»ããïŒ Activity ïŒã
瀺ãããæ©èœããã¡ãŒã ãŠã§ã¢ã«è¿œå ããã«ã¯ãã·ã¹ãã ã®é©åãªã»ã¯ã·ã§ã³ã«ã¢ãžã¥ãŒã«ãè¿œå ãã
- $ cp su habrrom / system / xbin /
- $ cp Superuser.apk habrrom / system / app /
å®è¡å¯èœãã¡ã€ã«ã®æš©å©ãèšå®ããŸãïŒäžéšã®ã¢ããªã±ãŒã·ã§ã³ã¯çµ¶å¯Ÿãã¹ã§suãåŒã³åºãããšãã§ããããã / system / bin /ã«ãªã³ã¯ãè¿œå ããŸãïŒ
-
symlink ../xbin/su SYSTEM:bin/su set_perm 0 0 06755 SYSTEM:xbin/su
-
symlink ../xbin/su SYSTEM:bin/su set_perm 0 0 06755 SYSTEM:xbin/su
以äžã§ãã
ãã®èšäºã§è¡ãããããšã®èŠçŽãšããŠã å°ããªã¢ãŒã«ã€ããåå°ããŸãã ã¹ã¯ãªããã busybox ã ã¹ãŒããŒãŠãŒã¶ãŒãªã©ã 奜å¥å¿ã®ããã«ã
ä»åã¯ãã©ããããããéåžžã«Linuxã§ãããéå±ã§ããããšãå€æããŸããã ãããã次åã¯ãã£ãšæ¥œãããããã¯ã§ããã·ã¹ãã ã¢ããªã±ãŒã·ã§ã³ã®åããã±ãŒãžåãèŠãŠãããŸãã ãããŸã§ã®éãæåŸã®ãã€ã³ãïŒ
åããã³å°æ¥ã®ã·ãªãŒãº
- ããŒã1. RUUã«åºã¥ããŠupdate.zip圢åŒã§ãã¡ãŒã ãŠã§ã¢ãäœæããŸãã é梱/梱å ããŒãã ã¹ã¯ãªããã®æŽæ°ã 眲åãµãŒãã¹ããã¯ãšã¢ããªã±ãŒã·ã§ã³ã
- ããŒã2. busyboxã®è¿œå ã ã«ãŒããè¿œå ããŸãã ã¬ã³ãŒããžã®ããŠã³ãã åæåã¹ã¯ãªããã ramdiskã®ç·šéã