Arch-Linux

在 Android 設備上啟動原生 Arch Linux

  • February 6, 2020

我有一個 Galaxy Note 10.1 (n8010),我想讓它本地啟動 Arch Linux。我的意思是引導 Arch Linux 而不是 android。我所需要的只是改變 initramfs,這是我在世界任何地方都找不到的。我的問題:

  • 我是否只需要更改 initramfs,或者我也必須處理其他事情?(比如核心本身)
  • $$ DONE $$我從哪裡獲得 CyanogenMod 10.1 的官方 initramfs(可能是 github)?或者我必須自編譯 CyanogenMod 的核心並從 zImage 中提取它?
  • $$ PROBABLY $$我可以在 android 數據分區中擁有 Arch linux 根嗎?(例如 /data/linux)或者我必須購買 SD 卡?
  • 我還需要知道/做什麼?

編輯:我找到瞭如何更改 initramfs :)

  1. 解壓 rom(使用 n8013 的 CM10.1)
  2. wget http://whiteboard.ping.se/uploads/Android/unmkbootimg.gz
  3. gunzip unmkbootimg.gz
  4. ./unmkbootimg boot.img(保存 mkbootimg 給出的命令!)
  5. mkdir initramfs && cd initramfs
  6. gzip -cd initramfs.cpio.gz | cpio -i
  7. 更改初始化腳本<-立即測試,一旦完成,我將發布正確的
  8. 找 。| cpio -o -H newc | gzip > ../initramfs.cpio.gz (不確定命令是否正確…)
  9. cd .. && 清理目錄,只剩下 initramfs.cpio.gz 和 zImage ……
  10. 執行你之前保存的 mkbootimg 命令…
  11. 刷新新的 boot.img :)

編輯 2: initramfs 相當容易建構您只需要掛載根文件系統(分區或 linux 映像)並通過 initramfs 內的符號連結指向它的 init

問題是你需要核心 4.x 來啟動 Arch 的新 systemd

為了讓核心工作,您需要一個串列控制台來查看錯誤和內容。當我建構核心時,我將發布所需的配置設置。

對於那些沒有 mkbootimg 的人(你可以通過編譯核心來獲得),我找到了一個預編譯的

連結:

不確定這是否有幫助,但它是 Arch Linux http://forum.xda-developers.com/showthread.php?t=2195778的指南

我找到了一個類似任務的教程,How to Install Ubuntu Linux on Your Google Nexus 7 Android Tablet,也許它可以適應你的項目?它用於fastboot解鎖引導載入程序並使用不同的引導載入程序重新啟動。HTH,我從來沒有玩過安卓。

引用自:https://unix.stackexchange.com/questions/64546