[Custom-Kernel] - Anleitung zum erstellen eines eigenen Kernels

  • 75 Antworten
  • Letztes Antwortdatum
Als CWM flashable zip könnte man es auch ausschließlich vom Tablet installieren ;-)
 
@Peleke

so langsam schwillt mir echt der Kamm..... ist ja nicht so, dass du den Release Thread trotz meiner Bitte zu spammst.... oder das Du anderer Leute Anleitungen bei xda postest..... und dann noch das...

Habe ich gesehen, dein kernel ist nur einfacher zu installieren...

Was heisst denn hier leichter zu installieren.... die Befehle sind immer die gleichen... und dann noch...

Hört sich gut an.. Wie sieht es mit under / Overclocking aus und einem release als komplette boot.img?
Da hast Du mal was gehört, was....? Neeee... ganz im Ernst.... Grosse Knochen im Maul, aber selbst nix auf die Reihe kriegen.... Schlex09 hat Dir schon gesagt, dass Du mal lesen sollst...

Halte es einfach nach dem Ausspruch von Dieter Nuhr:

"Wenn man keine Ahnung hat, einfach mal Fresse halten..."

Sorry... aber das musste mal raus.... Bin jetzt auch ruhig... :biggrin:.

Für alle anderen sei noch gesagt... ich denke ich werde mal einen Poll starten, wenn das hier geht, in dem wir mal die Funktionen abfragen, die gewünscht sind.

@Vetzki

... wenn das geht.... hättest Du Lust mal einen Poll zu machen...?
 
Zuletzt bearbeitet von einem Moderator:
lieckedeeler schrieb:
@Peleke
...
Für alle anderen sei noch gesagt... ich denke ich werde mal einen Poll starten, wenn das hier geht, in dem wir mal die Funktionen abfragen, die gewünscht sind.

@Vetzki

... wenn das geht.... hättest Du Lust mal einen Poll zu machen...?

Für Funktionen die gewünscht werden/gehen sollten?
Ja kann ich die Tage schon machen oder meinst du was anderes?

Gesendet von meinem A210 mit der Android-Hilfe.de App
 
@Vetzki

nee... ist genau richtig :biggrin:.

Vielleicht mal abfragen was mit..... 3G-Stick, Joystick zum PSX zocken, DVB (in Arbeit), Over- / Underclocking,... und so Zeug.... Dir fällt da bestimmt schon was ein. Versuch mal ein breiteres Spektrum abzufragen, damit man die Tendenzen erkennen kann, was die Leute haben wollen.... Ich danke Dir schon mal im voraus..!:thumbsup:
 
@Vetzki

da ich die DVB Unterstützung in den Kernel bekommen habe und noch auf Hardware (andere Antenne) warte, wollte ich mich mal mit dem Thema RAM-Disk beschäftigen...

Kannst Du mir mal bitte Deine RAM-DISK posten incl. der Veränderungen die Du zum Original vorgenommen hast. Es wäre auch schön, wenn Du die Änderungen kurz erläutern könntest, was es damit auf sich hat. Danke schonmal im voraus....

P.S.: deute ich Deinen Screen-Shot von der letzten Seite richtig..? Bist du auf Linux unerwegs...?
 
Ja wenn ich Zuhause bin (ca 18:30). Super das mit dvb-t. Und ja windoof hab ich nicht mehr drauf. Hät noch nen ungenutzten win7 hp key, falls wer Interesse hat :)

Gesendet von meinem U9200 mit der Android-Hilfe.de App
 
mv@mv-5755G ~/Downloads/android/acer a210/Images/tmp $ diff -r -s ./LNX-1.img-ramdisk ./LNX.img-ramdisk
diff -r -s ./LNX-1.img-ramdisk/default.prop ./LNX.img-ramdisk/default.prop
4c4
< ro.secure=0
---
> ro.secure=1
6c6
< ro.debuggable=1
---
> ro.debuggable=0
9c9
< persist.sys.usb.config=mtp,adb
---
> persist.sys.usb.config=mtp
Dateien ./LNX-1.img-ramdisk/init und ./LNX.img-ramdisk/init sind identisch.
Dateien ./LNX-1.img-ramdisk/init.goldfish.rc und ./LNX.img-ramdisk/init.goldfish.rc sind identisch.
Dateien ./LNX-1.img-ramdisk/init.picasso_e2.rc und ./LNX.img-ramdisk/init.picasso_e2.rc sind identisch.
Dateien ./LNX-1.img-ramdisk/init.rc und ./LNX.img-ramdisk/init.rc sind identisch.
Dateien ./LNX-1.img-ramdisk/init.usb.rc und ./LNX.img-ramdisk/init.usb.rc sind identisch.

