标签: strip

Unix 中剥离和未剥离的可执行文件是什么?

man 文件

EXAMPLES
   $ file file.c file /dev/{wd0a,hda}
   file.c:   C program text
   file:     ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV),
             dynamically linked (uses shared libs), stripped
   /dev/wd0a: block special (0/0)
   /dev/hda: block special (3/0)
   $ file -s /dev/wd0{b,d}
   /dev/wd0b: data
   /dev/wd0d: x86 boot sector
   $ file -s /dev/hda{,1,2,3,4,5,6,7,8,9,10}
   /dev/hda:   x86 boot sector
   /dev/hda1:  Linux/i386 ext2 filesystem
   /dev/hda2:  x86 boot sector
   /dev/hda3:  x86 boot sector, extended partition table
   /dev/hda4:  Linux/i386 ext2 filesystem
   /dev/hda5:  Linux/i386 swap file
   /dev/hda6: …
Run Code Online (Sandbox Code Playgroud)

strip executable linker

47
推荐指数
1
解决办法
6万
查看次数

如何剥离 Linux 系统?

我一直在构建一个 Linux 发行版,并且我已经剥离了二进制文件等。该系统不会使用 GCC 或开发工具,因为它将是一个 Chrome kiosk,所以如果我可以剥离系统,将会有很大帮助...

我想知道,有没有办法通过观察运行时使用的文件/库来删除所有未使用的系统文件(如二进制文件等)?也许另一种方法是首选,但有没有办法完成这样的事情?

linux strip disk-usage small-distribution kiosk

24
推荐指数
3
解决办法
2710
查看次数

为什么`strip`不从ELF可执行文件中删除节头?

一个最小的 ELF 可执行文件只需要 ELF 头和至少一个程序头才能起作用。但是,当我在一个简短的可执行文件上运行 strip 时,它决定不丢弃节头表或节字符串节,尽管它们对程序的执行没有任何目的(据我所知),但仍保留它们。

有没有理由不通过条带去除这些?是否有另一个实用程序可以删除可执行文件运行不需要的所有内容?我已经尝试手动编辑我正在制作的代码高尔夫可执行文件以删除部分标题,它似乎工作正常,并且要小得多。

strip executable elf

10
推荐指数
1
解决办法
5301
查看次数

内核模块可以使用多少 strip(1)-ing?

我经常为 Slackware Linux 创建包,这个过程的一部分是剥离二进制文件,以便它们占用更少的空间。我发现如果我strip --strip-all(或strip没有选项)内核模块,它们通常无法插入:

致命:插入 cloop 时出错 (/lib/modules/2.6.38.7-smp/kernel/fs/cloop/cloop.ko):模块格式无效

内核模块推荐什么级别的剥离?如果我使用--strip-debug,我是否会删除会对系统性能和/或错误记录产生负面影响的调试符号?

strip kernel-modules

9
推荐指数
1
解决办法
1万
查看次数

在所有文件上运行 strip 会有什么危害?

我正在尝试减少运行 SuSE 的 Linux 映像,并考虑strip在所有系统的可执行文件上运行。即使我可能不会通过这种方式重新获得很多磁盘空间,这样做会有什么危害吗?

linux suse strip elf

8
推荐指数
2
解决办法
2274
查看次数

剥离目录路径以获取文件名

我正在做的是用 LAME 转换 mp3。我已经有一个我写的旧脚本可以工作,但我想向它添加这个功能——不再删除文件,而是将它保存在一个新的根文件夹中,子目录与使用它已经存在的路径相匹配在。

这是我从 Internet 上获取的代码,我在脚本中使用它来获取路径:

 c=$FILENAME
 xpath=${c%/*} 
 xbase=${c##*/}
 xfext=${xbase##*.}
 xpref=${xbase%.*}
 path=${xpath}
 pref=${xpref}
 ext=${xfext}
Run Code Online (Sandbox Code Playgroud)

xpathpath给我的目录结构/home/user/working-root-directory/band-folder/album-name/

使用该技术,我如何编写脚本以将乐队文件夹放入单独的变量并将专辑文件夹放入单独的变量中?

然后我可以使用它们创建新文件夹,将所有 mp3 按乐队专辑顺序保存到不同的根文件夹中;这将使我不必自己移动它们,所以下次我运行我的脚本时,我不会再次对它们重新采样,因为它们将不再位于工作目录路径/文件夹中,并且仍然有我的文件的备份副本如果。

strip shell-script file-descriptors filenames

6
推荐指数
1
解决办法
2万
查看次数

剥离符号后的核心文件

我正在使用 g++ 4.3 构建一个应用程序。我正在使用最大可能的优化级别,而不是使用该-g选项,并且我在构建后剥离符号。

如果我不从我的应用程序和库中删除符号,核心文件仍然有用吗?(当应用程序崩溃时生成它们。)

如果我以最大可能的优化方式编译应用程序,核心文件会有用吗?(没有-g选项,也没有剥离符号。)

gcc strip core-dump

2
推荐指数
1
解决办法
5406
查看次数