V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
这是一个专门讨论 idea 的地方。

每个人的时间,资源是有限的,有的时候你或许能够想到很多 idea,但是由于现实的限制,却并不是所有的 idea 都能够成为现实。

那这个时候,不妨可以把那些 idea 分享出来,启发别人。
1314258
V2EX  ›  奇思妙想

我要去抢天猫魔盒的原因。

  •  
  •   1314258 · 2013-12-12 16:47:28 +08:00 · 9957 次点击
    这是一个创建于 4002 天前的主题,其中的信息可能已经有所发展或是发生改变。




    我自己买了个小米盒子。然后想法就是让小米盒子跑kali(ubuntu基础上的集合安全软件的系统)。不是chroot这种,是启动就跑起kali。现在我做到了。当然还有一个问题没有解决,就是显示分辨率出了点问题。wifi这些我已经解决。不过就算是分辨率问题,我也没所谓。我已经让他开机就运行ssh server.小米盒子的usb是个mircro usb,外加otg总是很麻烦。电力也好像不够。我现在kali的root filesystem是放在sd卡上的。我的想法是想放在移动硬盘上,但我测试了一下。貌似电力没有很好解决。

    如果抢了个天猫魔盒,会继续测试一下。当服务器,下载机,各种也不错。这就是我抢他的原因。看电影这些,我对各种盒子已经死心。我的18g阿凡达,从来没播放顺畅过,测试过rk3066和aml8726mx,可能是我姿势不对?
    35 条回复    2021-03-22 05:46:41 +08:00
    cssnote
        1
    cssnote  
       2013-12-12 22:27:24 +08:00
    今天怎么看到这么多这个盒子,是不是托啊
    niko
        2
    niko  
       2013-12-13 09:02:43 +08:00
    有意思
    Owenjia
        3
    Owenjia  
       2013-12-15 14:53:54 +08:00
    kali不是Debian的么~~
    1314258
        4
    1314258  
    OP
       2013-12-15 17:40:23 +08:00
    @Owenjia 噢,我一直以为是ubuntu的呢,因为以前backtrack曾经试过用ubuntu。而且进去的时候也是用apt-get什么的,就一直以为是ubuntu了。谢谢更正。
    kenX
        5
    kenX  
       2014-02-12 20:29:03 +08:00
    特意注册个帐号来请教,小米盒子是否Amlogic 8726mx方案?你跑kali是是否自己编译内核?wifi问题如何解决的?望赐教
    1314258
        6
    1314258  
    OP
       2014-02-12 20:58:17 +08:00
    @kenX 是的,8726mx。我用的方案是用原来的内核,wifi直接拷贝android里面的。
    1314258
        7
    1314258  
    OP
       2014-02-12 21:00:27 +08:00
    @kenX 现在最新的内核不错。优化得很不错。所以选小米盒子还是没选错。如果是换作天猫盒子得话,估计。。。。。
    另外,准备入手nexus7,做同样得事情。这个搞成功,估计很爽。
    kenX
        8
    kenX  
       2014-02-12 21:21:46 +08:00
    @1314258
    用原来的内核是什么概念?kali支持8726mx?
    我12.25抢到天猫魔盒,同样是8726mx方案,找到git上的内核,编译出来就差内置8188eus模块跑不起来,根本不上电,不知道哪个GPIO控制内置wifi供电。
    1314258
        9
    1314258  
    OP
       2014-02-12 22:03:04 +08:00
    @kenX split_bootimg.pl分解boot.img出来的内核。kali只是给你一个rootfs。
    另外你怎么知道没上电的?你用的rootfs是那个?
    kenX
        10
    kenX  
       2014-02-12 22:05:33 +08:00
    @1314258
    rootfs用自己编译的busybox而已。lsusb只显示两个usb控制器,没发现设备。
    万用表测内置8188模块的端口没有电压,启动到自带的yunos就能有电压,启动到我自己编译的内核+rootfs就没
    1314258
        11
    1314258  
    OP
       2014-02-12 22:58:19 +08:00 via Android
    难道你用串口操作shell?dmesg这些你看看怎么回事。还有mdev这些。rootfs的init你怎写的
    今天先睡了。
    1314258
        12
    1314258  
    OP
       2014-02-12 23:02:47 +08:00 via Android
    @kenX 忘记at你了。有busybox很好测试了。加油排查吧。
    cococ0924
        13
    cococ0924  
       2014-09-29 08:40:12 +08:00
    @1314258 真的是特意注册来拜师的,众里寻你千百度啊,lz求你千千万万不要吝啬您的聪明才智,指导一下我这小白。我早就想在盒子上装kali了,乐视盒子最满足你的要求,也是8726mx的,双usb口,一个sd插槽,还有启动键。小白就为装linux买了乐视,到现在一无进展,恳请楼主指点。 [email protected]
    1314258
        14
    1314258  
    OP
       2014-09-29 21:25:46 +08:00   ❤️ 1
    @cococ0924 我简单说一下原理吧。android份 分recovery boot system这些分区。首先要做的是root掉android,然后把recovery分区,刷成可以一个类似boot结构的img,但这个img里面是通过自己编写一个init,达到控制switch_root到kali的目的。

    具体原理你可以google “精通initramfs构建step by step”

    如果你是伸手党,那就没办法了,因为我手上没有乐视盒子。我的是小米盒子。
    cococ0924
        15
    cococ0924  
       2014-09-29 21:46:57 +08:00
    @1314258 哈哈,谢谢lz。我想用乐视刷而不是天猫魔盒,你应该知道我不是伸手党啦~ 谢谢,lz的思路。有个问题,分辨率这个问题很难解决吗?
    1314258
        16
    1314258  
    OP
       2014-09-30 08:31:43 +08:00 via iPhone
    @cococ0924 分辨率我没解决了,因为我基本不需要gui。我解决的了问题是wifi,外接了一个移动硬盘做rootfs。如果想玩得好,把串口找出来吧。对于未知设备,串口找出来就很好测试了。
    cococ0924
        17
    cococ0924  
       2014-09-30 23:11:23 +08:00
    @1314258 越来越深入。。。,有点晕,我得慢慢来,我才开始接触linux不到连个月。
    cococ0924
        18
    cococ0924  
       2014-09-30 23:27:35 +08:00
    ztjwhq
        19
    ztjwhq  
       2017-07-04 13:46:02 +08:00
    @1314258 朋友,可以加一下 QQ 么,想请教一下关于盒子跑 linux 的问题,谢谢 214798075
    ztjwhq
        20
    ztjwhq  
       2017-07-04 15:34:41 +08:00
    “ recovery 分区,刷成可以一个类似 boot 结构的 img ”是不是这样理解:
    我的 cat /proc/partitions 得到 ==》
    179 47 8192 mmcblk1p15 boot
    179 48 8192 mmcblk1p16 recovery
    179 49 14336 mmcblk1p17 cdrom
    179 50 512 mmcblk1p18 misc
    179 51 512 mmcblk1p19 cid
    179 52 4096 mmcblk1p20 kpanic
    179 53 334848 mmcblk1p21 system
    179 54 512 mmcblk1p22 prek
    179 55 512 mmcblk1p23 pkbackup
    179 56 204800 mmcblk1p24 cache
    179 57 1319936 mmcblk1p25 userdata
    流程是不是是将 boot 分区导出 boot.img,然后解包 boot.img,弄个 init 进去,建好 initramfs,弄掉里面的 ramdisk,然后打包成 recovery.img,放到 recovery 分区覆盖原来 recovery 的引导,
    如果是这样请问如何导出 boot.img 和导入到 recovery 分区这两步,我看有人用 mkbootimg 和 unpackbootimg,不知道怎么用,是要装到安卓里面吗,请赐教啊,谢谢
    1314258
        21
    1314258  
    OP
       2017-07-04 23:41:01 +08:00 via iPhone
    @ztjwhq 直接 dd recovery 出来 img,改 init,再打包成 img,再 dd 回去。
    1314258
        22
    1314258  
    OP
       2017-07-04 23:56:37 +08:00 via iPhone
    @ztjwhq 其实 recovery 结构和 boot 基本一样。我们动 recovery 就是为在不影响原系统的情况下添加自己想要的系统。
    遇到的坑可能挺多的,因为时间太长了,不太能准确回忆,需要翻翻电脑。
    提几个注意点
    1 注意先把 recovery 先准确 dd 出来先,因为不能准确 dd 出来,刷进去可能会影响其他分区。
    2 system 下面好像有一个脚本,是关机恢复 recovery 的,要改一下,不然刷了 recovery 会给系统恢复原来的。3 刷机有风险 做好变砖准备对策
    4 init 编写大概就是先 delay 几秒,等内核可以识别 usb 的设备了,再 mout rootfs。debug 看 init 是不是成功调用可以先 mount 例如 userdata 分区,echo 个 ok 进去。再进原系统看是不是已经可以执行自己的 init
    ztjwhq
        23
    ztjwhq  
       2017-07-05 09:48:18 +08:00
    @1314258 谢谢回复
    1、昨天晚上已经用 dd 把 bootimg 和 recovery.img 弄出来了
    2、system 那个恢复我也看到了
    3、是个上大学时候用的老手机,变砖我直接刷 rom 进去应该可以
    请教一下:
    1、我现在手头没有 linux 的 pc,init 文件编写 Windows 下可否可以,是否直接建一个不带后缀的文件,把脚本弄进去就可以
    2、我最终是想把家里一个闲置的天猫魔盒(年会获得)搞上 linux,以便我跑 tomcat (我搞 javaweb 的,不想买树莓派了。。现在上班搞手机方便一点),手机和魔盒理论上应该是一样,但你当时弄得是盒子,不知手机是否有不同
    3、rootfs 我放到 SD 卡,对 SD 卡有没有格式要求
    4、如果顺利,启动时我按照原来的按组合键进 recovery,是否就会走 recovery 的引导了
    不胜感激
    ztjwhq
        24
    ztjwhq  
       2017-07-05 10:04:15 +08:00
    由于对 linux 了解有限,问一个小白的问题,如何将 debian 下载的镜像制作成 rootfs
    1314258
        25
    1314258  
    OP
       2017-07-05 23:16:01 +08:00 via iPhone
    @ztjwhq 回#24
    1 你虚拟个 linux 吧,不知道 windows 下行不行。chmod +x 之类的方便点。
    2 我认为手机也是可以的
    3 我是用 ext4 或者 ext3 的
    4 没错
    5 上网搜索一下,我记得用的是 debootstrap。还要指定 armhf 之类的。

    其实这个很折腾。如果不想折腾,不如 orangepi zero 吧,再用 armbian 这个镜像。
    iamqk
        26
    iamqk  
       2020-10-10 19:08:51 +08:00
    家里有两个小米盒子,都是 1g 的内存,跑起来卡的要死。最近缺一个旁路由,打算改一个用。自己用 06aa 精简了很多内容,然后 chroot,感觉很卡。打算把 09ak 搞来看看,因为 09ak cpu 是 s905,armbian 似乎支持的很好。现在 Parallel Destop 支持安卓模拟器,应该可以在上面尽情的实验吧?谢谢各位提供的参考信息,真的十分有用
    txsdx
        28
    txsdx  
       2021-01-17 15:45:11 +08:00
    @1314258 专门开账号+1 。大佬,我高中生一枚,想利用家里的小米盒子 1 运行 kali arm 带学校玩,我现在一直在找资料,还没有动手,怕刷成砖了。希望 dalao 您有空指导我一下,不胜感激。QQ:1650530020
    txsdx
        29
    txsdx  
       2021-01-24 14:58:31 +08:00
    @1314258 dalao 如果能发给我一些资料什么的我研究一下也可以
    1314258
        30
    1314258  
    OP
       2021-01-25 02:30:31 +08:00 via iPhone   ❤️ 1
    @txsdx 先 root 。再研究一下 mtd 的分布。最好是能把 recovery 先能改变为 cwm 。你参考一下楼上那些留言。依然是有效的。
    txsdx
        31
    txsdx  
       2021-03-14 16:16:50 +08:00
    @1314258 因为我想把整个内置 flash 装系统用,所以我现在的思路是:只留下内核和 boot 的分区,用 initramfs 进 debian 的 rootfs 。我打算用小米盒子的 HDMI 接口接一个便携显示屏,usb 接键盘鼠标什么的。
    具体有不少问题还待我解决。现在在学校补课没法搞盒子,假期时间也很短,只能先查资料做准备。
    有一下几个问题请教 dalao:
    1.小米盒子原版内核在哪?
    2.initramfs 文件写好又该放在那里?
    3.我是不是改用 busybox 自己设计 rootfs
    4.系统正常运行后,硬件是否能自动识别,听说 wifi 驱动到从安卓里面拿?

    还望 dalao 有空指教一番,不胜感激!
    txsdx
        32
    txsdx  
       2021-03-21 16:58:33 +08:00
    @1314258 我第 n 次研究上面的评论,发现内核在 boot.img 里面,initramfs 在 rootfs 里面,rootfs 就是一个 ext3 分区,内核载入后就会自动进这个分区读取 initramfs 。
    由于在空中搭楼阁,我不确定我的猜测对不对。
    1.那么是不是我只需要留下小米盒子的 boot 分区,然后烧写一个 rootf 进去就可以运行了呢?
    2.是不是 rootfs 的分区一定要从某某个扇区开始才能被内核识别?
    还望大佬有空指导一番,万分感激!
    1314258
        33
    1314258  
    OP
       2021-03-22 05:28:07 +08:00 via iPhone   ❤️ 1
    @txsdx 补充几个,你看看。鉴于帖子已经近 8 年之久,我不知道现在的你手上的盒子版本和现在 android 系统改动是怎么样的,可能有些东西不太适用了。
    -[x] 你需要有 shell &&root 权限
    -[ ] 搞清 mtd 分布 参考 20 楼 boot 分区和 recovery 分区相当于两个系统 boot 是启动正常的盒子系统 recovery 是用于恢复系统的系统。至于你想搞那个系统为你所用,看你自己了。例如,想折腾 recovery,把 recovery 的 img 搞出来。先用 recovery 来试手。用 dd dump 出来。再用 split_bootimg.pl 把这个 img 分解为内核 ramdisk 等 重点就是 ramdisk 的 init 关于 linux 启动,参考 14 楼 改完之后,用 mkbootimg 再打包回去。把得到的 img 再 dd 回相应的分区
    -[ ] Ramdisk 里的 init 想启动 u 盘里面的系统的话,注意 init 需要 delay 个一两秒,等待 usb 可用,再把 init 权限转移到 usb 的 rootfs 。
    1314258
        34
    1314258  
    OP
       2021-03-22 05:32:25 +08:00 via iPhone
    @txsdx 请确认你已经清楚 dd 在你实践过程中的参数意思,已避免变砖。
    1314258
        35
    1314258  
    OP
       2021-03-22 05:46:41 +08:00 via iPhone
    @txsdx 你对启动过程理解得不对。具体参考 定制我的 Nexus 系统之 boot.img 的前世今生 我们其实就是改 boot.img 里面的 ramdisk 里的 init 然后就看你想干什么了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5457 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 08:10 · PVG 16:10 · LAX 00:10 · JFK 03:10
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.