{"id":229,"date":"2013-06-02T23:02:52","date_gmt":"2013-06-02T21:02:52","guid":{"rendered":"http:\/\/www.dlabi.cz\/?p=229"},"modified":"2013-06-03T14:06:56","modified_gmt":"2013-06-03T12:06:56","slug":"extrahujeme-module-symvers-a-config","status":"publish","type":"post","link":"https:\/\/dlabi.cz\/en\/extrahujeme-module-symvers-a-config\/","title":{"rendered":"Extrahujeme Module.symvers a config"},"content":{"rendered":"<p>Pokud pot\u0159ebujete kompilovat moduly do kernelu ke kter\u00e9mu nem\u00e1te zdrojov\u00fd k\u00f3d, budete pot\u0159ebovat z tohoto kernelu z\u00edskat ur\u010dit\u00e9 informace. A pr\u00e1v\u011b o tom bude tento n\u00e1vod.<\/p>\n<p><!--more--><\/p>\n<p>Jestli\u017ee pot\u0159ebujete extrahovat pouze config zkuste nejprve na Va\u0161em za\u0159\u00edzen\u00ed spustit p\u0159\u00edkaz<\/p>\n<p><em><strong>zcat \/proc\/config.gz &gt;.config<\/strong><\/em> nem\u00e1te-li zcat pou\u017eijte <em><strong>cat \/proc\/config.gz &gt;.config.gz<\/strong><\/em> a soubor rozbalte a\u017e na PC. Pokud se poda\u0159ilo ulo\u017eit config t\u00edmto zp\u016fsobem, m\u00e1te hotovo a zbytek \u010d\u00edst nemus\u00edte.<\/p>\n<p>&nbsp;<\/p>\n<h2><span style=\"color: #40a5e5;\">1. P\u0158\u00cdPRAVA<\/span><\/h2>\n<p>st\u00e1hn\u011bte si utilitu <a href=\"http:\/\/whiteboard.ping.se\/uploads\/Android\/unmkbootimg.gz\">unmkbootimg<\/a> nebo script\u00a0<a href=\"https:\/\/github.com\/vhernando\/split_boot_img\/archive\/master.zip\">split_boot_img<\/a> a <a href=\"https:\/\/github.com\/glandium\/extract-symvers\/archive\/master.zip\">extract-symvers <\/a><\/p>\n<h2><\/h2>\n<h2><span style=\"color: #40a5e5;\">2. Z\u00cdSK\u00c1N\u00cd\u00a0 RECOVERY<\/span><\/h2>\n<p>nejprve mus\u00edte zjistit kde se nach\u00e1z\u00ed recovery partition na Va\u0161em za\u0159\u00edzen\u00ed. Mo\u017enosti jak to zjistit jsou v\u00edcem\u00e9n\u011b 2. Spus\u0165te na tabletu <em><strong>cat \/proc\/partitions<\/strong><\/em> pokud se objev\u00ed seznam je na 99% recovery v <strong>nandg<\/strong>. Pokud syst\u00e9m nahl\u00e1s\u00ed error zkuste <em><strong>cat \/proc\/mtd<\/strong><\/em>. Najd\u011bte \u0159\u00e1dek obsahuj\u00edc\u00ed slovo RECOVERY a zapamatujte si \u010d\u00edslo za mtd na za\u010d\u00e1tku \u0159\u00e1dky.<\/p>\n<p>P\u0159\u00edkazem <em><strong>cat \/dev\/block\/{jm\u00e9no_partition} &gt;\/{cesta_k_sdkart\u011b}\/recovery.img<\/strong><\/em> p\u0159ekop\u00edrujte partition na SD kartu.\u00a0 (<em>slo\u017een\u00e9 z\u00e1vorky p\u0159irozen\u011b vyma\u017ete<\/em>)<\/p>\n<p>&nbsp;<\/p>\n<h2><span style=\"color: #40a5e5;\">\u00a03. SEPARACE KERNELU<\/span><\/h2>\n<p>P\u0159ekop\u00edrujte recovery.img na PC s Linuxem a tam za pomoc\u00ed utility unbootimg nebo scriptu split_boot_img dostanete kernel.gz<\/p>\n<blockquote><p>umkbootimg recovery.bin<\/p><\/blockquote>\n<p>v\u00fdsledek je kernel.gz v aktu\u00e1ln\u00edm adres\u00e1\u0159i<\/p>\n<p>nebo<\/p>\n<blockquote><p>split_boot_img.py -i recovery.img -o outdir -v<\/p><\/blockquote>\n<p>v\u00fdsledek je v adres\u00e1\u0159i outdir<\/p>\n<h2><\/h2>\n<h2><span style=\"color: #40a5e5;\">4. EXTRAKCE Module.symvers<\/span><\/h2>\n<p>Nejd\u0159\u00edve je t\u0159eba zjistit po\u010d\u00e1te\u010dn\u00ed adresu kernelu. Je sice pravda \u017ee utility adresu kernelu ukazuj\u00ed, ale ta nen\u00ed ani v jednom p\u0159\u00edpad\u011b spr\u00e1vn\u00e1. Tu spr\u00e1vnou zjist\u00edte na tabletu p\u0159\u00edkazem<\/p>\n<blockquote><p>mesg | grep \u201c\\.init\u201d<\/p><\/blockquote>\n<p>Pokud p\u0159\u00edkaz nic nevyp\u00ed\u0161e doporu\u010duji tablet rebootovat a zkusit znovu.<\/p>\n<p>Vypsat by m\u011bl zhruba toto:<\/p>\n<blockquote><p>&lt;5&gt;[\u00a0\u00a0\u00a0 0.000000]\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 .init : 0xc0408000 &#8211; 0xc0596000\u00a0\u00a0 (1592 kB)<\/p><\/blockquote>\n<p>v m\u00e9m p\u0159\u00edpad\u011b je to tedy <strong>0xc0408000<\/strong><\/p>\n<p>Pak ji\u017e sta\u010d\u00ed spustit skript<\/p>\n<blockquote><p>extract_symvers.py kernel.gz -B 0xc0408000 &gt;Module.symvers<\/p><\/blockquote>\n<p>a m\u00e1me spr\u00e1vn\u00fd soubor Module.symvers!!!<\/p>\n<h2><\/h2>\n<h2><span style=\"color: #40a5e5;\">5. EXTRAKCE configu<\/span><\/h2>\n<p>Tady hned na za\u010d\u00e1tku upozor\u0148uji, \u017ee n\u00e9 v\u0161echny kernely config obsahuj\u00ed a z\u00e1le\u017e\u00ed trochu na \u0161t\u011bst\u00ed.<\/p>\n<p>Pomoc\u00ed skriptu <em><strong>extract-ikconfig <\/strong><\/em>kter\u00fd se nach\u00e1z\u00ed v adres\u00e1\u0159i <strong><em>{kernel src tree}\/scripts<\/em><\/strong> m\u016f\u017eete snadno extrahovat konfig, konkr\u00e9tn\u011b p\u0159\u00edkazem<\/p>\n<blockquote><p>extract-ikconfig kernel.gz &gt;.config<\/p><\/blockquote>\n<p>ALE! nev\u00edm jestli je to poka\u017ed\u00e9, nem\u011bl jsem to mo\u017enost v\u00edce testovat, tenhle script vygeneruje neupln\u00fd config!!!<\/p>\n<p><span style=\"color: #ffffff;\"><strong>TIP: Pokud m\u00e1te hex editor otev\u0159ete soubor kernel.gz a hledejte \u0159et\u011bzec IKCFG_ST.\u00a0Hned za n\u00edm n\u00e1sleduje Magic pro GZip (0x1f8b08). Ozna\u010dte v\u0161e od Magicu a\u017e na konec souboru a ulo\u017ete selekci jako soubor config.gz a pak to rozbalte t\u0159ebas zipem a m\u00e1te upln\u00fd konfig.<\/strong><\/span><\/p>\n<p>&nbsp;<\/p>\n<h2><span style=\"color: #40a5e5;\">6. Z\u00c1V\u011aR<\/span><\/h2>\n<p>To\u0165 v\u0161e nic v\u00edc u\u017e d\u011blat nepot\u0159ebujete jen j\u00e1 tu uvedu p\u00e1r zdroj\u016f ze kter\u00fdch sem \u010derpal.<\/p>\n<p>D\u00edky za pozornost. Budu r\u00e1d kdy\u017e mi nap\u00ed\u0161ete Va\u0161e komenty nebo post\u0159ehy.<\/p>\n<p>&nbsp;<\/p>\n<p><a href=\"http:\/\/linux-sunxi.org\/Android\/partitionshttp:\/\/\" target=\"_blank\">http:\/\/linux-sunxi.org\/Android\/partitions<\/a><\/p>\n<p><a href=\"http:\/\/glandium.org\/blog\/?p=2214\" target=\"_blank\">http:\/\/glandium.org\/blog\/?p=2214<\/a><\/p>\n<p><a href=\"http:\/\/droidcore.blogspot.cz\/2012\/12\/how-to-edit-initrc-in-android.html\" target=\"_blank\">http:\/\/droidcore.blogspot.cz\/2012\/12\/how-to-edit-initrc-in-android.html<\/a><\/p>\n<p><a href=\"http:\/\/www.imajeenyus.com\/computer\/20130301_android_tablet\/android\/partitions.html\">http:\/\/www.imajeenyus.com\/computer\/20130301_android_tablet\/android\/partitions.html<\/a><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Pokud pot\u0159ebujete kompilovat moduly do kernelu ke kter\u00e9mu nem\u00e1te zdrojov\u00fd k\u00f3d, budete pot\u0159ebovat z tohoto kernelu z\u00edskat ur\u010dit\u00e9 informace. A pr\u00e1v\u011b o tom bude tento n\u00e1vod&#8230;. <\/p>\n<div class=\"read-more navbutton\"><a href=\"https:\/\/dlabi.cz\/en\/extrahujeme-module-symvers-a-config\/\">Read More<i class=\"fa fa-angle-double-right\"><\/i><\/a><\/div>","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[3],"tags":[16,43,44,41,28,37,45,42,40,38,39],"class_list":["post-229","post","type-post","status-publish","format-standard","hentry","category-android","tag-android-2","tag-config","tag-extract","tag-extract-symvers","tag-kernel","tag-module-symvers","tag-partition","tag-recovery","tag-split_boot_img","tag-unbootimg","tag-unmkbootimg"],"_links":{"self":[{"href":"https:\/\/dlabi.cz\/en\/wp-json\/wp\/v2\/posts\/229","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dlabi.cz\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dlabi.cz\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dlabi.cz\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dlabi.cz\/en\/wp-json\/wp\/v2\/comments?post=229"}],"version-history":[{"count":13,"href":"https:\/\/dlabi.cz\/en\/wp-json\/wp\/v2\/posts\/229\/revisions"}],"predecessor-version":[{"id":257,"href":"https:\/\/dlabi.cz\/en\/wp-json\/wp\/v2\/posts\/229\/revisions\/257"}],"wp:attachment":[{"href":"https:\/\/dlabi.cz\/en\/wp-json\/wp\/v2\/media?parent=229"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dlabi.cz\/en\/wp-json\/wp\/v2\/categories?post=229"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dlabi.cz\/en\/wp-json\/wp\/v2\/tags?post=229"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}