Автор Гілка: чому initrd.img такий товстий?  (Прочитано 1317 раз)

fdfghghkyjuk

  • Гість
xuser@mbs:/boot$ ll -h ini*
-rw-r--r-- 1 root root  62M авг  8 19:38 initrd.img-4.15.0-58-generic
-rw-r--r-- 1 root root 503M авг 14 08:48 initrd.img-5.2.80
-rw-r--r-- 1 root root 478M авг 14 23:05 initrd.img-5.2.81
Я так давно не компілював ядра... Іще аж з часів 2.4.хМолодість згадав :(.
Члму в 5.2 такі величезні initrd.img?

Відсутній Володимир Лісівка

  • Адміністратор ЩОДО
  • Видавець
  • *****
  • дописів: 3731
  • Карма: +9/-0
  • Програміст
Re: чому initrd.img такий товстий?
« Відповідей #1 : 2019-08-14 23:56:50 »
Розпакуй і подивися.
Можливо модулі не були стріпнуті, так що там присутня інформація для зневадження.
[Fedora Linux]

fdfghghkyjuk

  • Гість
Re: чому initrd.img такий товстий?
« Відповідей #2 : 2019-08-15 05:00:43 »
Добре, що не на пальцях показали. Зробив відкриття: познайомився з binwalk .
xuser@mbs:~/dnl$ ll -h
-rw-r--r--  1 xuser xuser 503M авг 14 08:48 initrd.img
-rw-r--r--  1 xuser xuser  62M авг  8 19:38 initrd.img-4.15.58
xuser@mbs:~/dnl$

//503 mb
xuser@mbs:~/dnl$ binwalk initrd.img

DECIMAL       HEXADECIMAL     DESCRIPTION
--------------------------------------------------------------------------------
0             0x0             ASCII cpio archive (SVR4 with no CRC), file name: ".", file name length: "0x00000002", file size: "0x00000000"
112           0x70            ASCII cpio archive (SVR4 with no CRC), file name: "kernel", file name length: "0x00000007", file size: "0x00000000"
232           0xE8            ASCII cpio archive (SVR4 with no CRC), file name: "kernel/x86", file name length: "0x0000000B", file size: "0x00000000"
356           0x164           ASCII cpio archive (SVR4 with no CRC), file name: "kernel/x86/microcode", file name length: "0x00000015", file size: "0x00000000"
488           0x1E8           ASCII cpio archive (SVR4 with no CRC), file name: "kernel/x86/microcode/AuthenticAMD.bin", file name length: "0x00000026", file size: "0x00006B2A"
28072         0x6DA8          ASCII cpio archive (SVR4 with no CRC), file name: "TRAILER!!!", file name length: "0x0000000B", file size: "0x00000000"
28672         0x7000          ASCII cpio archive (SVR4 with no CRC), file name: "kernel", file name length: "0x00000007", file size: "0x00000000"
28792         0x7078          ASCII cpio archive (SVR4 with no CRC), file name: "kernel/x86", file name length: "0x0000000B", file size: "0x00000000"
28916         0x70F4          ASCII cpio archive (SVR4 with no CRC), file name: "kernel/x86/microcode", file name length: "0x00000015", file size: "0x00000000"
29048         0x7178          ASCII cpio archive (SVR4 with no CRC), file name: "kernel/x86/microcode/.enuineIntel.align.0123456789abc", file name length: "0x00000036", file size: "0x00000000"
29212         0x721C          ASCII cpio archive (SVR4 with no CRC), file name: "kernel/x86/microcode/GenuineIntel.bin", file name length: "0x00000026", file size: "0x0024CC00"
2440880       0x253EB0        ASCII cpio archive (SVR4 with no CRC), file name: "TRAILER!!!", file name length: "0x0000000B", file size: "0x00000000"
2441216       0x254000        gzip compressed data, from Unix, last modified: 2019-08-14 05:46:47
103612495     0x62D004F       MySQL MISAM index file Version 10
200147950     0xBEE03EE       Zlib compressed data, default compression
244654900     0xE952334       StuffIt Deluxe Segment (data): f!
510628072     0x1E6F90E8      MySQL ISAM index file Version 1
518631370     0x1EE9AFCA      MySQL ISAM index file Version 2


//62 mb
xuser@mbs:~/dnl$ binwalk initrd.img-4.15.58

DECIMAL       HEXADECIMAL     DESCRIPTION
--------------------------------------------------------------------------------
0             0x0             ASCII cpio archive (SVR4 with no CRC), file name: ".", file name length: "0x00000002", file size: "0x00000000"
112           0x70            ASCII cpio archive (SVR4 with no CRC), file name: "kernel", file name length: "0x00000007", file size: "0x00000000"
232           0xE8            ASCII cpio archive (SVR4 with no CRC), file name: "kernel/x86", file name length: "0x0000000B", file size: "0x00000000"
356           0x164           ASCII cpio archive (SVR4 with no CRC), file name: "kernel/x86/microcode", file name length: "0x00000015", file size: "0x00000000"
488           0x1E8           ASCII cpio archive (SVR4 with no CRC), file name: "kernel/x86/microcode/AuthenticAMD.bin", file name length: "0x00000026", file size: "0x00006B2A"
28072         0x6DA8          ASCII cpio archive (SVR4 with no CRC), file name: "TRAILER!!!", file name length: "0x0000000B", file size: "0x00000000"
28672         0x7000          ASCII cpio archive (SVR4 with no CRC), file name: "kernel", file name length: "0x00000007", file size: "0x00000000"
28792         0x7078          ASCII cpio archive (SVR4 with no CRC), file name: "kernel/x86", file name length: "0x0000000B", file size: "0x00000000"
28916         0x70F4          ASCII cpio archive (SVR4 with no CRC), file name: "kernel/x86/microcode", file name length: "0x00000015", file size: "0x00000000"
29048         0x7178          ASCII cpio archive (SVR4 with no CRC), file name: "kernel/x86/microcode/.enuineIntel.align.0123456789abc", file name length: "0x00000036", file size: "0x00000000"
29212         0x721C          ASCII cpio archive (SVR4 with no CRC), file name: "kernel/x86/microcode/GenuineIntel.bin", file name length: "0x00000026", file size: "0x0024CC00"
2440880       0x253EB0        ASCII cpio archive (SVR4 with no CRC), file name: "TRAILER!!!", file name length: "0x0000000B", file size: "0x00000000"
2441216       0x254000        gzip compressed data, from Unix, last modified: 2019-08-08 16:38:36
Дивно, що то за mySql-приблуди? Потрібно окремо їх дістати і дослідити. Я в параметрах компіляції ядра використав lz4 (думаю ви знаєте, що воно таке і де воно вказується).
Конфігурацію ядра 5.2.8 робив на основі конфіга 4.15.58, але повністтю відключив вайфай, блютуз, ввімкнув можливість отримати конфіг ядра з /proc/config. Ввіммкнув можливість load/unload модулів та в опції де вказується оптимізація ядра Розмір/Швидкість(perfomance)  я обрав Швидкість.

Начебто(?) нічого дивного, бездумного не робив. А воно он шо получилось.
Компіляцію проводив з параметом  -j16 або -j10.

Поки що для мене це загадка (розмір initrd).  А також!!! модулі (тобто драйвери системи) ядра 5.2.8 8займають 4 гб, а у версіі 4.15.58 розмір модулів 463 або 363 мб. Зараз гляну. ого, трішки помилився (4 гб і 233 мб):
xuser@mbs:~/dnl$ du -hs /lib/modules/*
233M    /lib/modules/4.15.0-58-generic
4,0G    /lib/modules/5.2.80
xuser@mbs:~/dnl$
Чому все таке велике і обширне  :-\ ? Хто що думає? А може все дуже просто, тільки потрібно в ґуґоля запитати?

fdfghghkyjuk

  • Гість
Re: чому initrd.img такий товстий?
« Відповідей #3 : 2019-08-15 05:12:42 »
Розпакуй і подивися.
Можливо модулі не були стріпнуті, так що там присутня інформація для зневадження.
Мабуть так і є., бо /lib/modules аж 4 гб, але ж я за основу взяв стандартний (він "прилетів" з оновленням системи) конфіг 4.15.58
не знаю. Мені дуже цікаво, тому і запитую. Цілком можливо це я щось (по дур... по незнанню) натворив(?).

fdfghghkyjuk

  • Гість
Re: чому initrd.img такий товстий?
« Відповідей #4 : 2019-08-15 05:18:24 »
Я в параметрах КОНФІГУРАЦІЇ ядра використав lz4

Відсутній Володимир Лісівка

  • Адміністратор ЩОДО
  • Видавець
  • *****
  • дописів: 3731
  • Карма: +9/-0
  • Програміст
Re: чому initrd.img такий товстий?
« Відповідей #5 : 2019-08-15 10:29:05 »
Вимкніть CONFIG_DEBUG або стріпніть відлагоджувальні символи: make INSTALL_MOD_STRIP=1 modules_install 

[Fedora Linux]

fdfghghkyjuk

  • Гість
Re: чому initrd.img такий товстий?
« Відповідей #6 : 2019-08-15 18:21:16 »
Вимкніть CONFIG_DEBUG або ...

хм-м... але ж я не вмикав цей параметр. Пізніше гляну, відпишусь.

fdfghghkyjuk

  • Гість
Re: чому initrd.img такий товстий?
« Відповідей #7 : 2019-08-15 19:04:09 »
ну в впринципі оце і все
xuser@mbs:/boot$ grep -n CONFIG_DEBUG config-5.2.80 145:# CONFIG_DEBUG_BLK_CGROUP is not set
222:# CONFIG_DEBUG_RSEQ is not set
231:# CONFIG_DEBUG_PERF_USE_VMALLOC is not set
458:# CONFIG_DEBUG_HOTPLUG_CPU0 is not set
2001:# CONFIG_DEBUG_DRIVER is not set
2002:# CONFIG_DEBUG_DEVRES is not set
2003:# CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set
4091:# CONFIG_DEBUG_PINCTRL is not set
4110:# CONFIG_DEBUG_GPIO is not set
5607:# CONFIG_DEBUG_KERNEL_DC is not set
9401:CONFIG_DEBUG_INFO=y
9402:# CONFIG_DEBUG_INFO_REDUCED is not set
9403:# CONFIG_DEBUG_INFO_SPLIT is not set
9404:CONFIG_DEBUG_INFO_DWARF4=y
9405:# CONFIG_DEBUG_INFO_BTF is not set
9412:CONFIG_DEBUG_FS=y
9415:# CONFIG_DEBUG_SECTION_MISMATCH is not set
9419:# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
9425:CONFIG_DEBUG_KERNEL=y
9426:CONFIG_DEBUG_MISC=y
9432:# CONFIG_DEBUG_PAGEALLOC is not set
9435:# CONFIG_DEBUG_PAGE_REF is not set
9436:# CONFIG_DEBUG_RODATA_TEST is not set
9437:# CONFIG_DEBUG_OBJECTS is not set
9441:# CONFIG_DEBUG_KMEMLEAK is not set
9442:# CONFIG_DEBUG_STACK_USAGE is not set
9443:# CONFIG_DEBUG_VM is not set
9445:# CONFIG_DEBUG_VIRTUAL is not set
9446:# CONFIG_DEBUG_MEMORY_INIT is not set
9448:# CONFIG_DEBUG_PER_CPU_MAPS is not set
9458:# CONFIG_DEBUG_SHIRQ is not set
9486:# CONFIG_DEBUG_TIMEKEEPING is not set
9494:# CONFIG_DEBUG_RT_MUTEXES is not set
9495:# CONFIG_DEBUG_SPINLOCK is not set
9496:# CONFIG_DEBUG_MUTEXES is not set
9497:# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set
9498:# CONFIG_DEBUG_RWSEMS is not set
9499:# CONFIG_DEBUG_LOCK_ALLOC is not set
9500:# CONFIG_DEBUG_ATOMIC_SLEEP is not set
9501:# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
9508:# CONFIG_DEBUG_KOBJECT is not set
9509:CONFIG_DEBUG_BUGVERBOSE=y
9510:# CONFIG_DEBUG_LIST is not set
9511:# CONFIG_DEBUG_PLIST is not set
9512:# CONFIG_DEBUG_SG is not set
9513:# CONFIG_DEBUG_NOTIFIERS is not set
9514:# CONFIG_DEBUG_CREDENTIALS is not set
9527:# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set
9528:# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
9657:CONFIG_DEBUG_WX=y
9659:# CONFIG_DEBUG_TLBFLUSH is not set
9672:# CONFIG_DEBUG_BOOT_PARAMS is not set
9674:# CONFIG_DEBUG_ENTRY is not set
9675:# CONFIG_DEBUG_NMI_SELFTEST is not set
xuser@mbs:/boot$


xuser@mbs:/boot$ grep -n CONFIG_DEBUG config-4.15.0-58-generic
167:# CONFIG_DEBUG_BLK_CGROUP is not set
250:# CONFIG_DEBUG_PERF_USE_VMALLOC is not set
702:# CONFIG_DEBUG_HOTPLUG_CPU0 is not set
1926:# CONFIG_DEBUG_DRIVER is not set
1927:# CONFIG_DEBUG_DEVRES is not set
1928:# CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set
4210:# CONFIG_DEBUG_PINCTRL is not set
4227:# CONFIG_DEBUG_GPIO is not set
5698:# CONFIG_DEBUG_KERNEL_DC is not set
8903:CONFIG_DEBUG_INFO=y
8904:# CONFIG_DEBUG_INFO_REDUCED is not set
8905:# CONFIG_DEBUG_INFO_SPLIT is not set
8906:CONFIG_DEBUG_INFO_DWARF4=y
8915:CONFIG_DEBUG_FS=y
8917:# CONFIG_DEBUG_SECTION_MISMATCH is not set
8921:# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
8925:CONFIG_DEBUG_KERNEL=y
8931:# CONFIG_DEBUG_PAGEALLOC is not set
8933:# CONFIG_DEBUG_PAGE_REF is not set
8934:# CONFIG_DEBUG_RODATA_TEST is not set
8935:# CONFIG_DEBUG_OBJECTS is not set
8939:# CONFIG_DEBUG_KMEMLEAK is not set
8940:# CONFIG_DEBUG_STACK_USAGE is not set
8941:# CONFIG_DEBUG_VM is not set
8943:# CONFIG_DEBUG_VIRTUAL is not set
8944:# CONFIG_DEBUG_MEMORY_INIT is not set
8946:# CONFIG_DEBUG_PER_CPU_MAPS is not set
8948:# CONFIG_DEBUG_STACKOVERFLOW is not set
8953:# CONFIG_DEBUG_SHIRQ is not set
8979:# CONFIG_DEBUG_TIMEKEEPING is not set
8984:# CONFIG_DEBUG_RT_MUTEXES is not set
8985:# CONFIG_DEBUG_SPINLOCK is not set
8986:# CONFIG_DEBUG_MUTEXES is not set
8987:# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set
8988:# CONFIG_DEBUG_LOCK_ALLOC is not set
8991:# CONFIG_DEBUG_ATOMIC_SLEEP is not set
8992:# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
8997:# CONFIG_DEBUG_KOBJECT is not set
8998:CONFIG_DEBUG_BUGVERBOSE=y
8999:# CONFIG_DEBUG_LIST is not set
9000:# CONFIG_DEBUG_PI_LIST is not set
9001:# CONFIG_DEBUG_SG is not set
9002:# CONFIG_DEBUG_NOTIFIERS is not set
9003:# CONFIG_DEBUG_CREDENTIALS is not set
9015:# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set
9016:# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
9135:CONFIG_DEBUG_WX=y
9137:# CONFIG_DEBUG_TLBFLUSH is not set
9151:# CONFIG_DEBUG_BOOT_PARAMS is not set
9154:# CONFIG_DEBUG_ENTRY is not set
9155:# CONFIG_DEBUG_NMI_SELFTEST is not set
xuser@mbs:/boot$
Залишилось з'ясувати де воно знаходиться в make memuconfig і мабуть наново перекомпілювати все, або зробити strip.

Здивувало те що я очікував менші розміри, бо дещо відкячив в конфігурації (ну це я вже повторююсь)
Все. "Поблему" вирішено.  :)

fdfghghkyjuk

  • Гість
Re: чому initrd.img такий товстий?
« Відповідей #8 : 2019-08-16 19:51:23 »
Прошу видалити попередній комент. видалив
xuser@mbs:/boot$ ls -lh -rw-r--r-- 1 root root 213K авг  6 13:45 config-4.15.0-58-generic
-rw-r--r-- 1 root root 213K авг 14 12:51 config-4.15.0-59-generic
-rw-r--r-- 1 root root 213K авг 16 17:40 config-5.2.80
...
-rw-r--r-- 1 root root  62M авг  8 19:38 initrd.img-4.15.0-58-generic
-rw-r--r-- 1 root root  54M авг 16 04:12 initrd.img-4.15.0-59-generic
-rw-r--r-- 1 root root  54M авг 16 17:40 initrd.img-5.2.80
...
-rw------- 1 root root 3,9M авг  6 13:45 System.map-4.15.0-58-generic
-rw------- 1 root root 3,9M авг 14 12:51 System.map-4.15.0-59-generic
-rw-r--r-- 1 root root 3,6M авг 16 17:40 System.map-5.2.80
-rw------- 1 root root 8,0M авг  6 20:41 vmlinuz-4.15.0-58-generic
-rw------- 1 root root 8,0M авг 14 13:37 vmlinuz-4.15.0-59-generic
-rw-r--r-- 1 root root 9,4M авг 16 17:40 vmlinuz-5.2.80
xuser@mbs:/boot$
//xuser@mbs:/lib/modules$ du -sh *
233M    4.15.0-58-generic
231M    4.15.0-59-generic
180M    5.2.80
xuser@mbs:/lib/modules$
4.15 https://www.youtube.com/watch?v=sQBermtzEEA---
5.2 https://www.youtube.com/watch?v=A5AQHE4RVEw
« Змінено: 2019-08-16 19:58:39 від Володимир Лісівка »