diff -r -s ./LNX-1.img-ramdisk/postboot.sh ./LNX.img-ramdisk/postboot.sh
4,5d3
<
< /system/etc/init.d/*

Dateien ./LNX-1.img-ramdisk/sbin/adbd und ./LNX.img-ramdisk/sbin/adbd sind identisch.
Dateien ./LNX-1.img-ramdisk/sbin/ueventd und ./LNX.img-ramdisk/sbin/ueventd sind identisch.
Dateien ./LNX-1.img-ramdisk/ueventd.goldfish.rc und ./LNX.img-ramdisk/ueventd.goldfish.rc sind identisch.
Dateien ./LNX-1.img-ramdisk/ueventd.picasso_e2.rc und ./LNX.img-ramdisk/ueventd.picasso_e2.rc sind identisch.
Dateien ./LNX-1.img-ramdisk/ueventd.rc und ./LNX.img-ramdisk/ueventd.rc sind identisch.

mv@mv-5755G ~/Downloads/android/acer a210/Images/tmp $

neue Teil für root mit adb
original ramdisk
int.d support.
Könnte man aber in die init.rc auch einbauen. Wie genau müßte man mal n bischen googlen wäre vmtl. auch nicht schwierig.
Aber ich glaub so gehts auch. Hab mal zum testen ne sysctl.conf in /system/etc erstellt und von ner Datei in init.d sysctl -p ausführen lassen...geht.
 

Anhänge

  • mv_LNX.img-ramdisk.7z
    167,6 KB · Aufrufe: 114
@lieckedeeler .... kannst du das HowTo noch bis zum fertigen boot.img fortführen ?
 
Mit der Anleitung klick mich funktionierts (bis auf --base 0x30000000 --pagesize 4096 -> hab unten die richtigen Werte geschrieben)
Modding boot.img can be useful for changing kernel or init scripts on ramdisk.

The ramdisk itself contains - for instance - default.prop that can be edited to unsecure the image - that means having adb shell directly as root, or ability to use adb remount
Boot partition can be extracted with dd if=/dev/mtd/mtd2 (on Nexus S) or as generic way, from recovery using flash_dump boot boot.img

Needed steps are:
$ unpack-bootimg.pl boot.img
kernel written to boot.img-kernel.gz
ramdisk written to boot.img-ramdisk.cpio.gz

removed old directory boot.img-ramdisk

gzip: ../boot.img-ramdisk.cpio.gz: decompression OK, trailing garbage ignored
529 blocks

extracted ramdisk contents to directory boot.img-ramdisk/

$ cd boot.img-ramdisk/
# ... do whatever edits you need ...



# Repack
$ find . | cpio -o -H newc | gzip > ../boot.img-ramdisk-new.cpio.gz
$ cd ..
$ mkbootimg --kernel boot_new.img-kernel.gz --ramdisk boot.img-ramdisk-new.cpio.gz --base 0x00000800 --pagesize 2048 -o boot.img.new

Ich hab die nötigen tools in den Anhang gepackt (Linux, für evtl nötige WIN version googlen).
Perl ist wohl nötig für die Scripte,
per Hand kannst du auch entpacken (mit Hexeditor, würd ich nicht unbedingt empfehlen)
 

Anhänge

  • bootimg-tools.zip
    18,3 KB · Aufrufe: 108
Vetzki schrieb:
Mit der Anleitung klick mich funktionierts (bis auf --base 0x30000000 --pagesize 4096 -> hab unten die richtigen Werte geschrieben)

Also ich sehe da nichts und eigentlich hast du den Inhalt des Blogs nur noch mal gepostet ????!

Na ja, dass soll der lieckedeeler mal machen und sich dazu äußern. :tongue:
 
Im Prinzip sind die Anleitungen ja alle mehr oder wenig ähnlich.
Der kleine geschriebene Teil ist halt der zum entpacken. Der normal geschriebene wie man das Image packt. So hab ich die Frage verstanden. Übers editieren des boot.img findet man ja genug.
bei --base 0x00000800 und --pagesize 2048 müssen halt die Werte stimmen drum hab ichs geschrieben.
Bei google findet man auch diverse Anleitungen wie man mkbootimg selbst kompilieren kann.

Und ich hör schon auf den Thread vollzuspammen :unsure:
sorry lieckedeeler.
 
@Matz3e

hast Du ein zImage kompiliert?

@Vetzki

alles gut.... Das mit der RAM-DISK hab' ich heute nicht mehr geschafft... Hatte noch einen A%$§& voll Arbeit mit dem DVB... Wird schon.... mal schauen... ich guck' mir das morgen spät Abend mal an. Vielen Dank für die Infos's..! Was macht der Poll.... :biggrin:
 
Morgen.
Nach der Arbeit.:rolleyes2: (oder während)
 
Zuletzt bearbeitet:
Ja, hab 2 mal ein zImage kompiliert :) Bin dann auch mit der Ramdisk und co. weiter gekommen ...

hab das gefunden: madteam.co
 
@Matz3e

zImage kompiliert... okay. Sicherlich aus der Standdard-Konfig, oder?

Bin dann auch mit der Ramdisk und co. weiter gekommen ...
Was meinst Du damit... ?

Btw... meine RAM-Disk mache ich nicht so kompliziert, wie in Deinem Link angegeben....
 
@Matz3e

Ich hab die 'config.gz' vom Gerät geholt und erstmal so gelassen wie sie ist um das ganze zu testen.

Das war eine gute Idee :thumbsup:

Ich bin mit der Anleitung unter dem Link etwas schlauer geworden.

Was war jetzt nochmal genau Deine Frage...?

Gut's Nächtle... ich bin raus...
 
Meine Frage wäre gewesen wie ich vom zImage zum boot.img komme ... hat sich aber erledigt :) google hilft ;-)
 
Vielleicht fragt sich der ein oder andere wie "SECURE MOUNT" deaktiviert wurde.
Kurzfassung: in der KernelSource/fs/namespace.c wird die Anweisung "siehe unten" auskommentiert.

SECURE MOUNT macht grob gesagt folgendes: Wenn das System Bootet ist der erste Prozess: -> mounten <- dieser bekommt dann die "pid1" , alle anderen Prozesse die danach kommen bekommen pid(1) +1 - alles was jetzt größer als 1+ ist bekommt kein "zutritt" -> Operation not permitted or illegal root.
Da unsere Shell eine pid >1 hat, gibt es keine Schreibrechte.


#ifdef CONFIG_SECURE_MOUNT
char *dir = "/system";
if ((strcmp(dir,dir_name) == 0) && !(flags & MS_RDONLY)) {
int pid = sys_getpid();
if (pid > 1) {
retval = -1;
printk("Operation not permitted or illegal root \n");
} else
retval = do_remount(&path, flags & ~MS_REMOUNT, mnt_flags, data_page);
} else
retval = do_remount(&path, flags & ~MS_REMOUNT, mnt_flags, data_page);
#else
retval = do_remount(&path, flags & ~MS_REMOUNT, mnt_flags,
data_page);
#endif
 
  • Danke
Reaktionen: Peleke
@Matz3e

hast Du das so gemacht also bei Deinem Kernel... btw...läuft der?

Warum machst Du das mit SECURE_MOUNT so kompliziert? Der Kernel ist ein sehr komplexes Gebilde... wenn man da im Code Veränderungen vornimmt, sollte man genau wissen was man da macht. Es gibt Optionen für sowas wenn man den Kernel baut....
 

Ähnliche Themen

Kiwi++Soft
Antworten
41
Aufrufe
34.585
Ladylike871
Ladylike871
An-Dro-Id
Antworten
6
Aufrufe
4.586
DAC324
D
L
  • LeonYannick
Antworten
1
Aufrufe
2.748
Kiwi++Soft
Kiwi++Soft
Zurück
Oben Unten