차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
linuxfromscratch:12.1:152-stripping [2024/06/15 12:44] – [8.82. 스트리핑] baecylinuxfromscratch:12.1:152-stripping [2024/06/18 04:01] (현재) – [8.82. 스트립] baecy
줄 3: 줄 3:
 |[[.:151-about_debugging_symbols|이전]]  |  [[.:08-installing_basic_system_software|위로]] / [[.:12.1|처음으로]]  |  [[.:153-cleaning_up|다음]]| |[[.:151-about_debugging_symbols|이전]]  |  [[.:08-installing_basic_system_software|위로]] / [[.:12.1|처음으로]]  |  [[.:153-cleaning_up|다음]]|
  
-|About Debugging Symbols  |  Cleaning Up|+|디버깅 심볼  |  정리|
  
 ---- ----
  
-===== 8.82. 스트리핑 =====+===== 8.82. 스트립 =====
  
 이 장의 내용은 선택적인 사항입니다. 사용자가 프로그래머가 아니고 시스템 소프트웨어의 디버깅을 수행할 계획이 없는 경우 바이너리와 라이브러리에서 디버깅 심볼과 일부 불필요한 심볼 테이블 항목을 제거하여 시스템 크기를 약 2GB 줄일 수 있습니다. 이는 일반적인 Linux 사용자에게는 큰 불편을 초래하지 않습니다. 이 장의 내용은 선택적인 사항입니다. 사용자가 프로그래머가 아니고 시스템 소프트웨어의 디버깅을 수행할 계획이 없는 경우 바이너리와 라이브러리에서 디버깅 심볼과 일부 불필요한 심볼 테이블 항목을 제거하여 시스템 크기를 약 2GB 줄일 수 있습니다. 이는 일반적인 Linux 사용자에게는 큰 불편을 초래하지 않습니다.
  
-아래에 언급된 명령을 사용하는 대부분의 사람들은 어려움을 겪지 않습니다. 그러나 실수로 인해 새 시스템을 사용할 수 없게 만드는 것은 쉽습니다. 따라서 ''strip'' 명령을 실행하기 전에 현재 상태의 LFS 시스템을 백업하는 것이 좋습니다.+아래에 언급된 명령을 사용하는 대부분의 사람들은 어려움을 겪지 않습니다. 그러나 실수로 인해 새 시스템을 사용할 수 없게 만드는 것은 쉽습니다. 따라서 **strip** 명령을 실행하기 전에 현재 상태의 LFS 시스템을 백업하는 것이 좋습니다.
  
 **strip** 명령은 //--strip-uneeded// 옵션을 사용하여 바이너리 또는 라이브러리에서 모든 디버그 심볼을 제거합니다. 또한 링커(정적 라이브러리의 경우) 또는 동적 링커(동적으로 링크된 바이너리 및 공유 라이브러리의 경우)에 필요하지 않은 모든 심볼 테이블 항목도 제거합니다. **strip** 명령은 //--strip-uneeded// 옵션을 사용하여 바이너리 또는 라이브러리에서 모든 디버그 심볼을 제거합니다. 또한 링커(정적 라이브러리의 경우) 또는 동적 링커(동적으로 링크된 바이너리 및 공유 라이브러리의 경우)에 필요하지 않은 모든 심볼 테이블 항목도 제거합니다.
줄 17: 줄 17:
 선택한 라이브러리의 디버깅 심볼은 Zlib로 압축되어 별도의 파일에 보존됩니다. 이 디버깅 정보는 나중에 BLFS에서 [[beyondlinuxfromscratch:installedpackages:valgrind]] 또는 [[beyondlinuxfromscratch:installedpackages:gdb]]로 회귀 테스트를 실행하는 데 필요합니다. 선택한 라이브러리의 디버깅 심볼은 Zlib로 압축되어 별도의 파일에 보존됩니다. 이 디버깅 정보는 나중에 BLFS에서 [[beyondlinuxfromscratch:installedpackages:valgrind]] 또는 [[beyondlinuxfromscratch:installedpackages:gdb]]로 회귀 테스트를 실행하는 데 필요합니다.
  
-**strip**은 처리 중인 바이너리 또는 라이브러리 파일을 덮어쓴다는 점에 유의하세요. 이로 인해 파일의 코드나 데이터를 사용하는 프로세스가 충돌할 수 있습니다. 스트립을 실행 중인 프로세스가 영향을 받으면 스트립되는 바이너리 또는 라이브러리가 파괴되어 시스템을 완전히 사용할 수 없게 될 수 있습니다. 이 문제를 방지하려면 일부 라이브러리와 바이너리를 /tmp로 복사하여 스트립한 다음 설치 명령으로 다시 설치합니다. ([[.:072-package_management#8.2.1. 업그레이드 문제|8.2.1절 "업그레이드 문제"]]의 관련 항목에서 설치 명령을 사용하는 근거를 확인할 수 있습니다.)+**strip**은 처리 중인 바이너리 또는 라이브러리 파일을 덮어쓴다는 점에 유의하세요. 이로 인해 파일의 코드나 데이터를 사용하는 프로세스가 충돌할 수 있습니다. 스트립을 실행 중인 프로세스가 영향을 받으면 스트립되는 바이너리 또는 라이브러리가 파괴되어 시스템을 완전히 사용할 수 없게 될 수 있습니다. 이 문제를 방지하려면 일부 라이브러리와 바이너리를 /tmp로 복사하여 스트립한 다음 **install** 명령으로 다시 설치합니다. ([[.:072-package_management#8.2.1. 업그레이드 문제|8.2.1절 "업그레이드 문제"]]의 관련 항목에서 **install** 명령을 사용하는 근거를 확인할 수 있습니다.)
  
 <WRAP info center round 90%> <WRAP info center round 90%>
  • linuxfromscratch/12.1/152-stripping.1718455445.txt.gz
  • 마지막으로 수정됨: 2024/06/15 12:44
  • 저자 baecy