Linux 10字符串命令病毒的处理记录

发表时间:2015-10-28     分类:Linux    标签: linux 病毒 

刚上线的测试服务器不停的向外发包,且CPU持续100%,远程登录后查看发现有一长度为10的随机字符串进程,kill掉,会重新生成另外长度为10的字符串进程。删除文件也会重复生成,非常痛苦。查阅crond相关日志,发现实际执行的内容为/lib/libudev.so ,以此为关键字进行查询,找到如下内容:1,網路流量暴增,使用 top 觀察有至少一個 10 個隨機字母組成的程序執行,佔用大量 CPU 使用率。刪除這些程序,馬上又產生新的程序。2,檢查 /etc/crontab 每三分鐘執行 gcc.sh*/3 * * * * root /etc/cron.hourly/gcc.sh3,查看病毒程式 gcc.sh,可以看到病毒本體是 /lib/libudev.so。cat /etc/cron.hourly/gcc.sh #!/bin/sh PATH=/bin:/sbin:/usr/bin:/......

阅读全文»

MAC平台下编译Ngnix或Tengine ,由于MD5算法不能编译通过 解决办法

发表时间:2015-08-18     分类:Linux    标签: nginx tengine 

在mac电脑,编译Tengine时,遇到了MD5算法编译的问题src/core/ngx_crypt.c:82:5: error: 'MD5_Init'is deprecated: first deprecated in OS X 10.7 [-Werror,-Wdeprecated-declarations] ngx_md5_init(&md5); ^src/core/ngx_md5.h:30:25: note: expanded from macro 'ngx_md5_init'#define ngx_md5_init MD5_Init ^ /usr/include/openssl/md5.h:113:5: note: 'MD5_Init' declared hereint MD5_Init(MD5_......

阅读全文»

rsync+inotify实现文件实时同步

发表时间:2015-03-12     分类:Linux    标签: rsync inotify 

把之前做的文件同步,做记录写到博客记录下。至于什么是rsync,inotify。这里不再详说。源机:192.168.72.129 (web1)备份机:192.168.72.130 (web2)同步方向: web1--->web2由于inotify特性需要Linux内核的支持,在安装inotify-tools前要先确认Linux系统内核是否达到了 2.6.13以上,如果Linux内核低于2.6.13版本,就需要重新编译内核加入inotify的支持,也可以用如下方法判断,内核是否支持 inotify(服务器系统为Centos5.5 x86_64):uname -r2.6.18-194.el5ls -lsart /proc/sys/fs/inotify/源机,备份机 都需要安装 rsync.**************************************************......

阅读全文»

文件服务器NFS配置

发表时间:2015-02-24     分类:Linux    标签: nfs 文件服务器 

在Linux下部署小型文件服务器往往采用这么一个架构方式:一台文件服务器+多台web服务器,文件服务器提供目录被web服务器同时访问和写入,可以采用apache,web服务器可以采用tomcat之类的,采用的是NFS网络文件系统共享方式。这里应红红(^_^)要求写出具体操作过程。环境:IP                主机名称    用途192.168.56.151    rhel151     文件服务器192.168.56.152    rhel152     web服务器0. 首先当然是部署配置文件服务器。检查是否安装相关的软件包:[root@rhel151 ~]# rpm -qa | grep nfss......

阅读全文»

linux chkconfig详解

发表时间:2014-08-29     分类:Linux    标签: linux chkconfig 

chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息。谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接。使用语法:chkconfig [--add][--del][--list][系统服务] 或 chkconfig [--level <等级代号>][系统服务][on/off/reset]chkconfig在没有参数运行时,显示用法。如果加上服务名,那么就检查这个服务是否在当前运行级启动。如果是,返回true,否则返回false。如果在服务名后面指定了on,off或者reset,那么chkconfi 会改变指定服务的启动信息。on和off分别指服务被启动和停止,reset指重置服务的启动信息,无论有问题的初始化脚本指定了什么。on和off开关,系统默认只对运行级3,4,5有效,但是reset可以对所有运行级有效。参数用法: &......

