OnWorks Linux ve Windows Çevrimiçi İş İstasyonları

Logo

İş İstasyonları için Çevrimiçi Ücretsiz Barındırma

<Önceki | İçerik | Sonraki>

6.79. Tekrar Soyunma

Bu bölüm isteğe bağlıdır. Hedef kullanıcı bir programcı değilse ve sistem yazılımında herhangi bir hata ayıklama yapmayı planlamıyorsa, ikili dosyalardan ve kitaplıklardan hata ayıklama sembolleri kaldırılarak sistem boyutu yaklaşık 90 MB küçültülebilir. Bu, yazılımın artık tam olarak hatalarını ayıklayamamaktan başka bir rahatsızlığa neden olmaz.

Aşağıda belirtilen komutları kullanan çoğu kişi herhangi bir zorluk yaşamamaktadır. Ancak, bir yazım hatası yapmak ve yeni sistemi kullanılamaz hale getirmek kolaydır, bu nedenle çalıştırmadan önce şerit komutları varsa, LFS sisteminin mevcut durumunda bir yedeğini almak iyi bir fikirdir.


Önce seçili kitaplıklar için hata ayıklama sembollerini ayrı dosyalara yerleştirin. Bu hata ayıklama bilgileri, daha sonra BLFS'de valgrind veya gdb kullanan regresyon testleri çalıştırılıyorsa gereklidir.


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

$save_lib içindeki LIB için; yapmak

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

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

yapılmış


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


$save_usrlib içindeki LIB için; yapmak

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

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

yapılmış


LIB save_lib ayarını kaldır save_usrlib

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

$save_lib içindeki LIB için; yapmak

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

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

yapılmış


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


$save_usrlib içindeki LIB için; yapmak

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

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

yapılmış


LIB save_lib ayarını kaldır save_usrlib

Sıyırma işlemini gerçekleştirmeden önce, soyulmak üzere olan ikili dosyaların hiçbirinin çalışmadığından emin olmak için özel dikkat gösterin:


yürütme /araçlar/bin/bash

yürütme /araçlar/bin/bash

Artık ikili dosyalar ve kitaplıklar güvenle çıkarılabilir:


/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-needed {} ';'


/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-needed {} ';'


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

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

Çok sayıda dosyanın dosya biçiminin tanınmadığı bildirilecektir. Bu uyarılar güvenle göz ardı edilebilir. Bu uyarılar, bu dosyaların ikili dosyalar yerine komut dosyaları olduğunu gösterir.


OnWorks'te En İyi OS Bulut Bilişimi: