发布时间:2013-01-10 15:08:14
关于这个删除文件再恢复的问题网上有很多这方面的资料,也有很多工具和方法,本文将以Linux下的ext2文件系统为例介绍文件恢复和销毁背后的原理。我们知道,windows下删除文件可以从回收站恢复,其实即使清空了回收站,被删除的文件和数据还是能够恢复的,windows下有一些专业的恢复数据的工具,比如easyrecovery等。Linux下也是如此,我们用rm命令删除了某个文件也是可以恢复的,即使加了参数-f,可以用debugfs 设备名;logdump等命令恢复被删除的文件,个人觉得不是很好用,而且成功率不高,不过本文的重点在于阐述文件恢复背后的深层原理。文件和数据都是存放在文件系统中的,每个......【阅读全文】
发布时间:2012-12-21 16:55:13
运维需要对一些关键的服务进程进行守护,例如tomcat进程,mysql之类,这种进程没有自己的守护进程,而我们又不可能去改它们的源代码。 为此我用perl写了一个守护进程,根据传入的命令,启动要守护的进程,若是进程挂了,则重新启动进程。 即使子进程被杀死了,也能自动起来,但是程序有点缺陷: 1. 这个守护进程只是针对那些永远不退出的进程有效。 2. 若是杀死了守护进程,被守护的进程有可能不会退出,还要手动去杀死被守护进程,才能退出。因为我们找到杀死整个进......【阅读全文】
发布时间:2012-12-21 16:49:14
本文介绍如何用perl生成excel,而且excel的样式可以自己事先设计好,不需要在windows下生成。 1.创建一个模板excel 新建一个test.xls文件,打开 自己设计样式如下: 2.把test.xls另存为xml表格 test.xml 3.用文本编辑器打开test.xml,我要介绍要用代码操作的地方 4.代码操作完后的结果,注意生成完后的文件的后缀必须改为.xls,这样就可以用excel直接打开了,只要有了模板excel之后,就可以在linux下把文件生成了。 5.代码,下面的代码使用时,注意:若是不是在web下使用......【阅读全文】
发布时间:2012-12-13 14:33:48
上一篇(linux下so动态库一些不为人知的秘密(上))介绍了linux下so一些依赖问题,本篇将介绍linux的so路径搜索问题。 我们知道linux链接so有两种途径:显示和隐式。所谓显示就是程序主动调用dlopen打开相关so;这里需要补充的是,如果使用显示链接,上篇文章讨论的那些问题都不存在。首先,dlopen的so使用ldd是查看不到的。其次,使用dlopen打开的so并不是在进程启动时候加载映射的,而是当进程运行到调用dlopen代码地方才加载该so,也就是说,如果每个进程显示链接a.so;但是如果发布该程序时候忘记附带......【阅读全文】
发布时间:2012-12-13 11:28:28
linux 下有动态库和静态库,动态库以.so为扩展名,静态库以.a为扩展名。二者都使用广泛。本文主要讲动态库方面知识。 基本上每一个linux 程序都至少会有一个动态库,查看某个程序使用了那些动态库,使用ldd命令查看 # ldd /bin/lslinux-vdso.so.1 => (0x00007fff597ff000)libselinux.so.1 => /lib64/libselinux.so.1 (0x00000036c2e00000)librt.so.1 => /lib64/l......【阅读全文】