阅读全文»

haproxy session共享

发表时间:2014-08-26     分类:Linux    标签: haproxy session 

由于是负载均衡,每次请求分发到的服务器就有可能是不同的。这个时候,session不同步的问题出现了。就有需要同步的需求。下面就说明下haproxy同步session的三种方式1 用户IP 识别 haroxy 将用户IP经过hash计算后 指定到固定的真实服务器上(类似于nginx 的IP hash 指令)配置指令balance source2 cookie 识别  haproxy 将WEB服务端发送给客户端的cookie中插入(或添加加前缀)haproxy定义的后端的服务器COOKIE ID。配置指令例举cookie SESSION_COOKIE insert indirect nocache用firebug可以观察到用户的请求头的cookie里 有类似" Cookie jsessionid=0bc588656ca05ecf7588c65f9be214f5; SES......

阅读全文»

haproxy负载均衡器的安装与使用步骤

发表时间:2014-08-26     分类:Linux    标签: haproxy 负载均衡 

    HAProxy提供高可用性、负载均衡以及基于TCP和HTTP应用的代 理,支持虚拟主机,它是免费、快速并且可靠的一种解决方案。     其它详细介绍 ,就不在这里介绍了。常用负载均衡器有Lvs,nginx,haproxy,至于它们的优缺点,可以谷歌下。     1,安装     可以从官方下载 http://www.haproxy.org/#down  tar zcvf haproxy-1.5.3.tar.gz cd haproxy-1.5.3 make TARGET=linux26 PREFIX=/usr/local/hapro......

阅读全文»

indexer: error while loading shared libraries: libmysqlclient.so.18

发表时间:2014-05-15     分类:Linux    标签: sphinx libmysqlclient 

/usr/local/sphinx/bin/indexer:error while loading shared libraries:libmysqlclient.so.18 cannot opent shared object file: No such file or directory 这主要是因为你安装库后,没有配置相应的环境变量.可以通过连接修正这个问题 ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18对于64bit Linux,命令为:ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib64/libmysqlclient.so.18重试,OK......

阅读全文»

tar C参数 打包路径

发表时间:2014-05-08     分类:Linux    标签: linux tar 

压缩:tar czvf /data/backup/test.tar.gz /data/a/b/directory解压: cd /data/test tar xzvf /data/backup/test.tar.gz问题是,解压后的文件,在/data/test/data/a/b/directory里面要想解压在当前目录路径。这样写就可以解决了 tar czvf /data/backup/test.tar.gz /data/a/b/directory改成 tar czvf /data/backup/test.tar.gz -C /data/a/b directory-C是临时切换工作目录,-P是绝对路径,在这里只用到-C参数就行了 ......

阅读全文»

php源码编译添加常用扩展

发表时间:2014-03-12     分类:Linux    标签: linux php 

php源码编译添加常用扩展./configure  --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-openssl --enable-fpm --enable-sockets --enable-sysvshm --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring --with-freetype-dir --with-jpeg-dir=/usr/local/jpeg --with-png-dir --with-zlib-dir --with-mysqli  --with-gd --enable-pdo --enable-bcmath --with-libxml-dir=/usr --enable-xml --with-co......

阅读全文»

CentOs6.3源码安装Mysql5.6.14

发表时间:2014-03-12     分类:Linux    标签: mysql linux 

CentOS 6.4下通过yum安装的MySQL是5.1版的,比较老,所以就想通过源代码安装高版本的5.6.14。正文:一:卸载旧版本使用下面的命令检查是否安装有MySQL Serverrpm -qa | grep mysql有的话通过下面的命令来卸载掉rpm -e mysql //普通删除模式 rpm -e --nodeps mysql // 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除二:安装MySQL安装编译代码需要的包yum -y install make gcc-c++ cmake bison-devel ncurses-devel下载MySQL 5.6.14wget http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.14.tar.gz tar xvf mysql-5......

