Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Jako, że mi się skończyły pomysły co do tworzenia pena live z zaszyfrowanym persistence , postanowiłem spróbować chyba już ostatniego wyjścia czyli edycji initrd.img znajdującym się w obrazie live, który trzeba podmienić na penie.
Sprawa jest niby prosta, skopiować initrd.img z live, rozpakować, podmienić pliki, spakować i wgrać z powrotem . Tylko jak to zrobić?
# file initrd.img initrd.img: ASCII cpio archive (SVR4 with no CRC) # fakeroot zcat initrd.img | cpio -i gzip: initrd.img.gz: No such file or directory cpio: premature end of archive
Próba zamontowania:
# mount -t ext2 -o loop initrd.img temp/ mount: wrong fs type, bad option, bad superblock on /dev/loop0, missing codepage or helper program, or other error In some cases useful info is found in syslog - try dmesg | tail or so # dmesg | tail [Mon Jul 22 14:10:08 2013] EXT2-fs (loop0): error: can't find an ext2 filesystem on dev loop0.
Próbowałem też:
# cpio -i -F initrd.img 1110 blocks
Tylko to tworzy katalog kernel i w nim:
root:/home/morfik/Desktop/kernel# tree . └── x86 └── microcode └── GenuineIntel.bin 2 directories, 1 file
Folder zajmuje 568K , a initrd.img 16,9 MiB , także chyba coś nie do końca to działa.
Ostatnio edytowany przez morfik (2013-07-22 18:00:18)
Offline
Tak zobacz: http://forums.debian.net/viewtopic.php?f=30&t=74013#p411181
Offline
Coś jest nie tak z tym .img na live:
root:/home/morfik/Desktop/initrd# cp /media/morfik/DEBIAN_LIVE/live/initrd.img ../ root:/home/morfik/Desktop/initrd# gzip -dc ../initrd.img | cpio -i gzip: ../initrd.img: not in gzip format cpio: premature end of archive
Gdy wezmę sobie initrd z /boot :
root:/home/morfik/Desktop# cp /boot/initrd.img-3.9-7.slh.3-aptosid-686 ./initrd.img root:/home/morfik/Desktop# cd initrd/ root:/home/morfik/Desktop/initrd# gzip -dc ../initrd.img | cpio -i 58154 blocks root:/home/morfik/Desktop/initrd# ls -al total 44K drwxr-xr-x 9 root root 4.0K Jul 22 14:57 ./ drwxr-xr-x 9 morfik morfik 4.0K Jul 22 14:57 ../ drwxr-xr-x 2 root root 4.0K Jul 22 14:57 bin/ drwxr-xr-x 3 root root 4.0K Jul 22 14:57 conf/ drwxr-xr-x 6 root root 4.0K Jul 22 14:57 etc/ drwxr-xr-x 8 root root 4.0K Jul 22 14:57 lib/ drwxr-xr-x 2 root root 4.0K Jul 22 14:57 run/ drwxr-xr-x 2 root root 4.0K Jul 22 14:57 sbin/ drwxr-xr-x 8 root root 4.0K Jul 22 14:57 scripts/ -rwxr-xr-x 1 root root 6.7K Jul 22 14:57 init*
Jeszcze to:
file /boot/initrd.img-3.9-7.slh.3-aptosid-686 /boot/initrd.img-3.9-7.slh.3-aptosid-686: gzip compressed data, from Unix, last modified: Wed Jul 3 16:54:06 2013
Hmm...
Ostatnio edytowany przez morfik (2013-07-22 15:07:27)
Offline
Może po prostu czym innym spakowany ten z live'a?
Offline
xz na przykład. Sprawdź analogicznie jak ten z aptosida sprawdzałeś i zamiast gzipa użyj czego trzeba.
Offline
Przez file? To w pierwszym poście sprawdziłem:
initrd.img: ASCII cpio archive (SVR4 with no CRC)
Szukam info ale nie mam pojęcia co mam z tym zrobić
Ostatnio edytowany przez morfik (2013-07-22 15:17:03)
Offline
No fakt, przeoczyłem. :)
Offline
Skąd to initrd masz? Ściągnąłem przed chwilą live'a Debiana i jest standardowe:
$ file /home/arnvaker/Desktop/initrd.img /home/arnvaker/Desktop/initrd.img: gzip compressed data, from Unix, last modified: Sun May 5 08:47:39 2013
Offline
Możesz gdzieś wrzucić ten plik?
Offline
Wysyła się, za 3min będzie.
Sprawdziłem jak wygląda jeszcze initrd pod live:
(live)root@morfikownia:/# cd /boot/ (live)root@morfikownia:/boot# ls -al total 21508 drwxr-xr-x 2 root root 4096 Jul 22 13:50 . drwxr-xr-x 20 root root 4096 Jul 22 13:46 .. -rw-r--r-- 1 root root 1818498 Jun 30 05:49 System.map-3.9-1-686-pae -rw-r--r-- 1 root root 149996 Jun 30 05:49 config-3.9-1-686-pae -rw-r--r-- 1 root root 17691113 Jul 22 13:50 initrd.img-3.9-1-686-pae -rw-r--r-- 1 root root 2312816 Jun 30 05:46 vmlinuz-3.9-1-686-pae (live)root@morfikownia:/boot# file initrd.img-3.9-1-686-pae initrd.img-3.9-1-686-pae: ASCII cpio archive (SVR4 with no CRC)
Może to standard? xD
tu jest link:
http://www.speedyshare.com/GcN4H/initrd.img
Ostatnio edytowany przez morfik (2013-07-22 15:54:34)
Offline
OK, w międzyczasie spróbuj tego: http://www.dark.ca/2009/06/10/initrd-modules-and-tools/
cpio -i -d -H newc -F <file> --no-absolute-filenames
Offline
To samo:
root:/home/morfik/Desktop/initrd# cpio -i -d -H newc -F initrd.img --no-absolute-filenames 1110 blocks root:/home/morfik/Desktop/initrd# tree . ├── initrd.img └── kernel └── x86 └── microcode └── GenuineIntel.bin 3 directories, 2 files
Offline
Nie masz tam czasem jeszcze innego initrd? Tu piszą, że to ma tak wyglądać: http://lists.debian.org/debian-user/2013/07/msg00380.html
Offline
Nie ma, to jest lista plików w katalogu live:
# ls -al total 219M dr-xr-xr-x 1 morfik morfik 2.0K Jul 22 16:21 ./ dr-xr-xr-x 1 morfik morfik 2.0K Jul 22 16:22 ../ -r--r--r-- 1 morfik morfik 5.7K Jul 22 16:19 filesystem.packages -r--r--r-- 1 morfik morfik 605 Jul 22 16:19 filesystem.packages-remove -r--r--r-- 1 morfik morfik 200M Jul 22 16:19 filesystem.squashfs -r--r--r-- 1 morfik morfik 17M Jul 22 16:19 initrd.img -r--r--r-- 1 morfik morfik 2.3M Jul 22 16:19 vmlinuz
Zrobiłem teraz iso-hybrid by zobaczyć czy to może dotyczy tylko obrazu hdd, ale jest dokładnie to samo.
Co ciekawe, załadowałem ten live debianowy (iso-hybrid) i tam w ogóle inaczej wygląda wszystko.
root:/media/Server/live# ls -al /media/morfik/debian-live-7.0.0-i386-gnome-desktop.iso/live total 1.1G dr-xr-xr-x 1 morfik morfik 2.0K May 5 13:37 ./ dr-xr-xr-x 1 morfik morfik 2.0K May 5 13:37 ../ -r--r--r-- 1 morfik morfik 40K May 5 13:34 filesystem.packages -r--r--r-- 1 morfik morfik 363 May 5 13:34 filesystem.packages-remove -r--r--r-- 1 morfik morfik 1.1G May 5 13:34 filesystem.squashfs -r--r--r-- 1 morfik morfik 12M May 5 13:34 initrd1.img -r--r--r-- 1 morfik morfik 12M May 5 13:34 initrd2.img -r--r--r-- 1 morfik morfik 173K May 5 13:36 memtest -r--r--r-- 1 morfik morfik 2.4M May 5 13:34 vmlinuz1 -r--r--r-- 1 morfik morfik 2.6M May 5 13:34 vmlinuz2 root:/media/Server/live# file /media/morfik/debian-live-7.0.0-i386-gnome-desktop.iso/live/initrd* /media/morfik/debian-live-7.0.0-i386-gnome-desktop.iso/live/initrd1.img: gzip compressed data, from Unix, last modified: Sun May 5 13:29:30 2013 /media/morfik/debian-live-7.0.0-i386-gnome-desktop.iso/live/initrd2.img: gzip compressed data, from Unix, last modified: Sun May 5 13:29:25 2013
Budowanie tego live pendrive się kwalifikuje do the X-files xD
Offline
To w ogóle jakaś świeża sprawa jest z tym early-initramfs: [bug]712521[/bug]. ;)
Offline
Właśnie przed chwilą próbowałem u siebie na initrd.img z buildu -b hdd -d jessie, i wszystko robi się normalnie (btw szyfrowana persistence działa jak trzeba po "poprawieniu" initrd.img)
Natomiast pobrałem ten twój initrd.img i wywala mi to samo co Tobie...
Offline
Tu ma chyba znaczenie na jakim sprzęcie jest to initrd generowane i czy zainstalowane są pakiety *-microcode. Tam gdzie określone warunki są spełnione generowane jest initrd wielosegmentowe – to co widzimy na wierzchu z microcode, a za nim właściwe initrd (wszystko ostatecznie w jednym pliku initrd.img). Tradycyjne narzędzia póki co chyba sobie z tym nie radzą, przykład z mana lsinitramfs:
lsinitramfs cannot deal with multiple-segmented initramfs images, such as those created when an early (uncompressed) initramfs with system firmware is prepended to the regular compressed initrams, or when overlay data is appended to the initramfs.[/quote]
Ten nowy sposób został wprowadzony w initramfs-tools 0.113 i kernelu 3.9.
[img]http://svn.debianart.org/themes/generic/spinner/spinner48px-moreblue.png[/img]
Offline
Zbudowałem taki najprostszy, żeby sprawdzić co z tą persistence szyfrowaną + cryptsetup w chrootcie
lb config -b hdd -d jessie --interactive shell
Spróbuj może jeszcze raz na takim configu i przebuduj initrd.img tak jak w artykule
Ten nowy sposób został wprowadzony w initramfs-tools 0.113 i kernelu 3.9.[/quote]
Ja mam initramfs-tools 0.113 i kernel 3.10 jakby coOstatnio edytowany przez loop (2013-07-22 17:15:06)
Offline
Ok, już wiem.
Po instalacji debianowego kernela 3.9-1-686-pae, podczas boot został wyrzucony komunikat z jakimiś errorami albo warningami, nie pamiętam dokładnie, dotyczącymi intel-microcode . To mu zainstalowałem ten pakiet i problem się rozwiązał.
Jajko aptosida było chyba starsze niż ten 3.9-1-686-pae debianowy, temu jak można zobaczyć wyżej jest:
file /boot/initrd.img-3.9-7.slh.3-aptosid-686 /boot/initrd.img-3.9-7.slh.3-aptosid-686: gzip compressed data, from Unix, last modified: Wed Jul 3 16:54:06 2013
Teraz jak dałem mu update-initramfs jest:
# file /boot/initrd.img-3.9-7.slh.3-aptosid-686 /boot/initrd.img-3.9-7.slh.3-aptosid-686: ASCII cpio archive (SVR4 with no CRC)
Także pewnie jak wyrzucę intel-microcode z systemu i dam znowu update, wszystko wróci do normy, ale to na moim systemie. Poza tym aptosid nigdy się nie rzucał z tym i nigdy nie instalowałem tego pakietu.
Jak na live? Widzę, że są instalowane intel-microcode amd64-microcode zanim jestem władny wejść w chroot, jak zablokować ich instalację? Może usunąć ręcznie na etapie chroot i wygenerować ponownie initrd? Zaraz spróbuję.
EDIT:
Ok jest dobrze:
(live)root@morfikownia:/# file /boot/initrd.img-3.9-1-686-pae /boot/initrd.img-3.9-1-686-pae: gzip compressed data, from Unix, last modified: Mon Jul 22 15:30:58 2013
Ostatnio edytowany przez morfik (2013-07-22 17:32:54)
Offline
[quote=morfik]Także pewnie jak wyrzucę intel-microcode z systemu i dam znowu update, wszystko wróci do normy, ale to na moim systemie.[/quote]
W związku z koniecznością modyfikacji initrd to zrozumiałe, ale generalnie raczej nie ma sensu z tym walczyć – it's not a bug, it's a feature.
Offline
Time (s) | Query |
---|---|
0.00013 | SET CHARSET latin2 |
0.00006 | SET NAMES latin2 |
0.00142 | SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='3.138.37.43' WHERE u.id=1 |
0.00111 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '3.138.37.43', 1732374038) |
0.00075 | SELECT * FROM punbb_online WHERE logged<1732373738 |
0.00098 | DELETE FROM punbb_online WHERE ident='18.117.75.218' |
0.00102 | DELETE FROM punbb_online WHERE ident='18.223.125.236' |
0.00083 | SELECT topic_id FROM punbb_posts WHERE id=237553 |
0.00007 | SELECT id FROM punbb_posts WHERE topic_id=23979 ORDER BY posted |
0.00080 | SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=23979 AND t.moved_to IS NULL |
0.00007 | SELECT search_for, replace_with FROM punbb_censoring |
0.00194 | SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=23979 ORDER BY p.id LIMIT 0,25 |
0.00091 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=23979 |
Total query time: 0.01009 s |