
Linux
文章平均质量分 53
Leo__6666
从事网络、IT、linux运维、Amazon云等相关工作。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
zabbix-proxy安装配置
zabbix-proxy安装wget http://repo.zabbix.com/zabbix/3.2/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.2-1+xenial_all.debdpkg -i zabbix-release_3.2-1+xenial_all.debapt-get updateapt-get install原创 2017-07-28 16:37:54 · 5058 阅读 · 0 评论 -
shell中的特殊变量IFS
当我越来越习惯python的编写风格时,我经常会想用bash去遍历一个文件的行,并将读取的行进行处理。但一个诡异的情况,如果我的文本类似于这样the first line.the second line.the third line.for line in `cat filename`doecho $linedone 当我通过上面的方式遍历文件的每一行,我发现读原创 2015-07-22 17:28:31 · 26441 阅读 · 2 评论 -
nginx压力测试及防止恶意压力测试的方法
nginx压力测试方法:#ab命令#安装ab#Centos系统yum install apr-util#Ubuntu系统sudo apt-get install apache2-utils#ab命令的参数-n //在测试会话中所执行的请求个数。默认为1-c //一次产生的请求个数。默认为1-t //测试所进行的最大秒数。默认值为50000-p //包含了需要的POST的数据原创 2015-07-18 13:56:58 · 32473 阅读 · 0 评论 -
svn自助修改密码(PHP脚本实现)
#创建脚本目录mkdir -p /var/www/svn/svntools#创建apache配置文件touch /etc/httpd/conf.d/alias.conf#输入以下内容:Alias /svntools "/var/www/svn/svntools" Require valid-user AuthType Basic原创 2015-07-16 12:17:28 · 16633 阅读 · 0 评论 -
apache+svn服务搭建
1.安装服务#安装apache服务yum install httpd#安装svn服务和httpd模块yum install subversion mod_dav_svn 2.创建svn仓库#创建仓库目录mkdir -p /var/www/svn#创建svn仓库svnadmin create /var/www/svn/project#配置改仓库的配置文件vim /var/原创 2015-07-16 09:43:54 · 27847 阅读 · 1 评论 -
Linux中的特殊权限s、t、i、a
文件权限除了r、w、x外还有s、t、i、a权限:s:文件属主和组设置SUID和GUID,文件在被设置了s权限后将以root身份执行。在设置s权限时文件属主、属组必须先设置相应的x权限,否则s权限并不能正真生效(c h m o d命令不进行必要的完整性检查,即使不设置x权限就设置s权限,chmod也不会报错,当我们ls -l时看到rwS,大写S说明s权限未生效)。Linux修改密码的pass转载 2015-07-28 13:59:08 · 24760 阅读 · 0 评论 -
Shell中反引号(`)与$()用法的区别
今天有人提问: echo `echo \\\\\\\w` echo $(echo \\\\\\\w) 为什么输出的不一样?这就引申出了另一个问题:反引号与$()有没有区别?这是一个非常有意思的问题,但要解释这个问题确比较困难,我来换一个简单一点的例子,通俗的解释一下。比如我们有一个shell脚本名为test.sh有一下两行1原创 2015-07-25 13:38:56 · 28442 阅读 · 2 评论 -
Ubuntu pptpd 搭建自动化shell脚本
#!/bin/bash## pptp.sh is writed by Misost.## Auto install and config pptpd vpn server## Update system and install pptpsudo apt-get -y updatesudo apt-get -y install ppp pptpd## get ip and remot原创 2015-05-14 14:03:33 · 15688 阅读 · 0 评论 -
20个让你瞬间高大上的Linux命令
1. 以 root 帐户执行上一条命令sudo !!2. 利用 Python 搭建一个简单的 Web 服务器,可通过 http://$HOSTNAME:8000访问 python -m SimpleHTTPServer3. 切换到上一次访问的目录 cd -4. 将上一条命令中的 foo 替换为 bar,并执行转载 2015-05-19 22:04:45 · 17343 阅读 · 0 评论 -
几个有意思的运维编程题
使用for循环在/oldboy目录下通过随机小写10个字母加固定字符串oldboy批量创建10个html文件,名称例如为:123456[root@oldboy oldboy]# sh /server/scripts/oldboy.sh[root@oldboy oldboy]# ls coao原创 2015-05-22 14:27:36 · 17754 阅读 · 0 评论 -
Ubuntu关于修改resolv.conf重启失效的问题
在通常情况下,我们在ubuntu系统中可以通过resolv.conf来设置DNS地址。但重启后,resolv.conf中的地址仍然会返回为原来的内容。这是因为resolv.conf文件其实是一个Link文件,如图:在Ubuntu中有一个 resolvconf 的服务,这个服务用来控制/etc/resolv.conf的内容。所以一旦我们重启了系统或者该服务,那么/etc/resolv.c原创 2015-06-17 22:41:23 · 29336 阅读 · 0 评论 -
squid中行为状态与reload_into_ims选项
【问题】代理环境数据流:本地浏览器——代理服务器(squid)——远程服务器(RS)squid3做了缓存配置之后,IE浏览器始终无法获取squid中的缓存数据。要解决这个问题,需要很多扩展知识,如下:1.X-Cache 与X-Cache-Lookup的值浏览器的HTTP消息头中的这两个值可以判断获取数据的缓存情况,其中HIT表示缓存命中,MISS表示未命中缓存。原创 2015-05-27 10:56:11 · 17167 阅读 · 0 评论 -
zabbix邮件报警变量表
名称:Action-Email默认接收人:故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!默认信息:告警主机:{HOSTNAME1}告警时间:{EVENT.DATE} {EVENT.TIME}告警等级:{TRIGGER.SEVERITY}告警信息: {TRIGGER.NAME}告警转载 2015-05-19 13:35:22 · 31184 阅读 · 0 评论 -
【收藏】 top命令显示及使用说明
第一行: 跟uptime 一样,分别是当前时间13:48 系统运行时间3 days 当前登录用户数1user 系统负载load average:,即任务队列的平均长度2 第二、三行为进程和CPU的信息。当有多个CPU时,这些内容可能会超过两行Tasks: 96 total 进程总数1 running 正在运行的进程数 95 sleeping 睡眠的进程数0 stopped转载 2015-02-12 10:22:47 · 9716 阅读 · 0 评论 -
【收藏】TCP和UDP协议的区别
TCP(Transmission Control Protocol,传输控制协议)是面向连接的协议,也就是说,在收发数据前,必须和对方建立可靠的连接。一个TCP连接必须要经过三次“对话”才能建立起来,其中的过程非常复杂,只简单的描述下这三次对话的简单过程:主机A向主机B发出连接请求数据包:“我想给你发数据,可以吗?”,这是第一次对话;主机B向主机A发送同意连接和要求同步(同步就是两台主机一个在发送转载 2015-05-06 20:02:56 · 13528 阅读 · 0 评论 -
【解决】iptables -P INPUT DROP后无法联网
有一些时候 我们需要将iptables 的INPUT链写死,那么我们可以用iptables -P INPUT DROP来全部关掉input链路。但是随之产生了一个很严重的问题,那么服务器本身发送的数据请求返回的数据同样被iptables拒之门外,一个通俗的解释就是外部数据无法访问本地服务,本地服务器也无法正常上网。解决的办法如下:iptables -A INPUT -m state原创 2015-01-24 14:14:55 · 32941 阅读 · 1 评论 -
webbench压力测试工具
apache的测试工具ab 在并发100个以上后会出现错误,网上也有很多改ab源码来解禁的。不过还是推荐一款比较好用的压力测试工具webbenchwget http://blog.zyan.cc/soft/linux/webbench/webbench-1.5.tar.gztar zxvf webbench-1.5.tar.gzcd webbench-1.5make && make原创 2015-07-24 14:42:38 · 9834 阅读 · 0 评论 -
SYN攻击防护措施
SYN攻击的应对措施针对SYN攻击的几个环节,提出相应的处理方法:方式1:减少SYN-ACK数据包的重发次数(默认是5次):sysctl -w net.ipv4.tcp_synack_retries=3sysctl -w net.ipv4.tcp_syn_retries=3方式2:使用SYN Cookie技术:sysctl -w net.ipv4.tcp_syn原创 2015-07-24 13:48:24 · 11994 阅读 · 0 评论 -
Ubuntu下安装mariaDB 10.1 集群
【环境】 Ubuntu 14.04 MariaDB 10.1 stable【机器】 host-1: 10.0.5.11 host-2: 10.0.5.12 host-3: 10.0.5.13<以下操作为host-1 2 3都有> MariaDB官方安装向导: https://downloads.mariadb.org/mariadb/repositories/#mirror=yamag原创 2017-01-30 17:25:42 · 2603 阅读 · 0 评论 -
mariaDB+garela高可用性数据库
https://downloads.mariadb.org/mariadb/repositories/#mirror=yamagata-university【测试环境】Ubuntu 14.04.1 LTSmariaDB5.5+galerahost-1:172.31.18.11host-2:172.31.18.22以下操作为原创 2015-01-24 14:24:56 · 13706 阅读 · 0 评论 -
Ubuntu下安装xl2tpd服务
apt-get install openswan xl2tpd ppp lsofiptables -t nat -A POSTROUTING -j SNAT --to-source <IP地址> -o eth0echo "net.ipv4.ip_forward = 1" | tee -a /etc/sysctl.confecho "net.ipv4.conf.all.accept_redirec原创 2017-02-11 20:55:37 · 6765 阅读 · 1 评论 -
那些坑了我N多时间的问题(持续更新)
2015-11-291.版本小于1.7的nginx不支持syslog功能。 2.nginx 1.8版本的conf文件有较大变动,site-enble及site-available目录都已被取消。固从低版本升级到1.8版本首先要备份原conf配置文件,使用apt-get purge nginx在卸载nginx的同时删除配置文件。 3.rsyslog的Properties参考: http:原创 2015-11-30 13:04:30 · 15000 阅读 · 1 评论 -
Azure Python SDK安装及排错
安装流程请参考: https://azure-sdk-for-python.readthedocs.io/en/latest/installation.htmlPython版本:2.7.6pip安装:pip install --upgrade pippip install azure-batch pip install azure-mgmt-schedulerpip install --pr原创 2017-01-05 14:08:17 · 2399 阅读 · 0 评论 -
vim配置补全插件YouCompleteMe
系统环境: Ubuntu 14.04 Vim 7.4.2731.YouCompleteMe插件需要 Vim 7.4.153 以上的版本,如果vim版本过低请先升级:add-apt-repository ppa:fcwu-tw/ppaapt-get updateapt-get install vim2.安装Vundle Vundle是优秀的vim插件管理工具:git clone https:原创 2016-12-26 21:00:28 · 10246 阅读 · 0 评论 -
解析sed -n '/^AAAA/{:a;N;${s/\(.*BBBB[^\n]*\).*/\1/p};Ta}'
个人理解,求真相。先来看看这个命令吧 sed -n '/^AAAA/{:a;N;${s/\(.*BBBB[^\n]*\).*/\1/p};Ta}' a.txt他实现的结果是 查找一个文件中 AAAA到BBBB字符串能匹配到的最后一行的所有内容 sed -n '/^2012/{:a;N;${s/\(.*2014[^\n]*\).*/\1/p};Ta}' a.txt原创 2015-01-24 14:30:00 · 17450 阅读 · 0 评论 -
Squid添加账户密码验证
sudo touch /etc/squid3/squid_passwd sudo chmod -R 777 /etc/squid3/squid_passwd sudo htpasswd /etc/squid3/squid_passwd testname 修改squid.conf auth_param basic program /usr/lib/squid3/ncsa_auth /etc/s原创 2016-05-13 15:55:49 · 12042 阅读 · 0 评论 -
Installing Ubuntu 14.04 LTS (Trusty Tahir) VM on a XenServer 6.2 host
1.Based on this post, do the following:Login as root on your Xenserver host (dom0):Edit the file /usr/lib/python2.4/site-packages/grub/GrubConf.py. Change line 428 from: if arg.strip() ==原创 2015-11-17 00:31:07 · 9908 阅读 · 0 评论 -
How to Deleting a Storage Repository From the Command Line?
First list the SRs on a host.#xe sr-list uuid=9a9e7903-7c0f-4f7e-f0a3-e39c54478346Using the uuid from the you got from the command above, run the command below using the UUID, which for some reason yo原创 2015-11-17 00:25:58 · 9273 阅读 · 0 评论 -
awk切割文本中字符串
文件内容如下: 112233445 aabbccdde !!@@##__%如要修改为 1122 3344 5 aabb ccdd e !!@@ ##__ % awk ‘{printf(“%s %s %s\n”,substr(0,1,4),substr(0,1,4),substr(0,5,8),substr($0,9))}’ filename > newfile原创 2015-10-09 21:39:51 · 10685 阅读 · 0 评论 -
使用sh执行bash脚本的奇怪问题
在同一个目录下有两个脚本,a.sh和b.sh,脚本内容如下: a.sh:echo "test for a"source b.shb.sh:echo "test for b"使用bash a.sh 返回正确结果。 而使用sh a.sh返回结果如下: test for a a.sh: line 2: source: b.sh: file not found 明显脚本运行过程中,没有找到文件b原创 2015-08-20 23:49:06 · 19655 阅读 · 3 评论 -
grep命令手册
1.命令格式:grep [option] pattern file2.命令功能:用于过滤/搜索的特定字符。可使用正则表达式能多种命令配合使用,使用上十分灵活。3.命令参数:-a --text #不要忽略二进制的数据。 -A --after-context= #除了显示符合范本样式的那一列之外,并显示该行之后的内容。 -b --byte-off原创 2015-09-02 19:43:44 · 9757 阅读 · 0 评论 -
CentOS使用EPEL源
个人非常喜欢用Ubuntu,因为Debian强大的在线在线安装包。但某些时候我不得不用CentOS,这就得用著名的EPEL源了。下面是使用方法:1. 首先我们需要安装一个叫”epel-release”的软件包,这个软件包会自动配置yum的软件仓库。当然你也可以不安装这个包,自己配置软件仓库也是一样的。#用于RHEL5系列wget http://download.原创 2015-08-17 21:48:03 · 20466 阅读 · 0 评论 -
【收藏】python的paramiko模块使用
【安装】依赖模块:PyCrypto - The Python Cryptography Toolkit wget http://www.lag.net/paramiko/download/paramiko-1.7.6.tar.gz wget http://ftp.dlitz.net/pub/dlitz/crypto/pycrypto/pycrypto-2.4.1.ta转载 2015-02-12 16:45:04 · 29865 阅读 · 0 评论 -
cat <<EOF与cat <<-EOF的区别
cat <<-EOF和cat <<EOF 你知道有什么区别吗?原创 2015-05-05 22:03:09 · 65141 阅读 · 2 评论 -
SteamOS—定制个人版的游戏主机
一、划时代的游戏操作系统Steamo原创 2014-05-19 13:02:44 · 14797 阅读 · 0 评论 -
nginx学习研究(一)安装启动及调试
序:从今天开始研究nginx。主要是工作中用到大量的nginx的安装调试及优化,希望可以系统的记录一下,以备以后不时之需。【安装】对于nginx不建议使用源来安装,最好自己编译。因为一般来说使用nginx的项目都比较灵活,而且基本上不同平台或系统的批量部署比较多。通过编辑安装可以比较效率的按照自己想要的方式进行批处理。对于运维管理人员来说编译是最好的选择。nginx下载地址原创 2012-07-20 11:22:34 · 14090 阅读 · 0 评论 -
【bash】通过实践学习bash之检测局域网主机状态
【要求】检测局域网下192,168.0.1~192.168.0.100之间所有主机的存活状态。并统计up和down主机的个数。 【分析】使用linux的ping命令进行检测使用for循环获取所需检测的IP地址用if语句进行结果判断并统计up和down主机个数 【脚本】#!/bin/bash## Use ping command to check the net原创 2012-07-12 16:04:02 · 11042 阅读 · 0 评论 -
再谈nagios安装与配置
前言: 好吧,准备重新再写一次nagios的详细说明文档。因为这个东西安装起来简单,配置使用确实相对复杂很多。希望我能尽量写的够详细,并将可能遇到的问题都列举出来。【nagios简介】首先我们先知道这个是个什么东西。Nagios是一款开源的免费网络监视工具,能有效监控Windows、Linux和Unix的主机状态,交换机路由器等网络设置,打印机等。在系统或服务状态异常时发原创 2011-12-07 17:52:42 · 16397 阅读 · 0 评论 -
screen命令详解
功能: 使用telnet或SSH远程登录linux时,如果连接非正常中断,重新连接时,系统将开一个新的session,无法恢复原来的session.screen命令可以解决这个问题。Screen工具是一个终端多路转接器,在本质上,这意味着你能够使用一个单一的终端窗口运行多终端的应用。在系统运维工作中,将会起到相当重要的作用,对于那些会运行长时间的命令,如果放在screen原创 2011-11-21 08:46:49 · 13373 阅读 · 0 评论 -
【小议】centos与ubuntu的区别
CentOS(Community ENTerprise Operating System)是Linux发行版之一,它是来自于Red Hat Enterprise Linux依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定性的服务器以CentOS替代商业版的Red Hat Enterprise Linux使用。 Ubuntu是一个以桌面原创 2011-11-21 08:44:32 · 46555 阅读 · 3 评论