OnWorks Linux và Windows Online WorkStations

Logo

Lưu trữ trực tuyến miễn phí cho máy trạm

<Trước | Nội dung | Tiếp theo>

6.79. Tước lần nữa‌

Phần này là tùy chọn. Nếu người dùng dự định không phải là lập trình viên và không có kế hoạch thực hiện bất kỳ gỡ lỗi nào trên phần mềm hệ thống, thì kích thước hệ thống có thể giảm khoảng 90 MB bằng cách xóa các ký hiệu gỡ lỗi khỏi mã nhị phân và thư viện. Điều này không gây ra sự bất tiện nào ngoài việc không thể gỡ lỗi phần mềm đầy đủ nữa.

Hầu hết những người sử dụng các lệnh được đề cập dưới đây không gặp bất kỳ khó khăn nào. Tuy nhiên, rất dễ mắc lỗi đánh máy và làm cho hệ thống mới không thể sử dụng được, vì vậy trước khi chạy dải , bạn nên tạo một bản sao lưu của hệ thống LFS ở trạng thái hiện tại.


Đầu tiên hãy đặt các ký hiệu gỡ lỗi cho các thư viện đã chọn trong các tệp riêng biệt. Thông tin gỡ lỗi này là cần thiết nếu chạy kiểm tra hồi quy sử dụng valgrind hoặc gdb sau này trong BLFS.


save_lib = "ld-2.30.so libc-2.30.so libpthread-2.30.so libthread_db-1.0.so" cd / lib

cho LIB trong $ save_lib; làm

objcopy - chỉ-giữ-gỡ lỗi dải $ LIB $ LIB.dbg - đoạn mã $ LIB không cần thiết

objcopy --add-gnu-debuglink = $ LIB.dbg $ LIB

thực hiện


save_usrlib = "libquadmath.so.0.0.0 libstdc ++. so.6.0.27 libitm.so.1.0.0 libatomic.so.1.2.0"


cd / usr / lib


cho LIB trong $ save_usrlib; làm

objcopy - chỉ-giữ-gỡ lỗi dải $ LIB $ LIB.dbg - đoạn mã $ LIB không cần thiết

objcopy --add-gnu-debuglink = $ LIB.dbg $ LIB

thực hiện


bỏ đặt LIB save_lib save_usrlib

save_lib = "ld-2.30.so libc-2.30.so libpthread-2.30.so libthread_db-1.0.so" cd / lib

cho LIB trong $ save_lib; làm

objcopy - chỉ-giữ-gỡ lỗi dải $ LIB $ LIB.dbg - đoạn mã $ LIB không cần thiết

objcopy --add-gnu-debuglink = $ LIB.dbg $ LIB

thực hiện


save_usrlib = "libquadmath.so.0.0.0 libstdc ++. so.6.0.27 libitm.so.1.0.0 libatomic.so.1.2.0"


cd / usr / lib


cho LIB trong $ save_usrlib; làm

objcopy - chỉ-giữ-gỡ lỗi dải $ LIB $ LIB.dbg - đoạn mã $ LIB không cần thiết

objcopy --add-gnu-debuglink = $ LIB.dbg $ LIB

thực hiện


bỏ đặt LIB save_lib save_usrlib

Trước khi thực hiện việc loại bỏ, hãy đặc biệt cẩn thận để đảm bảo rằng không có tệp nhị phân nào sắp bị loại bỏ đang chạy:


thực thi / công cụ / bin / bash

thực thi / công cụ / bin / bash

Giờ đây, các tệp nhị phân và thư viện có thể được loại bỏ một cách an toàn:


/ tools / bin / find / usr / lib -type f -name \ *. a \

-exec / tools / bin / strip --strip-debug {} ';'


/ tools / bin / find / lib / usr / lib -type f \ (-name \ *. so * -a! -name \ * dbg \) \

-exec / tools / bin / strip --strip-unneeded {} ';'


/ tools / bin / find / {bin, sbin} / usr / {bin, sbin, libexec} -type f \

-exec / tools / bin / strip --strip-all {} ';'

/ tools / bin / find / usr / lib -type f -name \ *. a \

-exec / tools / bin / strip --strip-debug {} ';'


/ tools / bin / find / lib / usr / lib -type f \ (-name \ *. so * -a! -name \ * dbg \) \

-exec / tools / bin / strip --strip-unneeded {} ';'


/ tools / bin / find / {bin, sbin} / usr / {bin, sbin, libexec} -type f \

-exec / tools / bin / strip --strip-all {} ';'

Một số lượng lớn các tệp sẽ được báo cáo là không nhận dạng được định dạng tệp của chúng. Những cảnh báo này có thể được bỏ qua một cách an toàn. Những cảnh báo này chỉ ra rằng những tệp đó là tập lệnh thay vì mã nhị phân.


Điện toán đám mây hệ điều hành hàng đầu tại OnWorks: