十二 30

linux下configure脚本配置参数

Linux环境下的软件安装,并不是一件容易的事情;如果通过源代码编译后再安装,当然事情就更为复杂一些;现在安装各种软件的教程都非常普遍;但万变不离其中,对基础知识的扎实掌握,安装各种软件的问题就迎刃而解了。Configure脚本配置工具就是基础之一,它是autoconf的工具的基本应用。

Continue reading

十二 30

Makefile.am和makefile.in生成Makefile

linux软件构建方法linux软件构建顺序程序构建方法

很多时候,我们在网上下载的linux开源软件都会遇到一个问题,就是源码里面没有直接的makefile,但是它有Makefile.ammakefile.in或者它有Makefile.amconfigure.in(或configure.ac)

具体操作步骤如下:

1. 执行aclocal,产生aclocal.m4文件

aclocal是一个perl 脚本程序,它的定义是:

aclocal根据configure.in文件的内容,自动生成aclocal.m4文件。而aclocal.m4文件中,包含了生成configure文件所必须的宏。 Continue reading

十二 28

Headless Chromium

无头Chromium允许在无头/服务器环境中运行Chromium。预期的用例包括使用Chromium和Blink提供的所有现代Web平台功能,加载网页,提取元数据(例如DOM)以及从页面内容生成位图。

有两种使用无头铬的方法:

通过DevTools远程调试协议使用

  1. 使用--headless命令行标志启动普通的Chrome二进制文件(目前仅适用于Linux):

当前,您还需要使用--disable-gpu以避免因缺少Mesa库而导致错误。

  1. http://localhost:9222在另一个浏览器中导航至以打开DevTools界面,或使用Selenium之类的工具来驱动无头浏览器。

Continue reading

十二 28

无头浏览器Chrome 入门

Chrome 59附带了无头Chrome。这是在无头环境中运行Chrome浏览器的一种方式。本质上,没有Chrome即可运行Chrome!它将Chromium和Blink渲染引擎提供的所有现代Web平台功能引入命令行。

为什么这样有用?

无头浏览器是自动化测试和不需要可见UI外壳的服务器环境的绝佳工具。例如,您可能想对真实的网页运行一些测试,为其创建PDF,或者仅检查浏览器如何呈现URL。

启动无头(CLI)

无头模式入门的最简单方法是从命令行打开Chrome二进制文件。如果您已安装Chrome 59+,请使用以下--headless标志启动Chrome :

十二 28

无头浏览器 PhantomJS

无头浏览器(Headless browser)指没有用户图形界面的(GUI)的浏览器,目前广泛运用于web爬虫和自动化测试中。随着反爬虫和反反爬虫对抗技术的升级,越来越多的爬虫开始使用无头浏览器伪装成正常用户绕过反爬虫策略。

我们如何区分这些无头浏览器和正常浏览器?从Server Side分析用户行为进行检测是一劳永逸的方法,但成本和难度都很大。

不过通过无头浏览器的一些特性。我们也可以从从Client Side找出一些不同来。下面以醉受欢迎的PhantomJS(2.x版本)为例,介绍一些识别的方法,对于其他的无头浏览器,如Slimer JS这些方法也可以参考

Continue reading

十二 22

Windows平台下的反汇编工具 IDA Pro

IDA Pro:Windows平台下的反汇编工具

常用的快捷键:(可参考IDA Pro Shortcuts)

快捷键 功能
空格 基础模式与图形模式切换,在代码段可用
n 重命名操作
a 转换为数组,即将选定的单个元素结合在一起
添加注释(常用)
x Cross-reference,交叉参考
d 改变解释数据的长度,可在db、dd、dw之间转换
u 取消当前自定义的结构
Ctrl + s 跳转至不同的段中
F1 使用指南
Shift+F12 显示字符串(常用)
Shift+F7 显示目标文件的各个section
Shift+F8 显示段寄存器信息
Shift+F4 显示所有的name
F5 查看伪代码(常用)

Continue reading

十一 21

Ubuntu/CentOS Docker使用阿里云镜像加速器

Ubuntu/CentOS Docker使用阿里云镜像加速器

查找服务的路径:阿里云后台 >> 搜索【窗口镜像服务】>> 镜像中心 >> 镜像加速器

1. 安装/升级Docker客户端

推荐安装1.10.0以上版本的Docker客户端,参考文档 docker-ce

2. 配置镜像加速器

针对Docker客户端版本大于 1.10.0 的用户

您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器

 

十一 19

docker常用命令

Docker Engine是一种开源容器化技术,用于构建和容器化您的应用程序。Docker Engine通过以下方式充当客户端-服务器应用程序:

  1. 具有长时间运行的守护进程的服务器dockerd。
  2. API,用于指定程序可以用来与Docker守护程序进行对话和指示的接口。
  3. 命令行界面(CLI)客户端docker。

CLI使用Docker API通过脚本或直接CLI命令控制或与Docker守护程序进行交互。许多其他Docker应用程序都使用基础API和CLI。守护程序创建和管理Docker对象,例如映像,容器,网络和卷。 Continue reading