{"id":84,"date":"2011-04-24T16:27:21","date_gmt":"2011-04-24T16:27:21","guid":{"rendered":"http:\/\/piatkosia.k4be.pl\/wordpress\/?p=84"},"modified":"2011-11-20T18:09:09","modified_gmt":"2011-11-20T18:09:09","slug":"ale-jaja-czyli-jak-to-z-jadra-zrobilam-pisanke","status":"publish","type":"post","link":"https:\/\/piatkosia.k4be.pl\/wordpress\/2011\/04\/24\/ale-jaja-czyli-jak-to-z-jadra-zrobilam-pisanke\/","title":{"rendered":"Ale jaja, czyli jak to z j\u0105dra zrobi\u0142am pisank\u0119."},"content":{"rendered":"<p>Utworzono dnia 2010-09-13 12:31:17<br \/>\nNo c\u00f3\u017c, jestem blondynk\u0105 ze wszystkimi konsekwencjami tego. Dnia 8.09.2010 zaplanowa\u0142am sobie kompilacj\u0119 jajka. Wi\u0119c 7 ca\u0142y dzie\u0144 (no prawie) ci\u0105g\u0142am z kernel.org source najnowszego stabilnego jajka. 9 przyst\u0105pi\u0142am do kompilacji, czytaj\u0105c wcze\u015bniej sporo na ten temat. Id\u0105c za rad\u0105 jednego z bardziej do\u015bwiadczonych koleg\u00f3w (na forach te\u017c pisa\u0142o podobnie) zaimportowa\u0142am .config z poprzedniego jaja. No i podo\u0142\u0105cza\u0142am, to co trzeba (reszty nie ruszaj\u0105c, to by\u0142a moja dziewicza kompilacja przecie\u017c). Sk\u0105d wiedzia\u0142am co trzeba? Ano mia\u0142am takie \u017ar\u00f3d\u0142a:<\/p>\n<ul>\n<li> programik hardinfo (system information) i wygenerowany przez niego raport w html&#8217;u<\/li>\n<li> wyniki ze strony http:\/\/kmuto.jp\/debian\/hcl\/ po wklejeniu wyniku polecenia # lspci -n<\/li>\n<li> wyniki komendy lspci -k &gt;sprz\u0119t<\/li>\n<li> wyniki komendy lsmod &gt;modu\u0142y<\/li>\n<\/ul>\n<p><!--more--><br \/>\nNo i make xconfig. Plu\u0142 si\u0119 \u017ce nie mam qt, wi\u0119c zainstalowa\u0142am, korzystaj\u0105c z synaptica. Dlaczego? Poniewa\u017c nie chcia\u0142am ju\u017c si\u0119 wg\u0142\u0119bia\u0107 jakie pakiety s\u0105 mi potrzebne. ctrl+f i jazda.<br \/>\nPo instalacji komenda ju\u017c dzia\u0142a\u0142a prawid\u0142owo. To co zobaczy\u0142am troch\u0119 mnie zdziwi\u0142o. To na prawd\u0119 mog\u0119 zdecydowa\u0107 co m\u00f3j system b\u0119dzie obs\u0142ugiwa\u0142 i jak b\u0119dzie dzia\u0142a\u0142? Hmm, ale co oznaczaj\u0105 te wszystkie wpisy?<br \/>\nI tak kto\u015b z tytu\u0142em Technika Informatyka dowiaduje si\u0119, \u017ce na temat w\u0142asnego sprz\u0119tu wie relatywnie niewiele. Zaznaczy\u0142am tyko to, co mi wysz\u0142o z wynik\u00f3w powy\u017cej, nie zmieniaj\u0105c nic poza tym (no przecie\u017c config powinien dziaa\u0142a\u0107).<br \/>\nNo to zabieram si\u0119 za kompilacj\u0119. Jako \u017ce bezpieczniej by\u0142o zrobi\u0107 to debian-way (mam debian lenny, mam w zasadzie u\u017cywa\u0107 jedynie stable, bo jestem pocz\u0105tkuj\u0105ca, wol\u0119 by kto\u015b wcze\u015bniej mia\u0142 podobne problemy), wyda\u0142am w terminalu komend\u0119<\/p>\n<pre class=\"brush:shell\">fakeroot make-kpkg --initrd --append-to-version=-piatkosia kernel_image kernel_headers<\/pre>\n<p>No i poczeka\u0142am sporo czasu. I zonk. Skubaniec wypluwa\u0142 co\u015b takiego na konsol\u0119.<\/p>\n<pre class=\"brush:shell\">\r\n====== making target debian\/stamp\/install\/linux-image-2.6.35.4 [new prereqs: ]======\r\nThis is kernel package version 11.015.\r\necho \"The UTS Release version in include\/linux\/version.h\"; echo \"       \"\" \"; echo \"does not match current version:\"; echo \"       \"2.6.35.4\" \"; echo \"Please correct this.\"; exit 2\r\nThe UTS Release version in include\/linux\/version.h\r\n\"\"\r\ndoes not match current version:\r\n\"2.6.35.4\"\r\nPlease correct this.\r\nmake[1]: *** [debian\/stamp\/install\/linux-image-2.6.35.4] B\u0142\u0105d 2\r\nmake[1]: Opuszczenie katalogu `\/home\/piatkosia\/Desktop\/jajo\/linux-2.6.35.4'\r\nmake: *** [linux-image] B\u0142\u0105d 2\r\n<\/pre>\n<p>No \u0142adnie. Pewnie co\u015b popsu\u0142am. Zastanawia\u0142am si\u0119 tylko co. Pr\u00f3bowa\u0142am jeszcze raz kompilowa\u0107, zmienia\u0107 ustawienia, przenosi\u0107 \u017ar\u00f3d\u0142a do \/usr\/src, co ja jeszcze kombinowa\u0142am. No dobra, po 6 kompilacji odp\u00f3\u015bci\u0142am. By\u0142am offline, znik\u0105d pomocy, przecie\u017c ludzi nie b\u0119d\u0119 budzi\u0107. Kogo nie pyta\u0142am, dawa\u0142 mi standardow\u0105 odpowied\u017a admina nr 1 (przypomn\u0119: &#8222;U mnie dzia\u0142a&#8221;), albo proponowa\u0142 mi przej\u015bcie na windows (kt\u00f3rego z reszt\u0105 r\u00f3wnie\u017c u\u017cywam, jako \u017ce chc\u0119 wyrobi\u0107 w sobie niezale\u017cno\u015b\u0107 od platformy systemowej).<\/p>\n<p>Nadszed\u0142 9.09. Postanowi\u0142am zapyta\u0107 na kanale. (Czemu nie zapyta\u0142am wyszukiwarki? Chodzi o jakie\u015b nawi\u0105zanie kontaktu. Tak to jest chwil\u0119 o czym m\u00f3wi\u0107, i kto\u015b poczuje si\u0119 chwil\u0119 potrzebny. Sama lubi\u0119 pomaga\u0107 innym jak co\u015b wiem. Nast\u0119pnie zajrza\u0142am do google. Po przeleceniu x temat\u00f3w okaza\u0142o si\u0119, \u017ce wina nie le\u017cy w b\u0142\u0119dzie kompilacji, a w pakiecie kernel-package, konkretnie w jego wersji 11.015. Znalaz\u0142am w sieci patch na ten problem.<br \/>\nNo to zassa\u0142am http:\/\/ubuntuforums.org\/attachment.php?attachmentid=150800&amp;d=1269121765 ten pliczek i zrobi\u0142am to co napisali.<\/p>\n<pre class=\"brush:shell\">\r\napt-cache policy kernel-package\r\ncd \/usr\/share\/kernel-package\r\nsudo cp -v ruleset\/misc\/version_vars.mk{,.orig}\r\nsudo cp -v ruleset\/targets\/common.mk{,.orig}\r\npatch -p1 -i \/home\/piatkosia\/Desktop\/kernel-package-11.015-2.6.34.patch.txt\r\n<\/pre>\n<p>No i ten sam b\u0142\u0105d. Jak na z\u0142o\u015b\u0107.<br \/>\nNic, tylko wesz\u0142am na debian org i skorzystalam z wyszukiwarki pakiet\u00f3w i pobra\u0142am wersj\u0119 dla sida chyba czy squeze (or sth). Link bezpo\u015bredni do pakietu poni\u017cej:<br \/>\nhttp:\/\/ftp.pl.debian.org\/debian\/pool\/main\/k\/kernel-package\/kernel-package_12.036_all.deb<br \/>\nTo rozwi\u0105za\u0142o powy\u017cszy problem i mia\u0142am ju\u017c upragnione pliki deb z kernelem oraz headersami. Na virtualnej dzia\u0142a\u0142y, odb\u0119bni\u0142am wi\u0119c zwyci\u0119stwo, nie b\u0119d\u0105c \u015bwiadom\u0105, \u017ce zabawa dopiero si\u0119 zaczyna, a jej wynik b\u0119dzie dopiero za 2 dni.<br \/>\nNo to jak dzia\u0142a, heja<\/p>\n<pre class=\"brush:shell\"> $su\r\nhas\u0142o: (nie by\u0142o tu nic wida\u0107)\r\n\u015bcie\u017cka# dpkg -i *.deb<\/pre>\n<p>Nie chcia\u0142o mi si\u0119 pisa\u0107 nazw. Mia\u0142am tylko 2 debpaczki w folderze, wi\u0119c to w zupe\u0142no\u015bci wystarczy\u0142o.<br \/>\nPaczki si\u0119 zaistalowa\u0142y, reboot, kernel panic.<br \/>\nNo jasne, to by\u0142o do przewidzenia. No ale kto powiedzia\u0142, \u017ce tak szybko uda mi si\u0119 to prawid\u0142owo zrobi\u0107? Ale si\u0119 nie poddam. Kartka, d\u0142ugopis, zapisa\u0142am to co wypluwa\u0142 kochany dmesg. Jako \u017ce nie lubi\u0119 obrazk\u00f3w przy \u0142adowaniu, nie mam nigdy \u017cadnego splasha przy bootowaniu.<br \/>\nBrzmia\u0142o to mniej wi\u0119cej tak &#8222;Unable to mount root fs on unknown-block(0,0)&#8221; i mia\u0142o zwi\u0105zek (jak przeczyta\u0142am) z b\u0142\u0119dami w bootloaderze.<br \/>\nPatrz\u0105c na wpisy w \/boot\/grub\/menu.lst (bo mnie straszyli \u017ce grub2 jest ci\u0119\u017cki w konfiguracji, wybieram 1 przy instalacji) zobaczy\u0142am, \u017ce w linijce z nowym kernelem (konkretnie w 2 linijkach, bo 1 na single)<br \/>\nnie ma wpisu o initrd. No to kaplica. Nie mam sieci, czekam do jutra. Nadszed\u0142 ju\u017c 10 dzie\u0144.<br \/>\nWbi\u0142am ja w sie\u0107, w celu poszukiwania wszelkich informacji o tym. Przy okazji dowiedzia\u0142am si\u0119 co to jest i do czego s\u0142u\u017cy. To co\u015b dzia\u0142a w ramie, zwi\u0119kszaj\u0105c u\u017cyteczno\u015b\u0107 jaja, do\u0142\u0105czaj\u0105c do niego modu\u0142y i takie tam. Pe\u0142no info w sieci na ten temat. Nie b\u0119d\u0119 si\u0119 rozpisywa\u0107. Znalaz\u0142am w ko\u0144cu komend\u0119, kt\u00f3ra mi go wygeneruje.<\/p>\n<pre class=\"brush:shell\">\r\nmkinitrd -o \/boot\/initrd.img-2.6.35.4<\/pre>\n<p>Oj\u0107&#8230; bash: mkinitrd: command not found<br \/>\nNo tak. \u0141adnie<br \/>\nNo ale nieustraszona linux-userka wykonuje komend\u0119 as root<br \/>\napt-get install mkinitrd<\/p>\n<p>no i co widz\u0119?<\/p>\n<pre class=\"brush:shell\">\r\nCzytanie list pakiet\u00f3w... Gotowe\r\nBudowanie drzewa zale\u017cno\u015bci\r\nOdczyt informacji o stanie... Gotowe\r\nE: Nie uda\u0142o si\u0119 odnale\u017a\u0107 pakietu mkinitrd\r\n<\/pre>\n<p>Faaajnie, zajebioza. Ju\u017c traci\u0142am nadziej\u0119, ale odruchowo wykona\u0142am mk[tab][tab]<br \/>\nefekt:<\/p>\n<pre class=\"brush:shell\">mkbimage         mkfs.cramfs     mkinitramfs-kpkg    mkswap\r\nmkboot           mkfs.ext2       mkisofs             mktemp\r\nmk-build-deps    mkfs.ext3       mklost+found        mktexfmt\r\nmkdir            mkfs.ext4       mkmanifest          mktexlsr\r\nmke2fs           mkfs.ext4dev    mk_modmap           mktexmf\r\nmkfifo           mkfs.minix      mknod               mktexpk\r\nmkfontdir        mkgraticule.py  mkocp               mktextfm\r\nmkfontscale      mkhybrid        mkofm               mkzftree\r\nmkfs             mkindex         mkpasswd            mkfs.bfs\r\nmkinitramfs      mksmbpasswd<\/pre>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>yyy ten mkinitramfs wygl\u0105da conajmniej podejrzanie. No to manem go. Okazuje si\u0119, \u017ce w\u0142a\u015bnie tego szukam. Wi\u0119c wykona\u0142am<\/p>\n<p>mkinitramfs -o \/boot\/initrd.img-2.6.35.4<br \/>\nNo teraz tylko edycja \/boot\/grub\/menu.lst i powinno bangla\u0107.<br \/>\n(dopisanie przy jajkach linijki<br \/>\ninitrd          \/boot\/initrd.img-2.6.35.4<br \/>\n)<br \/>\nNo i reboot.<br \/>\nNo jasny gwint. Nie b\u0119d\u0119 za ka\u017cdym razem czeka\u0142a 10 minut a\u017c mister Debian \u0142askawie si\u0119 odpali.<br \/>\nKomunikat w trakcie waitania by\u0142 mniej wi\u0119cej taki. (napisa\u0142am sobie na kartce)<br \/>\nBegin:<br \/>\nrunning \/script\/local-top&#8230;blablabla<br \/>\nFATAL: Could not load \/lib\/modules\/2-6&#8230;\/modules.dep<br \/>\nBegin: waiting for root file syetem.<br \/>\nSzuka\u0142am b\u0142\u0119du. Niby wina initrd. Dalej wi\u0119c szukam. Ale nie to okaza\u0142o si\u0119 przyczyn\u0105.<br \/>\nPo prostu konfiguracja z 2.6.26.2 nie bardzo lubia\u0142a si\u0119 z 2.6.35.4 no i wiecie, mog\u0142am sobie modyfikowa\u0107, ale jak DEPRACHED (czy jako\u015b tak) spotyka\u0142y si\u0119 z EXPERIMENTAL, musia\u0142y si\u0119 gry\u017a\u0107. Chodzi\u0142o o obs\u0142ug\u0119 dysk\u00f3w pewnie.<br \/>\nMamy ju\u017c 11 dzie\u0144. Znowu szukam problemu. Okaza\u0142o si\u0119, \u017ce wina le\u017cy za\u015b nie po mojej stronie, a po stronie konfig\u00f3w kernela tamtego. Jak lecia\u0142am &#8222;od nowa&#8221;, on domy\u015blnie i tak j\u0105 bra\u0142.<br \/>\nRozwi\u0105zanie znalaz\u0142am na stronie http:\/\/kernel.xc.net\/ tam dowiedzia\u0142am si\u0119 jak powinien wygl\u0105da\u0107 config, \u017ce domy\u015blnie bierze stary, a jak chcemy nowy, to jest on w<br \/>\nfolder_z_source\/arch\/x86(lub inna architektura)\/configs<br \/>\ntam s\u0105 pliki dla 32 i 64 bitowej konfiguracji. I tak\u0105 \u015bcie\u017ck\u0119 w xconfie podajemy \u017ceby wczyta\u0142.  Dodajemy\/modyfikujemy co trzeba wed\u0142ug informacji podanych wcze\u015bniej. Zapisujemy do pliku .config w folderze ze \u017ar\u00f3d\u0142ami, kompilacja jak powy\u017cej. Instalacja paczek i \u015bmiga. \u017badnego czekania.<br \/>\nSzkoda tylko, \u017ce moje stery nvidii nie chc\u0105 si\u0119 przeinstalowa\u0107 dla nowego kernela. Z tym \u017ce wszyscy maj\u0105 problem. Widzia\u0142am jedno rozwi\u0105zanie, kt\u00f3re polega\u0142o na modyfikacji kodu. Spr\u00f3buj\u0119 go w najbli\u017cszym czasie. Na razie korzystam z iks\u00f3w z driverem nvidii na starym jaju, a przed wej\u015bciem na nowe zmieniam na nv. No c\u00f3\u017c, openGL i compiz fusion na nowym jajku to dopiero przysz\u0142o\u015b\u0107. Na razie ciesz\u0119 si\u0119 z tego co mam.<br \/>\nChcia\u0142abym podzi\u0119kowa\u0107 tym, kt\u00f3rzy s\u0142u\u017cyli mi rad\u0105 w tym trudnym dla mnie czasie. W szczeg\u00f3lno\u015bci (podaj\u0119 nicki pod jakimi te osoby si\u0119 pojawiaj\u0105 na #listekklonu):<br \/>\n-drummachinie<br \/>\n-lzsk&#8217;owi<br \/>\n-nikowowi<br \/>\n-kodxowi<br \/>\n&#8211; i tym co mieli podobny problem i dzi\u0119ki nim znalaz\u0142am wpisy w sieci.<\/p>\n<p>No dobra, sporo tego. Na szcz\u0119\u015bcie ju\u017c koniec. Operacja zako\u0144czona powodzeniem.<br \/>\nCiesz\u0119 si\u0119 \u017ce nie posz\u0142o mi od razu. Sporo si\u0119 nauczy\u0142am. Wiecie jakie to fajne uczucie? To jak wej\u015b\u0107 na szczyt g\u00f3ry, czy latarni. Mo\u017cna u\u017cy\u0107 windy, wyci\u0105gu, kolejki, czego tam jeszcze. Ale mo\u017cna wej\u015b\u0107 na pieszo. Widoki te same, ale satysfakcja wi\u0119ksza. Kurka, ponios\u0142o mnie lekko.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Utworzono dnia 2010-09-13 12:31:17 No c\u00f3\u017c, jestem blondynk\u0105 ze wszystkimi konsekwencjami tego. Dnia 8.09.2010 zaplanowa\u0142am sobie kompilacj\u0119 jajka. Wi\u0119c 7 ca\u0142y dzie\u0144 (no prawie) ci\u0105g\u0142am<\/p>\n<div class=\"more-link-wrapper\"><a class=\"more-link\" href=\"https:\/\/piatkosia.k4be.pl\/wordpress\/2011\/04\/24\/ale-jaja-czyli-jak-to-z-jadra-zrobilam-pisanke\/\">Lecim dalej<span class=\"screen-reader-text\">Ale jaja, czyli jak to z j\u0105dra zrobi\u0142am pisank\u0119.<\/span> <i class=\"fas fa-angle-right\"><\/i><\/a><\/div>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1,25,24],"tags":[53,51,208],"class_list":["post-84","post","type-post","status-publish","format-standard","hentry","category-bez-kategorii","category-linux","category-techniczne","tag-kernel","tag-kompilacja","tag-linux","entry"],"_links":{"self":[{"href":"https:\/\/piatkosia.k4be.pl\/wordpress\/wp-json\/wp\/v2\/posts\/84","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/piatkosia.k4be.pl\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/piatkosia.k4be.pl\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/piatkosia.k4be.pl\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/piatkosia.k4be.pl\/wordpress\/wp-json\/wp\/v2\/comments?post=84"}],"version-history":[{"count":9,"href":"https:\/\/piatkosia.k4be.pl\/wordpress\/wp-json\/wp\/v2\/posts\/84\/revisions"}],"predecessor-version":[{"id":277,"href":"https:\/\/piatkosia.k4be.pl\/wordpress\/wp-json\/wp\/v2\/posts\/84\/revisions\/277"}],"wp:attachment":[{"href":"https:\/\/piatkosia.k4be.pl\/wordpress\/wp-json\/wp\/v2\/media?parent=84"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/piatkosia.k4be.pl\/wordpress\/wp-json\/wp\/v2\/categories?post=84"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/piatkosia.k4be.pl\/wordpress\/wp-json\/wp\/v2\/tags?post=84"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}