阅读全文»

mac 安装nginx make [objs/src/core/ngx_crypt.o] Error 1解决方法

发表时间:2014-03-06     分类:Linux    标签: linux nginx 

在自己macbook上安装nginx时,不过make的时候却得到了下面错误信息:make[1]: *** [objs/src/core/ngx_crypt.o] Error 1cc1: warnings being treated as errorssrc/core/ngx_crypt.c: In function ‘ngx_crypt_apr1’:src/core/ngx_crypt.c:76: warning: ‘MD5_Init’ is deprecated (declared at /usr/include/openssl/md5.h:113)src/core/ngx_crypt.c:77: warning: ‘MD5_Update’ is deprecated (declared at /usr/include/openssl/md5.h:114)src/core/ngx_cry......

阅读全文»

Redis主从服务器安装与配置

发表时间:2013-12-18     分类:Linux    标签: redis 

Redis的介绍数据库主要类型有对象数据库,关系数据库,键值数据库等等,对象数据库太超前了,现阶段不提也罢;关系数据库就是平常说的MySQL,PostgreSQL这些熟的不能再熟的东西,至于键值数据库则是本文要着重说的,其代表主要有MemcacheDB,Tokyo Cabinet等等。Redis本质上也是一种键值数据库的,但它在保持键值数据库简单快捷特点的同时,又吸收了部分关系数据库的优点。从而使它的位置处于关系数据库和键值数据库之间。Redis不仅能保存Strings类型的数据,还能保存Lists类型(有序)和Sets类型(无序)的数据,而且还能完成排序(SORT)等高级功能,在实现INCR,SETNX等功能的时候,保证了其操作的原子性,除此以外,还支持主从复制等功能。详细描述参见官方手册,同时,官方提供了一个名为Retwis的项目的源代码,可以对照着官方介绍学习,注意其中关于Data ......

阅读全文»

避免SSH连接因超时、闲置、过期断开

发表时间:2013-11-28     分类:Linux    标签: ssh超时 ssh 

用SSH过程连接电脑时,经常遇到长时间不操作而被服务器踢出的情况,常见的提示如:Write failed: Broken pipe这是因为如果有一段时间在SSH连接上无数据传输,连接就会断开。解决此问题有两种方法方案一:在客户端设置方法很简单,只需在客户端电脑上编辑(需要root权限)/etc/ssh/ssh_config,并添加如下一行:ServerAliveInterval 60此后该系统里的用户连接SSH时,每60秒会发一个KeepAlive请求,避免被踢。方案二:在服务器端设置如果有相应的权限,也可以在服务器端设置,即编辑/etc/ssh/sshd_config,并添加:ClientAliveInterval 60重启SSH服务器后该项设置会生效。每一个连接到此服务器上的客户端都会受其影响。应注意启用该功能后,安全性会有一定下降......

阅读全文»

git gitignore 过滤规则

发表时间:2013-04-13     分类:Linux    标签: git gitignore 

