linux 修改 elf 文件的dynamic linker 和 rpath https://nixos.org/patchelf.html 下载地址 https://nixos.org/releases/patchelf/patchelf-0.9/patchelf-0.9.tar.gz https://nixos.org/releases/patchelf/patchelf-0.9/patchelf-0.9.tar.bz2 PatchELF PatchELF is a small utilit…
Linux修改profile文件改错了,恢复的方法在改profile的时候,改出问题了,除了cd以外的命令基本都不能用了,连vi都不能用了,上网查了下,用export PATH=/usr/bin:/usr/sbin:/bin:/sbin:/usr/X11R6/bin,然后就可以用命令了,速度用vi把profile改回来,恢复正常.shell命令基本都在/usr/bin,/usr/sbin,/bin,/sbin,/usr/X11R6/bin中有定义.所以,只要把这些命令重新取出来就能使用了,也算是…
对比windowsPE文件与概述 在windows中可执行文件是pe文件格式,Linux中可执行文件是ELF文件,其文件格式是ELF文件格式,在Linux下的ELF文件除了可执行文件(Excutable File),可重定位目标文件(RellocatableObject File).共享目标文件(SharedObjectFile).核心转储文件(Core DumpFile)也都是ELF格式文件. 一个典型的ELF文件大致的结构如下 文件头(ELF Header) 程序头表(Program Hea…
1:查看命令:ll drwxr-xr-x  4 gamer ftp      4096 Mar  7 16:56 gstore drwxrwxrwx 10 root  ftp      4096 Dec 16 01:30 resin-doc   前面共10个字符,第一个字符如果是“-” 表示这是个文件, 如果是 “d” 表示的是文件夹,“l” 表示链接文件等等 后面9个字符分为3个字符一组共三组,分别表示user(文件所属用户) 的权限.group组用户的权限.other其它用户的权限. r表示…
linux 的机器修改hostname: 修改 /etc/hosts 修改 /etc/sysconfig/network 重启机器reboot…
从总体上讲 /etc/gnome/defaults.list 保存了全局的打开方式-/.local/share/applications/mimeapps.list 保存了个人的打开方式当这两个文件不一致时,优先采用局部的个人设置. 比如我想把打开各种文本默认的gedit程序修改为Atom,可以先grep全局的应用打开方式文件/etc/gnome/defaults.list #grep "gedit" /etc/gnome/defaults.list 结果如下:application/…
1.修改hostssudo gedit /etc/hosts2.添加解析记录( . )完整案例:127.0.0.1 localhost.localdomain localhost简洁记录:127.0.0.1 localhost3.保存后重启网络sudo /etc/init.d/networking restart…
readelf 命令,参数为-h 例如 文件名为python >>>readelf -h python 得到的是ELF Header中的项Magic 第五个数 02时为64位,01时为32位…
加载和动态链接 从编译/链接和运行的角度看,应用程序和库程序的连接有两种方式. 一种是固定的.静态的连接,就是把需要用到的库函数的目标代码(二进制)代码从程序库中抽取出来,链接进应用软件的目标映像中: 另一种是动态链接,是指库函数的代码并不进入应用软件的目标映像,应用软件在编译/链接阶段并不完成跟库函数的链接,而是把函数库的映像也交给用户,到启动应用软件目标映像运行时才把程序库的映像也装入用户空间(并加以定位),再完成应用软件与库函数的连接. 这样,就有了两种不同的ELF格式映像. 一种是静态链…
Linux下ELF文件类型分为以下几种: 1.可重定位文件,比如SimpleSection.o: 2.可运行文件,比如/bin/bash. 3.共享目标文件,比如/lib/libc.so. 在Linux 可重定位文件 ELF结构一文中,我们已经分析了可重定位文件ELF结构. 本文分析可运行文件的ELF结构. 首先附上源码: SectionMapping.c #include <stdlib.h> int main() { while(1) { sleep(1000); } return 0;…