Tại sao ramdisk ban đầu của tôi rất lớn?


12

Tôi đang chạy Ubuntu 11.10, đi kèm với phiên bản kernel 3.0.0-14. Tôi đã tải xuống và xây dựng một kernel từ 3.1.0chi nhánh. Sau khi cài đặt kernel mới, tôi thấy rằng /boot/initrd.img-3.1.0tập tin của tôi là LỚN. Đó là 114 MB, trong khi của tôi /boot/initrd.img-3.0.0-14-genericlà khoảng 13 MB. Tôi muốn thoát khỏi sự phình to, điều này rõ ràng là không cần thiết.

Khi xây dựng hạt nhân mới, tôi sao chép của tôi /boot/config-3.0.0-14-genericđể .configtrong thư mục build của tôi, như để giữ cấu hình của hạt nhân ban đầu của tôi. Tôi đã chạy make oldconfig, chọn mặc định cho tất cả các tùy chọn mới và sau đó xây dựng kernel.

Nhìn vào kích thước tệp trong mỗi kho lưu trữ cpio initrd, tôi thấy rằng tất cả các mô-đun .ko của tôi có kích thước lớn hơn trong ramdisk 3.1.0, so với 3.0.0-14. Tôi giả sử có một cờ gỡ lỗi không cần thiết được kiểm tra trong tệp cấu hình của mình, nhưng tôi không thấy bất kỳ thứ gì khác chưa được kích hoạt trong tệp cấu hình 3.0.0-14.

Tôi /boot/config-3.0.0-14-genericở đây: http://pastebin.com/UjH7nEqd

Và tôi /boot/config-3.0.1ở đây: http://pastebin.com/HyT0M2k1

Bất cứ ai có thể giải thích tất cả các bloat không cần thiết đến từ đâu?

Câu trả lời:


15

Khi xây dựng kernel và mô-đun bằng cách sử dụng make oldconfig, makemake install, các mô-đun kết quả sẽ có thông tin gỡ lỗi có sẵn trong các tệp.

Sử dụng INSTALL_MOD_STRIPtùy chọn để xóa các ký hiệu gỡ lỗi:

make INSTALL_MOD_STRIP=1 modules_install

Tương tự, để xây dựng các gói deb:

make INSTALL_MOD_STRIP=1 deb-pkg

1
Chạy make INSTALL_MOD_STRIP=1 installđã cho tôi những gì tôi muốn. Cảm ơn!
Finer Reclin
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.