在使用git的过程中,总有一些我们不想被跟踪的文件,例如vim的交换文件,编译产生的文件等等。这时,我们可以在项目的根目录下创建一个名为 .gitignore 的文件,列出不想被跟踪的文件模式即可。下面是一个 .gitignore 文件的例子:1*.[oa]2*~3*.swp4*.bak5*.DS_Store6logs/*第一行告诉git忽略以 .a 或 .o 结尾的文件,第二、三、四、五行告诉git忽略以~、swp、bak、DS_Store结尾的文件, 第六行告诉git忽略logs目录下的所有文件。具体的 .gitignore 文件格式规范如下:所有空行或已#开头的行都会被git忽略(即相当于不读取)。可以使用标准的 glob 模式匹配。匹配模式最后跟反斜杠(/)说明要忽略的是目录。要忽略指定模式以外的文件或目录,可以在模式前加上惊叹号(!)取反(即保守模式)。所谓的 glob 模式是指......

阅读全文»

git 解决冲突方法

发表时间:2013-01-25     分类:Linux    标签: git 

当共享一个项目后提交冲突时git push -f 强制推送本地的替换服务端git fetch 获取gut merch 合并 如果系统中有一些配置文件在服务器上做了配置修改,然后后续开发又新添加一些配置项的时候,在发布这个配置文件的时候,会发生代码冲突:error: Your local changes to the following files would be overwritten by merge:protected/config/main.phpPlease, commit your changes or stash them before you can merge.如果希望保留生产服务器上所做的改动,仅仅并入新配置项, 处理方法如下:git stashgit pullgit stash pop然后可以使用git diff -w +文件名 来确认代码自动合并的情况. 反过来,......

阅读全文»

git常用命令

发表时间:2013-01-18     分类:Linux    标签: git 

初始化仓库 git init纳入版本控制 git add <file>/.提交 git commit -m "注释"克隆仓库的命令格式为 git clone [url]创建分支 git branch branch_name或者 git checkout -b branch_name 切换工作分支查看本地分支 git branch查看远程分支:git branch -r删除本地分支:git branch -d branch_name选择分支:git check out branch_name检查当前文件状态 git status查看尚未暂存的文件更新了哪些部分,不加参数直接输入 git diff此次移除文件 git rm <file>   从版本库中移除 git rm --cached <file>查看删除的文件 git ls......

阅读全文»

git https方式提交 Password caching保存密码

发表时间:2013-01-17     分类:Linux    标签: git Passwordcaching 

在使用 Git 的时候,经常会遇到需要频繁输入密码的情况,在每次 commit 的时候都要求输入你的用户名和密码,如果提交频繁的话甚是不便。HTTPS 的地址是做什么用的呢?其实它主要是用在一些防火墙或者代理服务器设置比较严格的情况下的,比如有些公司是禁止使用 SSH 连接外网,那么在这种情况下要想使用 Git 的话,就只能用 HTTPS 的方式了。使用 HTTPS 的方式,也有储存密码的方式,本文后面会讲到。我们这里首推的方式是切换到 SSH,如果你的网络环境支持的话。HTTPS 方式保存密码OSX 用户如果你的网络环境中只能使用 HTTPS 的方式,那么可以尝试安装 osxkeychain 凭据助手,并在 Git 中设置使用。注意:Git 版本要在 1.7.10及以上才可使用。$git credential-osxkeychain # Test for the cred helper......

阅读全文»

mac os x苹果系统wget

发表时间:2013-01-16     分类:Linux    标签: linux wget 

mac系统默认没有装wget故用不了wget。对于习惯用wget的人,还是有点不习惯。下载的话,当然也有替代方案:curl可以帮到你。如:curl -O url   这样就能下载。如果想了解更多curl,可以百度,谷歌。    打开  http://ftp.gnu.org/gnu/wget/找到最新版本curl -O http://ftp.gnu.org/gnu/wget/wget-1.13.tar.gz tar -xzvf wget-1.14.tar.gz cd wget-1.14 ./configure --with-ssl=openssl make sudo make installOK,大功告成。 ......

阅读全文»

mac os x苹果系统LAMP环境配置

发表时间:2013-01-12     分类:Linux    标签: mysql php lamp apache mac 

LAMP系统在很多网络系统中,包括开放软件系统,里面被广泛应用,OS X作为基于BSD的主流图形用户界面之一的商业桌面/服务器系统, 它本来就原生地支持LAMP的(并不完全是),只是在系统默认的情况下,LAMP中的主要元素(Apache, MySQL, and PHP)是关闭disabled的,用户需要若干步骤来打开enable这些功能而已。启用Apache打开终端窗口,用VI配置conf文件/etc/apache2/users/USERNAME.conf #USERNAME 为你机子用户名称输入以下内容,(注意USERNAME为用户名称)<Directory "/Users/USERNAME/Sites/">        Options Indexes Multiviews     &nbs......

阅读全文»