Онлайн робочі станції OnWorks Linux та Windows

логотип

Безкоштовний онлайн-хостинг для робочих станцій

<Попередній | зміст | Наступна>

6.79. Знову роздягання

Цей розділ є необов’язковим. Якщо передбачуваний користувач не є програмістом і не планує виконувати будь-які налагодження системного програмного забезпечення, розмір системи можна зменшити приблизно на 90 МБ, видаливши символи налагодження з двійкових файлів і бібліотек. Це не створює ніяких незручностей, окрім того, що ви більше не зможете повністю налагоджувати програмне забезпечення.

Більшість людей, які використовують наведені нижче команди, не відчувають жодних труднощів. Однак легко зробити друкарську помилку і зробити нову систему непридатною, тому перед запуском роздягнутися команд, доцільно зробити резервну копію системи LFS в її поточному стані.


Спочатку розмістіть символи налагодження для вибраних бібліотек в окремі файли. Ця інформація про налагодження необхідна під час виконання регресійних тестів, які використовують valgrind або gdb пізніше в BLFS.


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

для LIB в $save_lib; робити

objcopy --only-keep-debug $LIB $LIB.dbg strip --strip-unneeded $LIB

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

зроблений


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


для LIB в $save_usrlib; робити

objcopy --only-keep-debug $LIB $LIB.dbg strip --strip-unneeded $LIB

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

зроблений


скасувати налаштування 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

для LIB в $save_lib; робити

objcopy --only-keep-debug $LIB $LIB.dbg strip --strip-unneeded $LIB

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

зроблений


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


для LIB в $save_usrlib; робити

objcopy --only-keep-debug $LIB $LIB.dbg strip --strip-unneeded $LIB

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

зроблений


скасувати налаштування LIB save_lib save_usrlib

Перш ніж виконувати видалення, подбайте про те, щоб жоден із двійкових файлів, які збираються видалити, не запущено:


exec /tools/bin/bash

exec /tools/bin/bash

Тепер двійкові файли та бібліотеки можна безпечно видалити:


/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} -тип 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} -тип f \

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

Повідомлятиметься про те, що формат файлів у великій кількості не розпізнається. Ці попередження можна безпечно ігнорувати. Ці попередження вказують на те, що ці файли є сценаріями, а не двійковими файлами.


Найпопулярніші хмарні обчислення ОС на OnWorks: