- 博客(53)
- 资源 (1)
- 收藏
- 关注

原创 Linux回收站建立
误删除是很多运维人员比较恐怖的字眼,如果事前做好准备工作防患未然就会避免此类事情发生。虽然目前有很多恢复数据的软件,但大多数都操作繁琐,恢复效果并不理想,比如说利用lsof这种形式恢复很难把数据完全恢复回来,testdisk工具也可以恢复删除的数据,但恢复的数据都被重命名了,很难找到删除的文件,而且这种恢复方式耗时长风险大,可以把这种方法当作没有办法的办法。为了满足Linux操作系统没有回收站
2015-03-20 10:25:02
939

原创 源码包安装后启动失败 error while loading shared libraries: libinotifytools.so.0: cannot open shared object fil
今天安装源码包inotify 一切安装妥当之后启动失败,报如下错误:第一感觉是找不到这个库,此时有两种可能1,操作系统上没有安装该库2,操作系统找不到该库首先在/usr路径下查找该包的名称,如下图ps:为什么要在/usr下找呢,因为库文件一般都安装在该目录下。结果只在源码包的安装路径下找到了该库,证明以源码包形式安装该软件的时候该库已经被安装在操作系统中了。
2015-03-12 10:55:33
5378

原创 rsync 匹配通配符 * 失败 link_stat failed: No such file or directory
rsync -avP /home/map/mongodb2.4.6/data/road140403* map@hz12:/home/map/users/wangxin/script/tmp上面的命令执行的时候不会报任何错误,并正常的同步数据,此时会弹出交互界面,并提示要输入hz12服务器的密码,但如果这种操作放在脚本里就要expect来支持,如果放在expect里面的话会报如下错误
2015-02-04 17:25:27
16608
1

原创 Linux top里面%CPU和us%的解释
有的同学会把%CPU和us%搞晕,也就是下图所示在top的时候查看cpu的信息。这时有的同学会问:这两个CPU到底哪个是对的。其实都是对的,只是表达的意思不一样。官方解释如下Cpu(s):34.0% us: 用户空间占用CPU百分比%CPU:上次更新到现在的CPU时间占用百分比读到这里我也不是十分理解他们俩的关系,我一直以为%CPU是每个进程占用的cpu百分比,
2015-02-03 17:58:32
40434
5

