Linux
文章平均质量分 54
zz_d
这个作者很懒,什么都没留下…
展开
-
关于MBR, Grub 的几个问题
<br />前两天我安装系统时,有过以下一系列步骤:<br />(1)重新分区<br />(2)安装RedFlag到第一分区<br />(3)安装XP,不小心将XP安装到C盘,即第一分区<br />(4)重启系统,进入RedFlag安装的grub引导的命令行<br />(5)重新格式化整块硬盘,再按先前一样分区<br />(6)安装XP到C盘<br />(7)重启系统,再次进入RedFlag安装的grub的命令行<br /> <br />网上很多朋友都说安装Windows时会覆盖MBR,但是根据我的记录显然原创 2011-05-17 22:55:00 · 1740 阅读 · 0 评论 -
backtrack 中使用 mail 命令发送邮件
我的 bt 版本为 Backtrack5 r3. 需要使用 mail 命令发送邮件到 QQ 邮箱. 原先安装 mailutils, 不显示错误, 但 QQ 邮箱也接受不到邮件. 此时 mail 命令不包含 -v 选项.卸载 mailutils, 安装 bsd-mailx $ apt-get remove mailutils $ apt-get install bsd原创 2013-01-31 15:56:38 · 810 阅读 · 0 评论 -
linux c 查找使用库的 cflags 和 libs
很多时候,使用一些特别的库, 在编译可执行程序时, 需要添加额外的 CFLAGS 和 LIBS . 否则会提示找不到指定的头文件或者"undefined reference to ..." 的错误信息.假如程序 test.c 中使用了 libxml 的 api, 直接$ gcc -Wall -o test test.c会提示错误消息. 执行$ ls /usr/lib/pkgconfi原创 2013-03-05 15:37:54 · 1621 阅读 · 0 评论 -
backtrack5 r3 中 "enable universe component"
1. 安装 software-center$ apt-get install software-center2. 然后For older versions of ubuntu, there are several options: Main Menu: System > Administration > Software Sources. Synaptic : Sy原创 2013-03-12 14:34:23 · 1294 阅读 · 0 评论 -
C 使用 Inotify 监控目录和文件
1. 监控路径并打印所有发生在该路径的事件. 代码如下:/***************************************************************************** * Copyright : All Rights Reserved. * * Date : 2013-03-01原创 2013-03-01 13:26:35 · 9500 阅读 · 0 评论 -
测试 inotify 中 IN_DELETE_SELF
// 这篇文章对 IN_DELETE_SELF的理解出错.前段时间写 inotify 相关的程序, 发现当时间为 IN_DELETE_SELF或 IN_MOVE_SELF 时 event 结构中 name 属性不能 printf.我觉得不应该, 今天特意写代码测试下.#include #include #include #include #define BUF_LEN 1原创 2012-09-05 21:56:03 · 3248 阅读 · 0 评论 -
Linux C 获取进程的退出值
如以下代码所示:/***************************************************************************** * Copyright : All Rights Reserved. * * Date : 2013-03-14 15:11:48 * Author/Corpor原创 2013-03-14 15:13:19 · 1606 阅读 · 0 评论 -
fork 导致的内存泄露
今天找到一个困扰一段时间的内存泄露问题的原因.调用 fork() 后, 拷贝了原进程的内存, 却并没有继承原进程释放内存的线程.原创 2013-03-25 17:00:54 · 1262 阅读 · 0 评论 -
gdb-- help all, 方便 Ctrl + F
Command class: aliasesni -- Step one instructionrc -- Continue program being debugged but run it in reverserni -- Step backward one instructionrsi -- Step backward exactly one instructionsi -- S原创 2013-04-10 11:36:42 · 2156 阅读 · 0 评论 -
使用 cwRsync 从 win 同步代码到 Linux
需要在 win 下编写代码, 在 Linux 上进行调试. 采用 rsync 来进行同步. 以下为部署过程.win1. 下载和安装 cwRsycServer , 安装目录为 Dir .2. 修改 Dir 下的 rsyncd.conf 为uid = 0gid = 0use chroot = falsestrict modes = falsehosts allow = *原创 2013-04-17 11:03:18 · 841 阅读 · 0 评论 -
no module named pycurl
<!--body, td {font-family:Trebuchet MS; font-size:11pt}-->no module named pycurl在 linux 上安装 pycurl.$ locate curl-config/usr/bin/curl-config/usr/share/man/man1/curl-config原创 2013-07-12 14:49:53 · 4755 阅读 · 0 评论 -
企业Unix Shell行为审计系统——基于Enterprise Audit Shell(EAS)的二次开发
<!--body, td {font-family:Tahoma; font-size:10pt}-->了解 EAS, 可以先参考下 企业Unix Shell行为审计系统——Enterprise Audit Shell(EAS) 和 用eash实现linux的shell审计 .因公司需要, 我曾经基于 EAS 做过二次开发, 实现的一些增强有:原创 2013-07-14 22:53:49 · 2390 阅读 · 1 评论 -
Ubuntu 12.04 server 安装后可能需要更新 apt 源
用 iso 文件装了个 ubuntu 12.04 server 后, 发现使用 "sudo apt-get install xxx" 程序时, 总是提示"Media change: please insert the disc labeled... cdrom ..." 错误信息. 此时, 虽然可以用 "sudo mount /...ubuntu-12.04.2-server-i386.iso /原创 2013-07-16 13:00:11 · 5666 阅读 · 0 评论 -
eas 中由 ssl.c 文件中 SSL_close_all 引发的 bug
<!--body, td {font-family:Tahoma; font-size:10pt}-->SSL_close_all 函数的源码如下:voidSSL_close_all(SSL*ssl,SSL_CTX*ctx,intclient_fd){s_log(eDEBUG1,"calling s原创 2013-07-03 19:40:39 · 1173 阅读 · 0 评论 -
Struts S2-016 远程任意命令执行漏洞检测代码
前两天泛滥了Struts 的漏洞利用工具, 可参考 S2-016 和 Struts2再爆远程代码执行漏洞 , 当时写了一个很简单的 python 程序用来检测 url 是否存在此漏洞.#!/usr/bin/env python#coding=utf-8'''author: zz_ddate: 2013-07-17'''import sysimport urllibimport原创 2013-07-19 16:02:30 · 3936 阅读 · 1 评论 -
订阅"新闻联播"文字标题到邮箱
偶尔还是想关注下崇高的"新闻联播"在说什么, 便用 shell 写了个抓取文字标题发送到邮箱的脚本. 如下:#!/bin/sh#author: dengzhaoqun#date: 2013-01-29tmp_file="/tmp/tmp_xm_update_xwlb"tmp_mail="/tmp/tmp_xm_update_xwlb_mail"url="http://cctv.原创 2013-01-31 16:08:38 · 3553 阅读 · 0 评论 -
C 实现 HUP 信号重启进程
/***************************************************************************** * Copyright : All Rights Reserved. * * Date : 2013-01-11 17:02:10 * Author/Corporation :原创 2013-01-11 16:55:46 · 968 阅读 · 0 评论 -
bochs--can not connect to X server 问题
<br />用bochs虚拟机启动时,显示" Can not connect to X server". <br /> <br />解决方法: 输入 startx ,进入图形界面即可.<br />原创 2011-04-17 15:36:00 · 1738 阅读 · 1 评论 -
Nginx 中 ngx_queue中的一点理解
ngx_queue的定义 typedef struct ngx_queue_s ngx_queue_t;struct ngx_queue_s { ngx_queue_t *prev; ngx_queue_t *next;}; 在Wiki的"Nginx代码研究"中看到ngx_queue 的如下用法,刚开始颇有点不解, typedef原创 2011-06-14 21:45:00 · 925 阅读 · 0 评论 -
Ubuntu, RedFlag , XP 三系统安装
前两天将自己的电脑装了三个系统,在此记录一下。1,条件: 有 XP 和 RedFlag 的 CD 安装盘。因为 Ubuntu 11.04 将近700M,自己用一个CD刻录不下,笔记本光驱又不支持DVD。BIOS 不支持 USB 启动,我选择从 ubuntu 的 ISO 文件安装它原创 2011-05-17 22:16:00 · 660 阅读 · 0 评论 -
ubuntu 中 pstree 显示的进程 解释
对Linux系统正在运行的进程有些疑惑, 便用pstree命令查看。 然后在网上查找资料, 对部分进程做出一些浅解。如下:init-+-NetworkManager-+-dhclient // network management daemon. It attemps原创 2011-08-16 17:08:56 · 3655 阅读 · 1 评论 -
ubuntu中ssh, git公私钥问题
今天使用git, 在windows上一切正常, 但在Ubuntu上安装好git后,出现如下问题:sudo ssh -T git@github.com 提示 Permission denied (publickey).sudo git clone git@github.com:xiaomu/xmscs.git提示:Permission denied (publickey).原创 2012-02-15 19:13:47 · 2512 阅读 · 0 评论 -
Cygwin 中 调用 Win 命令不能正确执行解决方法
在 cygwin 中执行 "wmic bios get serialnumber", 程序没有反应.用 "wmic bios get serialnumber 原因想来是系统方面的了, 有时间研究下.原创 2012-03-23 19:08:06 · 1497 阅读 · 0 评论 -
读取 system serial number
公司的服务器有 Win 和 Linux 的, Linux 上读取 system serial number可以用 "dmidecode -s system-serial-number" 读取, win 上应该用"wmic bios get serialnumber" 读取.在我个人的 XP 上, 执行 "wmic bios get serialnumber" ,输出的是原创 2012-03-22 20:12:15 · 5497 阅读 · 0 评论 -
tftp详细日志查看
1. 在/var/log/messages 中, 有 tftp相关的日志, 可用 "cat messages | grep tftp" 查看, 但信息很简要;2. 编辑 /etc/xinetd.d/tftp, 给 "server_args" 添加 " -v "选项;3. 重启 xinetd, "service xinetd restart";4. 此时 /var/log/message原创 2012-07-16 17:13:57 · 8557 阅读 · 0 评论 -
linux c 获取本机所有IP
经常需要获取本机的ip地址, 通常的 gethostname和gethostbyname 经常只返回 "127.0.0.1", 这里提供一个返回 "ip1, ip2, ..." 格式的接口.#include #include #include #include #include #include #include #include #include char *ge原创 2012-08-20 13:28:40 · 5360 阅读 · 0 评论 -
测试是否可以 waitpid 子进程的子进程
虽然 " man waitpid" 里写明作用的对象是子进程, 我还是测试下是否可以 waitpid 子进程的子进程.以下为测试代码, 其中用一块 sizeof(int) 大小的共享内存传递子进程的子进程 pid.#include #include #include #include #include #include #include int main(int argc,原创 2012-09-01 16:08:31 · 984 阅读 · 0 评论 -
c 中使用 ftruncate() 前需要 fflush(), 使用后需要 rewind()
今天用 ftruncate 截断文件, 但怎么都不能达到预料的效果, 截断后文件中的内容比较杂, 而且文件大小也保持原来的.添加 fflush() 和 rewind() 后OK.以下是测试代码:#include #include #include int main(){ FILE *fp; char *file = "tmp"; int i; int fd;原创 2012-09-10 11:35:35 · 6556 阅读 · 1 评论 -
inotify 中, 在 read 其 struct inotify_event 时, 缓冲区必须大于读取的结构体的大小
linux中监控文件的 inotify 提供了以下几个编程函数, inotify_init(), inotify_add_watch(), inotify_rm_watch(). 从 inotify_init() 返回的文件描述符 read, 读取监听到的事件. 事件的结构为: struct inotify_event { int wd;原创 2012-09-14 16:07:50 · 5464 阅读 · 0 评论 -
c 中 stdout, stderr 容易忽视的一些细节
先看下面一个例子a.c :int main(int argc, char *argv[]){ fprintf(stdout, "normal\n"); fprintf(stderr, "bad\n"); return 0;}$ ./anormalbad$ ./a > tmp 2>&1$ cat tmpbadtmp我们看到, 重定向到一个文件原创 2012-11-02 15:54:10 · 950 阅读 · 0 评论 -
select, semop 等阻塞的系统调用返回值的检查
最近工作实现一个 7 * 24 小时的服务程序, 经常出现 "semop: Interrupted system call", "select failed: Interrupted system call". 经查是因为在 select, semop 的返回值为 -1 时没有对 errno 进行检查.如果 "errno == EINTR", 则应该 continue.这篇文章说得很原创 2012-12-28 16:16:27 · 1821 阅读 · 0 评论 -
libvpx 库的依赖解决
在 RedHat Server 6.3 上使用 yum 安装程序, 遇到下面的问题Error: Package: gstreamer-plugins-bad-free-0.10.19-2.el6.x86_64 (base) Requires: libvpx.so.0()(64bit) Available: libvpx-0.9.0-8.el6_0.x86原创 2013-11-21 16:16:15 · 6723 阅读 · 0 评论