原创 Linux top命令Cpu(s):ni 的解释
部门有人抱怨自己的进程运行过慢,登陆操作系统并通过top查看信息查看Cpu一栏发现ni占用过高,ni又是什么呢?ni: 用户进程空间内改变过优先级的进程占用CPU百分比网上对ni的解释似乎很难理解,那我们换个角度来看。假设在一个CPU轮转中,有2个runnable的进程A和B,如果他们的nice值都为0,假设内核会给他们每人分配1k个cpu时间片。但是假设进程A的为0,但是B的
2015-02-03 16:32:08
27935
5
原创 gitlab管理手册
重置管理员密码gitlab web登入密码忘记以后可以用如下方式修改密码 注:马赛克部分为自己的密码,其中id:1为超级管理员账号,前面的@在登录的时候不用加。...
2018-05-16 14:42:28
831
原创 python进阶 Python高级特性
1 内建函数(__xxx__) 背景:为什么要有这种带下划线的内建函数,个人认为这种内建函数开放了很多Python的特殊用法,只要详尽掌握,就会理解平时用到的数据结构是复写了什么方法,自己也可以写出类似set,dqueue,dict,list的数据类型方法。 1.1 类似字典的操作方式,__getitem__,__setitem__,__delitem__ 我们熟悉的字...
2018-03-09 17:05:58
4453
6
转载 Flask的Context(上下文)
上下文这个概念多见于文章中,是一句话中的语境,也就是语言环境。一句莫名其妙的话出现会让人不理解什么意思,如果有语言环境的说明,则会更好,这就是语境对语意的影响。上下文是一种属性的有序序列,为驻留在环境内的对象定义环境。在对象的激活过程中创建上下文,对象被配置为要求某些自动服务,如同步、事务、实时激活、安全性等等。比如在计算机中,相对于进程而言,上下文就是进程执行时的环境。具体来说就是各个变量和数据...
2018-03-05 16:19:22
1468
原创 linux获取目录下文件 包含子目录
#!/bin/bashsum=0function lsdir(){for i in `ls`;do if test -d $i ;then #用于排除某个目录 if [[ $i = "static" ]];then continue fi cd $i lsdir cd ..
2017-11-23 17:18:09
1544
原创 sqlalchemy连接postgresql
如果出现权限问题请把url里面的地址改为ip地址,不要用localhostApp和User里面的tablename对应数据库里面的表名执行之前手动连一下postgresql数据库查看一下数据from sqlalchemy import Column,String,create_enginefrom sqlalchemy.types import CHAR,Integer
2017-08-08 14:48:41
12490
转载 SPEC文件详解
1 spec文件1.1 spec文件的语法TagName: value比如Version: 2.1.0tag名大小写不敏感。1.2 宏spec支持定义宏,要定义宏,使用:%define testMacro 2这里定义了一个宏,名称为testMacro,值为2,要使用这个宏,使用%{testMacro}或者%test
2016-04-11 16:49:15
40354
1
原创 cx_Oracle 多线程 segment fault
cx_Oracle.connect()默认不是线程安全的!加上threaded参数后才是。db = cx_Oracle.connect("{0}/{1}@{2}:{3}/{4}".format(self.username, self.password, self.address,self.port,self.oracle_name),threaded=True,events = True)
2016-03-31 14:57:03
1770
转载 升级gcc4.4.7升级gcc4.8
出于需求系统自带的是gcc4.4.7,版本太低无法编译,被逼无奈只能升级gcc了,碰到很多坑,下载这个玩意就用了不少时间。123456[root@VM_222_92_centos ~]# gcc -vUsing built-inspecs.Target: x86_64-redhat-linuxConfigured wi
2015-12-16 19:51:22
668
转载 oracle客户端安装
1.要远程使用oracle,先下载下面三个文件,注意版本最好一致。 oracle-instantclient-basic-10.2.0.4-1.i386.zip oracle-instantclient-devel-10.2.0.4-1.i386.zip //这个是sdk 的,文件名上没有说明,特此说明 oracle-instantclient-sqlplu
2015-11-03 21:13:50
542
转载 python动态按区域显示
python curses使用原文:http://www.cnblogs.com/starof/p/4703820.htmlpython 中curses封装了c语言的curses,把c中复杂部分简单化,比如addstr(),mvaddstr(),mvwaddstr()合并成了一个addstr()方法。一、语法入门1、打开和关闭一个curses 应用程序在任何代码执行前都先要
2015-08-20 16:39:07
1219
原创 expect获取返回值
对于获取多台服务器状态且不用交互需要用到expect,但有时候expect无法获取返回值,这里解释一下expect如何获取返回值 expect -c " spawn $1; expect { \"(yes/no)?\" {send \"yes\n\";expect \"assword:\";send \"$2\n\"}
2015-08-08 13:49:42
15876
1
原创 shell EOF注意点
当sqlplus与shell交互的时候我们这么用su - oracle -c "sqlplus / as sysdbaselect * from gv($instance);exit;EOF"这个程序看起来没什么问题,真正执行的时候会报错。为什么?因为这种方式,“内容”中的东西是被解析的所以$instance没有值,这里就只能看到gv这么写就没错
2015-08-08 13:44:25
2764
原创 Linux自动安装 光盘
安装linux的时候需要人机交互,如果一次安装几台那就要耗费很多精力,莫不如把每次要做的设置写在配置文件里,一键安装,省时省力。这里我们只介绍用光盘进行自动安装。 无人职守安装我们首先想到的就是kickstart软件,那么什么是Kickstart? Kickstart是一种无人值守的安装方式。它的工作原理是在安装过程中记录典型的需要人工干预填写的各种参数,并生成一个名为ks.c
2015-07-12 16:33:46
935
原创 Linux lvs DR配置
三台服务器,(1)做路由,(2)(3)做realserverIP为:192.168.196.121 (1) 192.168.196.122 (2) 192.168.196.123 (3)要在(1) load banlance机器 上安装ipvsadm软件可以在cluster目录里面找到,源码编译安装很麻烦,频频出错,这里不讲。
2015-07-06 15:29:09
803
原创 Linux进程状态
在操作系统下执行top命令,S列为进程状态,对几个进程状态做下解释:进程大致分为以下几个状态 D 不可中断 Uninterruptible sleep (usually IO) R 正在运行,或在队列中的进程 S 处于休眠状态 T 停止或被追踪 Z 僵尸进程 W 进入内存交换(从内核2.6开始
2015-06-12 16:37:43
1293
转载 可执行二进制文件与文本文件编码的区别
一、文本文件与二进制文件的定义 大家都知道计算机的存储在物理上是二进制的,所以文本文件与二进制文件的区别并不是物理上的,而是逻辑上的。这两者只是在编码层次上有差异。 简单来说,文本文件是基于字符编码的文件,常见的编码有ASCII编码,UNICODE编码等等。二进制文件是基于值编码的文件,你可以根据具体应用,指定某个值是什么意思(这样一个过程,可以看作是自
2015-06-01 12:38:13
2963
转载 Linux shell脚本加密
如何保护自己编写的shell程序要保护自己编写的shell脚本程序,方法有很多,最简单的方法有两种:1、加密 2、设定过期时间,下面以shc工具为例说明:一、下载安装shc工具shc是一个加密shell脚本的工具.它的作用是把shell脚本转换为一个可执行的二进制文件. # wget http://www.datsi.fi.upm.es/~frosal/sources/sh
2015-05-28 19:08:28
3827
转载 线程与进程
多进程和多线程,这是实现多任务最常用的两种方式。现在,我们来讨论一下这两种方式的优缺点。首先,要实现多任务,通常我们会设计Master-Worker模式,Master负责分配任务,Worker负责执行任务,因此,多任务环境下,通常是一个Master,多个Worker。如果用多进程实现Master-Worker,主进程就是Master,其他进程就是Worker。如果用多线程实现Maste
2015-05-22 15:32:59
490
转载 Linux系统中普通文件和目录文件的区别
看了赵小兵老师的RHCE和一些相关贴子,受了一些启发,根据平常所知,说说Linux系统中,文件的权限控制,在对于普通文件和目录文件时,有何区别。 文件权限一般可认为是0 123 456 789,一共十位: 0:表示该文件的文件类型。Windows里面是使用了一种文件关联的技术,通过扩展名来关联相应的应用程序,使得双击某个文件,就能达到调用相应的应用程序来打开它的目的,这样简单快捷。
2015-05-17 16:51:14
839
转载 shell中exec命令
shell中exec命令1、find中的-exec参数在当前目录下(包含子目录),查找所有txt文件并找出含有字符串"bin"的行find ./ -name "*.txt" -exec grep "bin" {} \;在当前目录下(包含子目录),删除所有txt文件find ./ -name "*.txt" -exec rm {} \;Execute command; t
2015-05-14 16:36:50
2123
转载 Mongodb sum 求和
Mongodb 统计某个字段的和,可以使用聚合函数。数据结构如下:Js代码 > db.message.findOne() { "_class" : "com.cyou.appwiki.bean.Message", "_id" : ObjectId("53997f80c451bf833288b882"), "content" : "pow
2015-04-17 10:23:28
39121
4
转载 源码包详解
转载:http://blog.youkuaiyun.com/cswodi/article/details/7282122一、glib介绍libc指C函数库,这是一个通称,而glibc是GNU实现的libc,至于glib是一组较高层的函数库,比如链表、Hash等,在linux中glib是建立在glibc之上的,qt的库就叫做qt,也是建立在glibc和其他一些基本库之上。GLib
2015-04-14 20:20:17
611
转载 #!/bin/bash详解
在shell脚本的第一行中,必须写#!/bin/bash吗?带着这个问题,我今天在百度上搜索了一下,发现在一个贴子中讨论了这个问题,觉得各个跟贴者在回答这个问题时,都解释的很有道理,现摘记如下,以便学习。 ---------------------------------------------------------------------------------------------
2015-04-07 16:55:57
16917
1
转载 HA中虚IP自动切换的原理
高可用性HA(High Availability)指的是通过尽量缩短因日常维护操作(计划)和突发的系统崩溃(非计划)所导致的停机时间,以提高系统和应用的可用性。HA系统是目前企业防止核心计算机系统因故障停机的最有效手段。实现HA的方式,一般采用两台机器同时完成一项功能,比如数据库服务器,平常只有一台机器对外提供服务,另一台机器作为热备,当这台机器出现故障时,自动动态切换到另一台热备的机器。
2015-04-02 17:52:05
1085
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人